)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9034a90fde304ed35fbe548066bad920d011af9d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Clay Gerrard \u003cclay.gerrard@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-04-25 16:45:18 -0500"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"sq? this convined me!"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I95606aed5a5bd70424fbc51dd965f238fa7f064f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"c45b5f52_607c572a","line":7,"updated":"2024-04-26 09:54:57.000000000","message":"looks like the parent is on it\u0027s way through the gate so we\u0027ll need this to have a \u0027proper\u0027 commit message, and related change would be good\n\n```\nRelated-Change: I106103438c4162a561486ac73a09436e998ae1f0\n```","commit_id":"44c3fa3e829ca194510be90ec3d416f24c9d8de5"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"2d0d5bf085191d29e734c6c7771bbf52c38089b5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"078a8a66_f0e94756","updated":"2024-04-26 09:56:28.000000000","message":"@Clay hope you\u0027re ok with my commit message change etc, if so then merge","commit_id":"b490857b475207fd9baf69168d75231e65562032"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"506f21db548fd09f739e2bc25d4b6424fc2c6fa7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"60c44530_53dcb9e7","updated":"2024-08-01 13:53:22.000000000","message":"we\u0027re still trying to understand this test\n\n925482: expirer: fix missing unit test assertions | https://review.opendev.org/c/openstack/swift/+/925482","commit_id":"b490857b475207fd9baf69168d75231e65562032"}],"test/unit/obj/test_expirer.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"506f21db548fd09f739e2bc25d4b6424fc2c6fa7","unresolved":true,"context_lines":[{"line_number":1187,"context_line":"        # ... and we we still expect all past async tasks to yield"},{"line_number":1188,"context_line":"        observed \u003d list(x.iter_task_to_expire("},{"line_number":1189,"context_line":"            task_account_container_list, 0, 1))"},{"line_number":1190,"context_line":"        self.assertEqual(expected, observed)"},{"line_number":1191,"context_line":""},{"line_number":1192,"context_line":"    def test_run_once_unicode_problem(self):"},{"line_number":1193,"context_line":"        requests \u003d []"}],"source_content_type":"text/x-python","patch_set":1,"id":"92f219dd_b5e78621","side":"PARENT","line":1190,"updated":"2024-08-01 13:53:22.000000000","message":"how is this existing test *chaning8 the delay configuration - but still getting the same lists?","commit_id":"5961ba0ca7ddcfe296627fbef01ec4b32d538290"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"12f2e5f99ecfa6c73996cf23531c637d58ef43a2","unresolved":true,"context_lines":[{"line_number":1116,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c0/o02\u0027,"},{"line_number":1117,"context_line":"                     \u0027content_type\u0027: \u0027application/async-deleted\u0027},"},{"line_number":1118,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c0/o03\u0027,"},{"line_number":1119,"context_line":"                     \u0027content_type\u0027: \u0027\u0027},"},{"line_number":1120,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c1/o04\u0027,"},{"line_number":1121,"context_line":"                     \u0027content_type\u0027: \u0027application/async-deleted\u0027},"},{"line_number":1122,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c1/o05\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"0aa9774c_a9297aed","line":1119,"updated":"2024-04-25 22:00:02.000000000","message":"this would be better with a more realistic x-delete-at looking timestamp","commit_id":"44c3fa3e829ca194510be90ec3d416f24c9d8de5"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"07b362dca6a2c5a6d4f6ea053e5e2d20fd73adf8","unresolved":true,"context_lines":[{"line_number":1116,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c0/o02\u0027,"},{"line_number":1117,"context_line":"                     \u0027content_type\u0027: \u0027application/async-deleted\u0027},"},{"line_number":1118,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c0/o03\u0027,"},{"line_number":1119,"context_line":"                     \u0027content_type\u0027: \u0027\u0027},"},{"line_number":1120,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c1/o04\u0027,"},{"line_number":1121,"context_line":"                     \u0027content_type\u0027: \u0027application/async-deleted\u0027},"},{"line_number":1122,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c1/o05\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ecfef0fc_66dd6658","line":1119,"in_reply_to":"0aa9774c_a9297aed","updated":"2024-04-25 22:09:14.000000000","message":"I guess it\u0027s just `text/plain`\n\nhttps://github.com/NVIDIA/swift/blob/master/swift/obj/server.py#L496","commit_id":"44c3fa3e829ca194510be90ec3d416f24c9d8de5"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9034a90fde304ed35fbe548066bad920d011af9d","unresolved":false,"context_lines":[{"line_number":1116,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c0/o02\u0027,"},{"line_number":1117,"context_line":"                     \u0027content_type\u0027: \u0027application/async-deleted\u0027},"},{"line_number":1118,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c0/o03\u0027,"},{"line_number":1119,"context_line":"                     \u0027content_type\u0027: \u0027\u0027},"},{"line_number":1120,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c1/o04\u0027,"},{"line_number":1121,"context_line":"                     \u0027content_type\u0027: \u0027application/async-deleted\u0027},"},{"line_number":1122,"context_line":"                    {\u0027name\u0027: self.past_time + \u0027-a1/c1/o05\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"69baa58e_895a6eb5","line":1119,"in_reply_to":"ecfef0fc_66dd6658","updated":"2024-04-26 09:54:57.000000000","message":"Done","commit_id":"44c3fa3e829ca194510be90ec3d416f24c9d8de5"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9034a90fde304ed35fbe548066bad920d011af9d","unresolved":true,"context_lines":[{"line_number":1181,"context_line":"                (\u0027a1/c1/o10\u0027, True),  # async"},{"line_number":1182,"context_line":"                # a1/c1/o11 c1 delay"},{"line_number":1183,"context_line":"            )"},{"line_number":1184,"context_line":"        ]"},{"line_number":1185,"context_line":"        # configure delays"},{"line_number":1186,"context_line":"        self.conf[\u0027delay_reaping_a1\u0027] \u003d 86500.0"},{"line_number":1187,"context_line":"        self.conf[\u0027delay_reaping_a1/c1\u0027] \u003d 300.0"}],"source_content_type":"text/x-python","patch_set":1,"id":"dbef114a_9bd7727a","line":1184,"updated":"2024-04-26 09:54:57.000000000","message":"It took me a while staring to cross-reference the variations back to the listing definitions, just because it\u0027s all quite dense, but I got there in the end. I had a go at laying it out differently but it didn\u0027t help, it is what it is!\n\nI like adding the mix of asyncs and delayed tasks.","commit_id":"44c3fa3e829ca194510be90ec3d416f24c9d8de5"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"506f21db548fd09f739e2bc25d4b6424fc2c6fa7","unresolved":true,"context_lines":[{"line_number":1157,"context_line":"        fake_swift \u003d FakeInternalClient(aco_dict)"},{"line_number":1158,"context_line":"        # no accounts configured with delay_reaping"},{"line_number":1159,"context_line":"        x \u003d expirer.ObjectExpirer(self.conf, logger\u003dself.logger,"},{"line_number":1160,"context_line":"                                  swift\u003dfake_swift)"},{"line_number":1161,"context_line":"        # ... we expect all past async tasks to yield"},{"line_number":1162,"context_line":"        expected \u003d ["},{"line_number":1163,"context_line":"            self.make_task(self.past_time, swob.wsgi_to_str(tgt),"}],"source_content_type":"text/x-python","patch_set":2,"id":"abd9062f_27c89888","line":1160,"updated":"2024-08-01 13:53:22.000000000","message":"I think these two lines are not needed/helpful","commit_id":"b490857b475207fd9baf69168d75231e65562032"}]}
