)]}'
{"keystoneclient/middleware/auth_token.py":[{"author":{"_account_id":866,"name":"Chmouel Boudjnah","email":"chmouel@chmouel.com","username":"chmouel"},"change_message_id":"87319ae8d000c485184c3a1b3604a3d7b046c55f","unresolved":false,"context_lines":[{"line_number":308,"context_line":"            self._cache \u003d env.get(cache)"},{"line_number":309,"context_line":"        else:"},{"line_number":310,"context_line":"            # use Keystone memcache"},{"line_number":311,"context_line":"            memorycache.get_client(memcache_servers)"},{"line_number":312,"context_line":"            self._use_keystone_cache \u003d True"},{"line_number":313,"context_line":"        self._cache_initialized \u003d True"},{"line_number":314,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAANH%2F%2F8Kk%3D","line":311,"updated":"2013-03-02 10:00:20.000000000","message":"You are missing a \n\nself._cache \u003d \n\nhere. self._cache seems to always be None.","commit_id":"5905928df4ffbaea111aef297a2d4e4bc3342f70"},{"author":{"_account_id":866,"name":"Chmouel Boudjnah","email":"chmouel@chmouel.com","username":"chmouel"},"change_message_id":"bc297ebfcc7e8b67f5a72d3ce5ccf390d01848dc","unresolved":false,"context_lines":[{"line_number":822,"context_line":"            self._cache_put(user_token, data)"},{"line_number":823,"context_line":"            return data"},{"line_number":824,"context_line":"        if response.status \u003d\u003d 404:"},{"line_number":825,"context_line":"            # FIXME(ja): I\u0027m assuming the 404 status means that user_token is"},{"line_number":826,"context_line":"            #            invalid - not that the admin_token is invalid"},{"line_number":827,"context_line":"            self._cache_store_invalid(user_token)"},{"line_number":828,"context_line":"            self.LOG.warn(\"Authorization failed for token %s\", user_token)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAANH%2F%2F8C8%3D","side":"PARENT","line":825,"updated":"2013-03-02 18:30:43.000000000","message":"Why do we disable caching for invalidusertoken? if the token has changed and a client just keep trying to auth this will hit us hard?","commit_id":"3374e3c2fa30239a131c3815fea8c2694caca226"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"e27d03e9e0c695c0ef9754bd36ca799d64ab3d8f","unresolved":false,"context_lines":[{"line_number":822,"context_line":"            self._cache_put(user_token, data)"},{"line_number":823,"context_line":"            return data"},{"line_number":824,"context_line":"        if response.status \u003d\u003d 404:"},{"line_number":825,"context_line":"            # FIXME(ja): I\u0027m assuming the 404 status means that user_token is"},{"line_number":826,"context_line":"            #            invalid - not that the admin_token is invalid"},{"line_number":827,"context_line":"            self._cache_store_invalid(user_token)"},{"line_number":828,"context_line":"            self.LOG.warn(\"Authorization failed for token %s\", user_token)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAN3%2F%2F%2Bsc%3D","side":"PARENT","line":825,"in_reply_to":"AAAANH%2F%2F8C8%3D","updated":"2013-03-04 19:15:36.000000000","message":"as you noticed. This call and the above put are redundant. The caller of this method already does the put and store_invalid.","commit_id":"3374e3c2fa30239a131c3815fea8c2694caca226"}]}
