)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"1a355404d66bf6e3b0e054b1fd8af836330e7166","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"ea514e9e_675b5165","updated":"2024-05-21 06:59:36.000000000","message":"Yeah ok, that\u0027s a nice clean up. I like it. I\u0027ll give it a bit more of a test and squash it down. I do like that it pushes the decision up _and_ does the metrics right! Thanks Clay!","commit_id":"0f97594f8bdcb292aac311906bb09ea6b6b92db7"}],"swift/obj/server.py":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"1a355404d66bf6e3b0e054b1fd8af836330e7166","unresolved":true,"context_lines":[{"line_number":333,"context_line":"                            \u0027Container update failed for %r; problem with \u0027"},{"line_number":334,"context_line":"                            \u0027redirect location: %s\u0027 % (obj, err))"},{"line_number":335,"context_line":"                    else:"},{"line_number":336,"context_line":"                        sync_update_ctx[\u0027success\u0027] \u003d True"},{"line_number":337,"context_line":"                else:"},{"line_number":338,"context_line":"                    self.logger.error("},{"line_number":339,"context_line":"                        \u0027ERROR Container update failed \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"c20f1177_4cd12a3b","line":336,"updated":"2024-05-21 06:59:36.000000000","message":"OK so this is success true because it did it\u0027s job, it just happened to get a 301 back, so success but still needs to write to async_pending.","commit_id":"0f97594f8bdcb292aac311906bb09ea6b6b92db7"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"1a355404d66bf6e3b0e054b1fd8af836330e7166","unresolved":true,"context_lines":[{"line_number":352,"context_line":"            self.logger.exception("},{"line_number":353,"context_line":"                \u0027ERROR container update failed with \u0027"},{"line_number":354,"context_line":"                \u0027%(ip)s:%(port)s/%(dev)s (saving for async update later)\u0027,"},{"line_number":355,"context_line":"                {\u0027ip\u0027: ip, \u0027port\u0027: port, \u0027dev\u0027: contdevice})"},{"line_number":356,"context_line":"        finally:"},{"line_number":357,"context_line":"            # self.stats.increment(\u0027sync_update\u0027, **sync_update_ctx)"},{"line_number":358,"context_line":"            if sync_update_ctx.get(\u0027skip\u0027):"}],"source_content_type":"text/x-python","patch_set":1,"id":"6461ca95_cf7edd11","line":355,"updated":"2024-05-21 06:59:36.000000000","message":"Shall we put this Error string into this exception log message? I mean we\u0027ve gone to trouble to get it so now we know if it\u0027s an exception or a timeout.","commit_id":"0f97594f8bdcb292aac311906bb09ea6b6b92db7"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"1a355404d66bf6e3b0e054b1fd8af836330e7166","unresolved":true,"context_lines":[{"line_number":444,"context_line":"            # query the root synchronously and write directly to async_pending"},{"line_number":445,"context_line":"            attempt_sync_update \u003d False"},{"line_number":446,"context_line":"        else:"},{"line_number":447,"context_line":"            attempt_sync_update \u003d True"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"        if contpartition:"},{"line_number":450,"context_line":"            # In py3, zip() continues to work for our purposes... But when"}],"source_content_type":"text/x-python","patch_set":1,"id":"abb50820_b72698f2","line":447,"updated":"2024-05-21 06:59:36.000000000","message":"Yeah ok, making this decision once defintely makes alot more sense!","commit_id":"0f97594f8bdcb292aac311906bb09ea6b6b92db7"}],"test/unit/obj/test_server.py":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"1a355404d66bf6e3b0e054b1fd8af836330e7166","unresolved":true,"context_lines":[{"line_number":2605,"context_line":"                resp \u003d req.get_response(self.object_controller)"},{"line_number":2606,"context_line":"        self.assertEqual(resp.status_int, 201)"},{"line_number":2607,"context_line":"        self.assertEqual(self.logger.statsd_client.get_increment_counts(),"},{"line_number":2608,"context_line":"                         {\u0027sync_update.success.201\u0027: 1})"},{"line_number":2609,"context_line":"        timestamp \u003d normalize_timestamp(time())"},{"line_number":2610,"context_line":"        req \u003d Request.blank("},{"line_number":2611,"context_line":"            \u0027/sda1/p/a/c/o\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"b53e1611_131c744f","line":2608,"updated":"2024-05-21 06:59:36.000000000","message":"OK yeah having the numbers in there is pretty awesome!","commit_id":"0f97594f8bdcb292aac311906bb09ea6b6b92db7"}]}
