)]}'
{"swift/obj/updater.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"fef4f03a002d699bb44ed787e48629f6d5a926ab","unresolved":false,"context_lines":[{"line_number":327,"context_line":""},{"line_number":328,"context_line":"                location \u003d urlparse(location).path"},{"line_number":329,"context_line":"                try:"},{"line_number":330,"context_line":"                    piv_acc, piv_cont, _junk \u003d split_path(location, 2, 3, True)"},{"line_number":331,"context_line":"                except ValueError:"},{"line_number":332,"context_line":"                    # there has been an error so log it and return"},{"line_number":333,"context_line":"                    self.logger.error(\u0027Container update failed: %s \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_5856d82b","line":330,"range":{"start_line":330,"start_character":20,"end_line":330,"end_character":37},"updated":"2017-09-25 12:32:56.000000000","message":"needs renaming","commit_id":"0698d6e15d19484da1fcda1d73e3d3d021c4b93a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"fef4f03a002d699bb44ed787e48629f6d5a926ab","unresolved":false,"context_lines":[{"line_number":332,"context_line":"                    # there has been an error so log it and return"},{"line_number":333,"context_line":"                    self.logger.error(\u0027Container update failed: %s \u0027"},{"line_number":334,"context_line":"                                      \u0027possibly sharded but couldn\\\u0027t \u0027"},{"line_number":335,"context_line":"                                      \u0027find determine shard container \u0027"},{"line_number":336,"context_line":"                                      \u0027location.\u0027 % obj)"},{"line_number":337,"context_line":"                    return False, node[\u0027id\u0027], redirect"},{"line_number":338,"context_line":"                redirect \u003d (\u0027%s/%s\u0027 % (piv_acc, piv_cont),"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_b824acc7","line":335,"range":{"start_line":335,"start_character":39,"end_line":335,"end_character":53},"updated":"2017-09-25 12:32:56.000000000","message":"typo","commit_id":"0698d6e15d19484da1fcda1d73e3d3d021c4b93a"}],"swift/proxy/controllers/obj.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"fef4f03a002d699bb44ed787e48629f6d5a926ab","unresolved":false,"context_lines":[{"line_number":241,"context_line":"                shard_acct \u003d account_to_shard_account(self.account_name)"},{"line_number":242,"context_line":"                partition, nodes \u003d self.app.container_ring.get_nodes("},{"line_number":243,"context_line":"                    shard_acct, shard)"},{"line_number":244,"context_line":"                overide_prefix \u003d \u0027X-Backend-Container-Update-Override\u0027"},{"line_number":245,"context_line":"                root_path \u003d \u0027%s/%s\u0027 % (shard_acct, shard)"},{"line_number":246,"context_line":"                container_meta \u003d {"},{"line_number":247,"context_line":"                    \u0027%s-Backend-Shard-Path\u0027 % overide_prefix: root_path"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_ae2e9f40","line":244,"range":{"start_line":244,"start_character":34,"end_line":244,"end_character":69},"updated":"2017-09-25 12:32:56.000000000","message":"IMHO we do not need to use the override feature for this - we are not overriding any existing header and AFAICT this was a convenience for plumbing the value through to the async_update method in the backend.\n\nI\u0027ll propose a patch to simplify.","commit_id":"0698d6e15d19484da1fcda1d73e3d3d021c4b93a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"fef4f03a002d699bb44ed787e48629f6d5a926ab","unresolved":false,"context_lines":[{"line_number":242,"context_line":"                partition, nodes \u003d self.app.container_ring.get_nodes("},{"line_number":243,"context_line":"                    shard_acct, shard)"},{"line_number":244,"context_line":"                overide_prefix \u003d \u0027X-Backend-Container-Update-Override\u0027"},{"line_number":245,"context_line":"                root_path \u003d \u0027%s/%s\u0027 % (shard_acct, shard)"},{"line_number":246,"context_line":"                container_meta \u003d {"},{"line_number":247,"context_line":"                    \u0027%s-Backend-Shard-Path\u0027 % overide_prefix: root_path"},{"line_number":248,"context_line":"                }"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_13528114","line":245,"range":{"start_line":245,"start_character":16,"end_line":245,"end_character":57},"updated":"2017-09-25 12:32:56.000000000","message":"(I\u0027ll add this to trello)\n\nI think it is worth considering including the shard account in the shard range. That way we could avoid hardcoding the shard account. It might be that the ShardRange.name even becomes its path.","commit_id":"0698d6e15d19484da1fcda1d73e3d3d021c4b93a"}]}
