)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"9275e58147b175a4cfddc6fb774edecef2a5c9ad","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"0e88d9c3_f11e283b","updated":"2025-02-18 17:09:29.000000000","message":"recheck\nunrelated test failures from ``test/s3api/test_input_errors.py::TestV4AuthHeaders::test_no_md5_unsigned_lcase``\n```\n\u003e               raise Exception(\u0027Unable to delete %r\u0027 % del_resp[\u0027Errors\u0027])\nE               Exception: Unable to delete [{\u0027Key\u0027: \u0027s3api-test-get-object-f8d7e9fab3e1430f9cd6332204866868\u0027, \u0027Code\u0027: \u0027ServiceUnavailable\u0027, \u0027Message\u0027: \u0027Please reduce your request rate.\u0027}, {\u0027Key\u0027: \u0027s3api-test-get-object-ef5d48e8e524486e8c8bb891db1508a0\u0027, \u0027Code\u0027: \u0027ServiceUnavailable\u0027, \u0027Message\u0027: \u0027Please reduce your request rate.\u0027}]\n```","commit_id":"62fa6d27a6bf84f06e7e3bfc967ca353ca3b0ebb"}],"swift/account/backend.py":[{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"dba7ef54998e1f004ea3f9c86ea56f5b8295a59b","unresolved":false,"context_lines":[{"line_number":473,"context_line":"                            delim_force_gte \u003d True"},{"line_number":474,"context_line":"                        dir_name \u003d name[:end + len(delimiter)]"},{"line_number":475,"context_line":"                        if dir_name !\u003d orig_marker:"},{"line_number":476,"context_line":"                            results.append([dir_name, 0, 0, \u00270\u0027, -1, 1])"},{"line_number":477,"context_line":"                        curs.close()"},{"line_number":478,"context_line":"                        break"},{"line_number":479,"context_line":"                    results.append(row)"}],"source_content_type":"text/x-python","patch_set":1,"id":"4016b136_4cfeb047","line":476,"updated":"2025-02-14 16:53:42.000000000","message":"so ``storage_policy_index`` will be ``-1`` if ``dir_name`` is a directory within this account.","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"}],"swift/account/reaper.py":[{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"dba7ef54998e1f004ea3f9c86ea56f5b8295a59b","unresolved":true,"context_lines":[{"line_number":265,"context_line":"                container_limit, \u0027\u0027, None, None, None, allow_reserved\u003dTrue))"},{"line_number":266,"context_line":"            while containers:"},{"line_number":267,"context_line":"                try:"},{"line_number":268,"context_line":"                    for item in containers:"},{"line_number":269,"context_line":"                        container \u003d item[0]"},{"line_number":270,"context_line":"                        this_shard \u003d ("},{"line_number":271,"context_line":"                            int(md5(container.encode(\u0027utf-8\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"a1ea2cda_51826521","line":268,"updated":"2025-02-14 16:53:42.000000000","message":"nit: s/item/row(or record)?","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"},{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"70500443af24f7276cd5df28e3ee6d223a378287","unresolved":false,"context_lines":[{"line_number":265,"context_line":"                container_limit, \u0027\u0027, None, None, None, allow_reserved\u003dTrue))"},{"line_number":266,"context_line":"            while containers:"},{"line_number":267,"context_line":"                try:"},{"line_number":268,"context_line":"                    for item in containers:"},{"line_number":269,"context_line":"                        container \u003d item[0]"},{"line_number":270,"context_line":"                        this_shard \u003d ("},{"line_number":271,"context_line":"                            int(md5(container.encode(\u0027utf-8\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"234e826b_93d8bac5","line":268,"in_reply_to":"94f4d8dc_091ef80c","updated":"2025-02-14 17:58:49.000000000","message":"Done","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"246c8183da0ce2093bf730ad3533d0e8128e30c3","unresolved":true,"context_lines":[{"line_number":265,"context_line":"                container_limit, \u0027\u0027, None, None, None, allow_reserved\u003dTrue))"},{"line_number":266,"context_line":"            while containers:"},{"line_number":267,"context_line":"                try:"},{"line_number":268,"context_line":"                    for item in containers:"},{"line_number":269,"context_line":"                        container \u003d item[0]"},{"line_number":270,"context_line":"                        this_shard \u003d ("},{"line_number":271,"context_line":"                            int(md5(container.encode(\u0027utf-8\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"94f4d8dc_091ef80c","line":268,"in_reply_to":"a1ea2cda_51826521","updated":"2025-02-14 17:07:45.000000000","message":"Yeah, I think I like `row` better -- good call.","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"}],"swift/account/utils.py":[{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"dba7ef54998e1f004ea3f9c86ea56f5b8295a59b","unresolved":true,"context_lines":[{"line_number":102,"context_line":"            # everything is configured correctly, but clients are"},{"line_number":103,"context_line":"            # expected to be able to handle this case regardless,"},{"line_number":104,"context_line":"            # if only to support older versions of swift."},{"line_number":105,"context_line":"            if storage_policy_index in POLICIES:"},{"line_number":106,"context_line":"                container[\u0027storage_policy\u0027] \u003d ("},{"line_number":107,"context_line":"                    POLICIES[storage_policy_index].name"},{"line_number":108,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":1,"id":"e0ef4a66_8018d87e","line":105,"updated":"2025-02-14 16:53:42.000000000","message":"after looking into ``list_containers_iter``, I think the only case that ``storage_policy_index \u003d -1`` is that the ``container`` returned actually is a sub-folder within an account, and it makes sense that ``-1`` won\u0027t be in ``POLICIES`` either.","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"},{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"70500443af24f7276cd5df28e3ee6d223a378287","unresolved":true,"context_lines":[{"line_number":102,"context_line":"            # everything is configured correctly, but clients are"},{"line_number":103,"context_line":"            # expected to be able to handle this case regardless,"},{"line_number":104,"context_line":"            # if only to support older versions of swift."},{"line_number":105,"context_line":"            if storage_policy_index in POLICIES:"},{"line_number":106,"context_line":"                container[\u0027storage_policy\u0027] \u003d ("},{"line_number":107,"context_line":"                    POLICIES[storage_policy_index].name"},{"line_number":108,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":1,"id":"13824a84_9ecd87c3","line":105,"in_reply_to":"e0ef4a66_8018d87e","updated":"2025-02-14 17:58:49.000000000","message":"actually the case of ``storage_policy_index \u003d -1`` is handled above by the ``is_subdir`` branch, so it\u0027s not possible that ``storage_policy_index \u003c 0`` at here.","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"}],"test/unit/account/test_utils.py":[{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"dba7ef54998e1f004ea3f9c86ea56f5b8295a59b","unresolved":true,"context_lines":[{"line_number":227,"context_line":"                             container_timestamp.internal, 0, 10, 100, 0)"},{"line_number":228,"context_line":"        broker.put_container(\u0027bar\u0027,"},{"line_number":229,"context_line":"                             container_timestamp.internal, 0, 10, 100, 1)"},{"line_number":230,"context_line":"        # Can eat rows for policies not in POLICIES"},{"line_number":231,"context_line":"        broker.put_container(\u0027baz\u0027,"},{"line_number":232,"context_line":"                             container_timestamp.internal, 0, 10, 100, 2)"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"32ebcb65_11516c1f","line":230,"updated":"2025-02-14 16:53:42.000000000","message":"that\u0027ll be great to have one test case of ``storage_policy_index \u003d -1`` to cover the below new changes, but I couldn\u0027t find any existing test case to test the ``sub-folder`` case with the ``delimiter`` parameters into ``account_listing_response``.\n\n```\n            if storage_policy_index in POLICIES:\n                container[\u0027storage_policy\u0027] \u003d (\n                    POLICIES[storage_policy_index].name\n                )\n```","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"246c8183da0ce2093bf730ad3533d0e8128e30c3","unresolved":true,"context_lines":[{"line_number":227,"context_line":"                             container_timestamp.internal, 0, 10, 100, 0)"},{"line_number":228,"context_line":"        broker.put_container(\u0027bar\u0027,"},{"line_number":229,"context_line":"                             container_timestamp.internal, 0, 10, 100, 1)"},{"line_number":230,"context_line":"        # Can eat rows for policies not in POLICIES"},{"line_number":231,"context_line":"        broker.put_container(\u0027baz\u0027,"},{"line_number":232,"context_line":"                             container_timestamp.internal, 0, 10, 100, 2)"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"f188c128_25578d7c","line":230,"in_reply_to":"32ebcb65_11516c1f","updated":"2025-02-14 17:07:45.000000000","message":"Added a case with `delimiter\u003d\u0027a\u0027`","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"},{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"70500443af24f7276cd5df28e3ee6d223a378287","unresolved":false,"context_lines":[{"line_number":227,"context_line":"                             container_timestamp.internal, 0, 10, 100, 0)"},{"line_number":228,"context_line":"        broker.put_container(\u0027bar\u0027,"},{"line_number":229,"context_line":"                             container_timestamp.internal, 0, 10, 100, 1)"},{"line_number":230,"context_line":"        # Can eat rows for policies not in POLICIES"},{"line_number":231,"context_line":"        broker.put_container(\u0027baz\u0027,"},{"line_number":232,"context_line":"                             container_timestamp.internal, 0, 10, 100, 2)"},{"line_number":233,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"aca121fb_f85357b6","line":230,"in_reply_to":"f188c128_25578d7c","updated":"2025-02-14 17:58:49.000000000","message":"Done","commit_id":"66623732c639b61dad332ac03ad0f65761364d73"},{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"70500443af24f7276cd5df28e3ee6d223a378287","unresolved":true,"context_lines":[{"line_number":272,"context_line":"        }]"},{"line_number":273,"context_line":"        self.assertEqual(expected, json.loads(resp.body))"},{"line_number":274,"context_line":""},{"line_number":275,"context_line":"        req \u003d Request.blank(\u0027\u0027)"},{"line_number":276,"context_line":"        resp \u003d utils.account_listing_response("},{"line_number":277,"context_line":"            \u0027a\u0027, req, \u0027application/json\u0027, broker, delimiter\u003d\u0027a\u0027)"},{"line_number":278,"context_line":"        self.assertEqual(resp.status_int, 200)"}],"source_content_type":"text/x-python","patch_set":2,"id":"809c7e94_d9f9d865","line":275,"updated":"2025-02-14 17:58:49.000000000","message":"passes on my vasio","commit_id":"62fa6d27a6bf84f06e7e3bfc967ca353ca3b0ebb"}]}
