)]}'
{"id":"openstack%2Fswift~972334","triplet_id":"openstack%2Fswift~master~Iab68f4b596dfa7f23bc587fbde859d854faff87f","project":"openstack/swift","branch":"master","topic":"p-timestamp-collision","attention_set":{},"removed_from_attention_set":{"7233":{"account":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"last_update":"2026-01-13 12:16:27.000000000","reason":"Change was submitted"},"7847":{"account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"last_update":"2026-01-13 10:05:34.000000000","reason":"\u003cGERRIT_ACCOUNT_7847\u003e replied on the change","reason_account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"}},"1179":{"account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"last_update":"2026-01-13 12:16:27.000000000","reason":"Change was submitted"},"15343":{"account":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"last_update":"2026-01-13 12:16:27.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Iab68f4b596dfa7f23bc587fbde859d854faff87f","subject":"tests: assert that X-Timestamp headers are valid","status":"MERGED","created":"2026-01-06 17:43:16.000000000","updated":"2026-01-13 12:18:14.000000000","submitted":"2026-01-13 12:16:27.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":50,"unresolved_comment_count":22,"has_review_started":true,"submission_id":"972334-p-timestamp-collision","meta_rev_id":"95d1c4e4e192d189d8e0edcc88da6002c8bca3e9","_number":972334,"virtual_id_number":972334,"owner":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-01-13 12:16:27.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"all":[{"value":2,"date":"2026-01-13 10:07:25.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":2,"date":"2026-01-13 10:08:50.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":2,"date":"2026-01-13 10:07:25.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":1,"date":"2026-01-13 10:08:50.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":0,"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":34892,"name":"ASHWIN A NAIR","display_name":"indianwhocodes","email":"nairashwin952013@gmail.com","username":"indianwhocodes","status":"Nvidia"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-01-06 17:54:32.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"CC"},{"updated":"2026-01-06 19:07:22.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-01-09 19:15:58.000000000","updated_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"reviewer":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"state":"REVIEWER"},{"updated":"2026-01-09 19:49:01.000000000","updated_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"reviewer":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"state":"CC"},{"updated":"2026-01-13 00:49:06.000000000","updated_by":{"_account_id":34892,"name":"ASHWIN A NAIR","display_name":"indianwhocodes","email":"nairashwin952013@gmail.com","username":"indianwhocodes","status":"Nvidia"},"reviewer":{"_account_id":34892,"name":"ASHWIN A NAIR","display_name":"indianwhocodes","email":"nairashwin952013@gmail.com","username":"indianwhocodes","status":"Nvidia"},"state":"CC"},{"updated":"2026-01-13 02:11:28.000000000","updated_by":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"reviewer":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"state":"REVIEWER"}],"messages":[{"id":"6c4b75dde3e24b6c1301392c7544ebbbbd597ed8","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-06 17:43:16.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"519e50e6106729b08de969a62f93b177a947b87f","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-06 17:54:32.000000000","message":"Patch Set 1:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a4484bb398d845518ef81891d9a9a80d\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/25610f5ee16f4aef882c53c16fb562db : FAILURE in 8m 27s","accounts_in_message":[],"_revision_number":1},{"id":"2689a2ebfe4c61fe4fdef06fc475e3506ca7d734","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-06 18:04:45.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"d02f2168afd7212a3f9c11655642cb2ff7123a95","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-06 19:00:08.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/805bdfd200264a088c2105bc50946fcc\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/c639f5d363154b2a9a00b8248c0f8d35 : SUCCESS in 50m 57s","accounts_in_message":[],"_revision_number":2},{"id":"93e3fd320faf7d6064e2cbd82e8378a9f4b0bc0a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-06 19:07:22.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/14118cc5bc7c4003a283571a7829417a\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1ff062a4ab9f420383fa3ab0eded4c2d : SUCCESS in 10m 24s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/19d19ff968024241b495842a1cff24b2 : SUCCESS in 11m 21s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/6c4bf7c33ca14dcd96b7b7f1a398fa88 : SUCCESS in 19m 52s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/2ef4b9b621d74223a91199ed2f3e14d5 : SUCCESS in 17m 48s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/f53aeaf49b974d46872e998597822bf1 : SUCCESS in 4m 58s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/374e21ad137d42949408f9b155834105 : SUCCESS in 12m 16s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/9bc015d72ca24eda83cb2c0d924bb511 : SUCCESS in 16m 55s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/c11d1f339b7c4693ab058a974559553c : SUCCESS in 27m 53s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/b847d91a8d49494194e4203fd28adbb6 : SUCCESS in 23m 48s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/b4ff1fb056834543af0a1e6bc24245ea : SUCCESS in 15m 33s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/9845a348d2714a30ac5b728647dea11e : SUCCESS in 15m 51s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/2df374f91fca452096e79149364e9456 : SUCCESS in 14m 56s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/5574359a6bea4a33b3f33b673af5d5fe : SUCCESS in 6m 27s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/addaff7a95c94613b9f4d828b5a2854f : SUCCESS in 7m 38s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f5f420e9aae0427ebbe5d530c004e2e1 : SUCCESS in 55m 19s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/7f99dbbf06cb49cf83c3b0300beb8bb2 : SUCCESS in 52m 25s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/0a6f97cfe28f4e9cb1eb492bbd06236e : SUCCESS in 22m 03s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e0d72ec6c225453d90b013d736d547a2 : SUCCESS in 10m 41s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e1579f87f10b492bab45094aa978bf93 : SUCCESS in 4m 26s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2d441d1ed39c4585a9675c74db30a4c6 : SUCCESS in 17m 10s","accounts_in_message":[],"_revision_number":2},{"id":"b5e4dbe81f9a0b1a932628da070bcc4cae3ccc92","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-07 12:12:42.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":3},{"id":"b87054307f521cee1558ecd6b85868923c60dda2","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-07 13:22:04.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7a284d4f1f9c4eacbfd626d97a625f23\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/81a5d889a3fb484a874bfe86d71e4510 : SUCCESS in 7m 36s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/d7b9d7d5b5fc406dbe225481d9cf3285 : SUCCESS in 18m 34s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/230f5857ceb64ddfa0b10f1a87c72633 : SUCCESS in 10m 26s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/3f432f22744141e497ce53de7899ea8b : SUCCESS in 11m 01s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/794fd12368eb4b3786754471294a2b58 : SUCCESS in 6m 44s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/99772257b4494fa998ab75e0f3781151 : SUCCESS in 23m 42s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/60cadbebb2d946b79796a4583f054122 : SUCCESS in 20m 45s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/ac993f4cc1264686a361e05ec31b3ced : SUCCESS in 28m 23s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/1e51ba1935da492cbaef2c0fae72d505 : SUCCESS in 28m 27s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/f50efd0801cd4888a2c3d731d71ea19a : SUCCESS in 13m 56s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/f984e3f027804a8da9ace3acadae455d : SUCCESS in 15m 30s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/1c9ffb8c82e0402abb8e6e38773c729a : SUCCESS in 18m 23s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/8e72b3930acf4cbab43ca4b00048e9ec : SUCCESS in 6m 18s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/32fae286f86f46b89544cb946d76e335 : SUCCESS in 8m 14s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/96fa3ac37291496fae1838a462ef137a : SUCCESS in 50m 32s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/7f882a6be8ec4eaea7cf043f746b35a3 : SUCCESS in 56m 24s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/36a3d4a9485b45f6a3c451b358e93d05 : SUCCESS in 56m 07s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/f77bc9deb6944788ae83d17ca0e3e59b : SUCCESS in 29m 20s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6f50bc70f81e42c3bde744e67af47b6a : SUCCESS in 2m 37s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/ec1dcca756cb44139b393f653e5524c4 : SUCCESS in 17m 43s","accounts_in_message":[],"_revision_number":3},{"id":"3bdd8dced8f78284d627efa344c3602ce17dfb49","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-07 13:29:21.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8372ddb49a6e41eea277662e97a8dc94\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/cfa1801b7c56426eb7d7b333700af174 : SUCCESS in 54m 06s","accounts_in_message":[],"_revision_number":3},{"id":"821804611cd9479623f9282762199637bef9068d","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-09 13:08:14.000000000","message":"Patch Set 3: Code-Review-1\n\n(7 comments)","accounts_in_message":[],"_revision_number":3},{"id":"59b5566d68c0589ee0b7a88cbf2c6d889c241678","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-09 13:17:05.000000000","message":"Uploaded patch set 4.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1\n","accounts_in_message":[],"_revision_number":4},{"id":"e037e6980939eb800f52f8d1172006248fce349a","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-09 14:26:47.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/083c9960c16f4528828675d0f05da623\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7aeee84886c94e6a8c214ad1048ddf08 : SUCCESS in 5m 04s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/5f61513471154929923c9da583b9ad1a : SUCCESS in 18m 15s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/92baa1e34ff94c03997687a0dbbcf361 : SUCCESS in 18m 56s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/96ca92ecdfea491f8a37e5e5fa563c84 : SUCCESS in 18m 59s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6a5a714d139a4282b0e645bda43af8dd : SUCCESS in 7m 22s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/d7966e917b9241b9906ff7bbdb3baf5c : SUCCESS in 25m 10s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/1f183e7f6b064613adbd198e535bec70 : SUCCESS in 11m 46s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/56f77b407b6b41eba39478b1b25be5ae : SUCCESS in 32m 52s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/0a376ae53d074cbbb9b5045aa8b732e4 : SUCCESS in 11m 42s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/cdffa133911e4789a2d2d2e2bf698577 : SUCCESS in 13m 52s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/43227842fb6546b7bce73d3c12bb834f : SUCCESS in 13m 39s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/aa18d46940f44a9cbe5cb25ecea49ff9 : SUCCESS in 14m 03s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/8b5f0ee6f471472a91740a39552c8f99 : SUCCESS in 5m 39s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/18f17bd4e55b4d06be2bcb27f7dae8b6 : SUCCESS in 8m 04s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/c115a97459ed4cee8f9d5b767baf75fa : SUCCESS in 57m 00s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/d11fb4048cd44b7696d31fa55a5b6207 : SUCCESS in 46m 20s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/a9d02505cdd54767acd58f2df3baa80f : SUCCESS in 26m 33s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/d531bb75f4404a2f8e9eed85bd4deb81 : SUCCESS in 28m 12s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1523a8602b364c649802b90cafeb1230 : SUCCESS in 5m 55s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2f80f3fea52d40bba3baa5535347c561 : SUCCESS in 17m 09s","accounts_in_message":[],"_revision_number":4},{"id":"da456ebff5a63e035ccb0ed87229d0e696dcf9c3","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-09 18:32:07.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d1768f0e7cf242b79bc1f942fb40596d\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/f3b9c3f6cd3c47db89833908b6195933 : SUCCESS in 33m 49s","accounts_in_message":[],"_revision_number":4},{"id":"e4ed2db0b4d14d074e263a47e448969d9c93fd5e","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-01-09 19:15:58.000000000","message":"Patch Set 4: Code-Review-1\n\n(22 comments)","accounts_in_message":[],"_revision_number":4},{"id":"b7525afec0e27f5b487561d35d4a1f123e915a91","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-01-09 19:49:01.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"fc1e179d18973197cd7fd0be08ff83874bc3d31f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-12 18:50:36.000000000","message":"Uploaded patch set 5.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1\n","accounts_in_message":[],"_revision_number":5},{"id":"f677af9443f3fdab94bfc0bf0c3a2f91be80f19a","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-12 19:26:33.000000000","message":"Patch Set 5:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7d87b60c68194ac29e87f03ab5cab22a\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/8b5fd209c8304fd4a3897c9e219d0001 : SUCCESS in 33m 28s","accounts_in_message":[],"_revision_number":5},{"id":"4713b170c2d4cc18107837a3b2a1d1d5514c27f1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-12 19:52:22.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/582c95b197384a378d786caec0640273\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/06dad61da9b54851a17d9227ec4da903 : SUCCESS in 7m 44s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/881144481d4c496693c40e5ee898ae49 : SUCCESS in 19m 02s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/3d21463e4c104e328b7888717686f14b : SUCCESS in 11m 01s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/eae448f547df497c8a88cc39acdf2d14 : SUCCESS in 20m 20s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/4059c274685b4ea1b2acc935b90c2bbc : SUCCESS in 4m 35s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/613bfec9f097441b807fb36b582a2b2e : SUCCESS in 26m 17s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/3e3bb3eb5fe34c78a7fd678b2fec0271 : SUCCESS in 21m 34s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/233ba38793d040478a0913dab9246cc7 : SUCCESS in 30m 23s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/d43854b73ebc4a27a66ced874657c7e5 : SUCCESS in 33m 57s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/e4ad71da6d8e4aa080e63c72d81f3d17 : SUCCESS in 13m 01s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/a1905802ccfc498cab0ca8d4e767b49c : SUCCESS in 13m 25s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/4a099ab4fed644919f421da2874fbb90 : SUCCESS in 9m 15s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/df0ad7d3bd34430e848a990df0d73fac : SUCCESS in 6m 30s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/0af67eaa3297449cb9d58863069716fe : SUCCESS in 9m 07s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/ea4872306e0d4c0482538577fcee4285 : SUCCESS in 56m 23s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/e864ce6c99784a248e3a2cb888a6d378 : SUCCESS in 25m 59s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/6541314dfefc4482a2acaa4751c436fb : SUCCESS in 49m 34s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/3cd977a43b844df6a31387755c18134b : SUCCESS in 27m 53s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7d1f67bbd3e044bdba2dfb3fa9974188 : SUCCESS in 4m 41s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/d85756f048834637b37572f855684ead : SUCCESS in 18m 49s","accounts_in_message":[],"_revision_number":5},{"id":"3e425ed59c19b6be8c1c7a782b6989bc99d6a12c","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-01-12 20:29:40.000000000","message":"Patch Set 5: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"41bc064b89bc75932b33ca65260b417d9763fcbb","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2026-01-13 02:11:28.000000000","message":"Patch Set 5: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":5},{"id":"1fafc384ecd2671d6fad066654e5688b5c29272d","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-13 10:05:34.000000000","message":"Patch Set 5:\n\n(17 comments)","accounts_in_message":[],"_revision_number":5},{"id":"5e753e832954a2d25af32bc4c5541a3499471e46","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-13 10:07:25.000000000","message":"Uploaded patch set 6: Patch Set 5 was rebased.\n\nCopied Votes:\n* Code-Review+2 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified+1\n* Workflow+1\n","accounts_in_message":[],"_revision_number":6},{"id":"be93aa25655ce578804398b5ea8faae043737e79","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-01-13 10:08:50.000000000","message":"Patch Set 6: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"ca975fdf24df1d9da7b9075b09f8fecca5edd263","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-13 10:52:31.000000000","message":"Patch Set 6:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e9094eb6116c49eebce0e149086bf10c\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/78634219ff3b45279b5bc391ec27fe07 : SUCCESS in 35m 42s","accounts_in_message":[],"_revision_number":6},{"id":"12decd665abf130e5264b286367012521cbaae9b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-13 11:07:19.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d523ff5a98a4475097bee4f1d344744b\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ee935bcd1b6344d7aa1032dfdd0f9273 : SUCCESS in 10m 15s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/c8c41f036fd54bdeaeb2d282a9cdf06f : SUCCESS in 11m 34s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/fd10fb8a01414da088136ebd583744f1 : SUCCESS in 14m 37s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f6c7f261b98d4d54b2f02414a1b4b727 : SUCCESS in 20m 14s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/897d1102da10465c97616d2082da7ec6 : FAILURE in 4m 26s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/87ff7efbdac54383be5a2137bf51da94 : SUCCESS in 18m 14s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/16062313fed7440daa623ac906a208a1 : SUCCESS in 16m 44s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/2e5b5a297209425d865baa35d2522839 : SUCCESS in 19m 07s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/3a99a2485a8f421e8e264e77ca041bfc : SUCCESS in 30m 16s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/b4098268e127467b8bac2369345bb9c9 : SUCCESS in 13m 50s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/d7019ca98d704ebdaeb9b2cdf4095f0f : SUCCESS in 11m 05s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/de462aa354b04e64b768b947731744d0 : SUCCESS in 15m 11s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/4d921e05085d41908003f54ad7cf881d : SUCCESS in 6m 17s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/10843ed05fe244e794d7d8ab712e8db5 : SUCCESS in 9m 02s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/2eb293e0c5f64a46a308e61238c66d9c : SUCCESS in 54m 56s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/326fe66971fd45ea9bc858dede92bcd6 : SUCCESS in 39m 17s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/cf862fc4fcb44b9d8db747b6d02422d7 : SUCCESS in 49m 05s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/11f33c1056644546be8e68c5d314a73b : SUCCESS in 13m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d5ff5e76516549aaa9510c8ce08f82f0 : SUCCESS in 2m 33s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/6bf6e9de7f674032a0f73eb183bb1abd : SUCCESS in 10m 18s","accounts_in_message":[],"_revision_number":6},{"id":"faf695137cc3b6a3eb8b79bde8e92b49c1fa399b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-13 11:07:32.000000000","message":"Patch Set 6: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":6},{"id":"d72c51a85a0c2d61b934828381614ddc63f2faa2","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-13 12:16:27.000000000","message":"Patch Set 6: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/2651904532a444119b4ae53167182786\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/07c43a08cdfe480db707a423596b2a54 : SUCCESS in 10m 08s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/2132a132cd3e48b488bafe05d22ed61e : RETRY_LIMIT in 6s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/64e9db199ca548ae973eef57977e1c4f : SUCCESS in 13m 00s\n- swift-tox-py39 https://zuul.opendev.org/t/openstack/build/558a313b404942fcaa69d1c3e52a4b1c : SUCCESS in 21m 29s\n- swift-tox-py312 https://zuul.opendev.org/t/openstack/build/053e14cdd4bf4174af548f9c84e5020a : SUCCESS in 27m 48s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/9f0373aee5ff4e99bc45be8b0c0c8f17 : SUCCESS in 35m 37s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/4c17eda343b2455ba15ea42945814f80 : SUCCESS in 15m 54s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/4906b5637e0949748d3f51c369dae748 : SUCCESS in 14m 06s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/aa6da4d0e2524aaaa68727ab377cd7c2 : SUCCESS in 12m 23s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/3ed07bb730bf46708c4838cd3f4a16ee : SUCCESS in 6m 12s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/a444616cb9c6493ca36396befd266974 : SUCCESS in 7m 34s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/b2b2b9b1acdb4526a5ead576f4b5fd21 : SUCCESS in 56m 55s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/b93d9cb6a1fb463eb2c16cb09b02d866 : SUCCESS in 59m 24s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/67556ff045e54930990474e347a4268e : SUCCESS in 54m 17s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/e7dbb02485c64f6e9e3afc69e0ca6bb8 : SUCCESS in 25m 17s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3023f9964f27488b876f918a7e33a268 : SUCCESS in 5m 09s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/0fce2c3743414f0f8369d97407a613ab : SUCCESS in 17m 39s","accounts_in_message":[],"_revision_number":6},{"id":"e886f1a8244e9c3f2246a20be9b257e8c9b2c2d2","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-13 12:16:27.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":6},{"id":"95d1c4e4e192d189d8e0edcc88da6002c8bca3e9","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-01-13 12:18:14.000000000","message":"Patch Set 6:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f69e3ce01c914d53b6c5d2998359d4a5\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3a2765e844d6451bbf5062276d678523 : SUCCESS in 48s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/16557741b5b6441d9c575f881370e23c : RETRY_LIMIT in 6s (non-voting)","accounts_in_message":[],"_revision_number":6}],"current_revision_number":6,"current_revision":"949f0fdac8624c1a40381edd1948e82b3092d350","revisions":{"33ef46ad5631191cd270436a8f953e7f5c9bd23b":{"kind":"REWORK","_number":1,"created":"2026-01-06 17:43:16.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/34/972334/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/34/972334/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/34/972334/1"}}},"commit":{"parents":[{"commit":"97ec6333c417dec196c79787596a5a28885638d4","subject":"tests: relocate timestamp tests to test_timestamp.py","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/97ec6333c417dec196c79787596a5a28885638d4"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 14:55:36.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 15:16:47.000000000","tz":0},"subject":"tests: add assertions re. Timestamp headers","message":"tests: add assertions re. Timestamp headers\n\nAdd assertions to proxy server unit tests to verify that backend PUT,\nPOST and DELETE requests have valid x-timestamp headers.  The\nmocked_http_conn helper is preferred over set_http_connect because it\ncaptures backend requests.\n\nAdd assertions to s3api unit tests to verify that object PUT\nand DELETE requests have valid x-timestamp headers.\n\nAdd assertions to s3api unit tests to verify that bucket PUT\nand DELETE requests do not have valid x-timestamp headers.\n\nAdd assertions to s3api unit tests to verify that multi-upload and\nmulti-delete backend swift requests do not have x-timestamp headers\n(it is left to other middleware or the proxy server app to add the\nheader).\n\nChange-Id: Iab68f4b596dfa7f23bc587fbde859d854faff87f\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/33ef46ad5631191cd270436a8f953e7f5c9bd23b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/33ef46ad5631191cd270436a8f953e7f5c9bd23b"}]},"branch":"refs/heads/master"},"c2506aea01407f4274afff5b229eb7b025d32c38":{"kind":"REWORK","_number":2,"created":"2026-01-06 18:04:45.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/34/972334/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/34/972334/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/34/972334/2"}}},"commit":{"parents":[{"commit":"97ec6333c417dec196c79787596a5a28885638d4","subject":"tests: relocate timestamp tests to test_timestamp.py","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/97ec6333c417dec196c79787596a5a28885638d4"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 14:55:36.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 18:00:23.000000000","tz":0},"subject":"tests: add assertions re. Timestamp headers","message":"tests: add assertions re. Timestamp headers\n\nAdd assertions to proxy server unit tests to verify that backend PUT,\nPOST and DELETE requests have valid x-timestamp headers.  The\nmocked_http_conn helper is preferred over set_http_connect because it\ncaptures backend requests.\n\nAdd assertions to s3api unit tests to verify that object PUT\nand DELETE requests have valid x-timestamp headers.\n\nAdd assertions to s3api unit tests to verify that bucket PUT\nand DELETE requests do not have valid x-timestamp headers.\n\nAdd assertions to s3api unit tests to verify that multi-upload and\nmulti-delete backend swift requests do not have x-timestamp headers\n(it is left to other middleware or the proxy server app to add the\nheader).\n\nChange-Id: Iab68f4b596dfa7f23bc587fbde859d854faff87f\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c2506aea01407f4274afff5b229eb7b025d32c38"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c2506aea01407f4274afff5b229eb7b025d32c38"}]},"branch":"refs/heads/master"},"e6bc8d44506ca39ecac9b30ef793738ee80cffba":{"kind":"REWORK","_number":3,"created":"2026-01-07 12:12:42.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/34/972334/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/34/972334/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/34/972334/3"}}},"commit":{"parents":[{"commit":"97ec6333c417dec196c79787596a5a28885638d4","subject":"tests: relocate timestamp tests to test_timestamp.py","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/97ec6333c417dec196c79787596a5a28885638d4"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 14:55:36.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-07 10:59:58.000000000","tz":0},"subject":"tests: add assertions re. Timestamp headers","message":"tests: add assertions re. Timestamp headers\n\nAdd assertions to proxy unit tests to verify that the s3api adds\na valid x-timestamp header to some swift requests:\n\n  - object POST and DELETE requests\n  - multi-upload part PUT requests\n\nAdd assertions to proxy unit tests to verify that the s3api does not\nadd an x-timestamp header to other swift requests:\n\n  - multi-upload complete requests\n  - multi-delete requests\n  - bucket PUT and DELETE requests\n\nNote: It is left to other middleware or the proxy server app to add the\nx-timestamp header to these requests.\n\nThe mocked_http_conn helper is preferred over set_http_connect in\ntests because it captures backend requests and detects unused\nresponses.\n\nChange-Id: Iab68f4b596dfa7f23bc587fbde859d854faff87f\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e6bc8d44506ca39ecac9b30ef793738ee80cffba"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e6bc8d44506ca39ecac9b30ef793738ee80cffba"}]},"branch":"refs/heads/master"},"104995d16391170b77a66cfcd68dde13ec101ef3":{"kind":"REWORK","_number":4,"created":"2026-01-09 13:17:05.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/34/972334/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/34/972334/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/34/972334/4"}}},"commit":{"parents":[{"commit":"7eb9c237c28f980c81b36380a7bbfb6438b127a3","subject":"test_sync.py: fix timestamp handling","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/7eb9c237c28f980c81b36380a7bbfb6438b127a3"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 14:55:36.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-09 13:16:41.000000000","tz":0},"subject":"tests: add assertions re. Timestamp headers","message":"tests: add assertions re. Timestamp headers\n\nAdd assertions to proxy unit tests to verify that the s3api adds\na valid x-timestamp header to some swift requests:\n\n  - object POST and DELETE requests\n  - multi-upload part PUT requests\n\nAdd assertions to proxy unit tests to verify that the s3api does not\nadd an x-timestamp header to other swift requests:\n\n  - multi-upload complete requests\n  - multi-delete requests\n  - bucket PUT and DELETE requests\n\nNote: It is left to other middleware or the proxy server app to add the\nx-timestamp header to these requests.\n\nThe mocked_http_conn helper is preferred over set_http_connect in\ntests because it captures backend requests and detects unused\nresponses.\n\nChange-Id: Iab68f4b596dfa7f23bc587fbde859d854faff87f\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/104995d16391170b77a66cfcd68dde13ec101ef3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/104995d16391170b77a66cfcd68dde13ec101ef3"}]},"branch":"refs/heads/master"},"a35ca5eb44b0b123ad4f9ec50f5dcfeda9a28f57":{"kind":"REWORK","_number":5,"created":"2026-01-12 18:50:36.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/34/972334/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/34/972334/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/34/972334/5"}}},"commit":{"parents":[{"commit":"7eb9c237c28f980c81b36380a7bbfb6438b127a3","subject":"test_sync.py: fix timestamp handling","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/7eb9c237c28f980c81b36380a7bbfb6438b127a3"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 14:55:36.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-12 18:49:29.000000000","tz":0},"subject":"tests: assert that X-Timestamp headers are valid","message":"tests: assert that X-Timestamp headers are valid\n\nAdd assertions to proxy unit tests to verify that when the proxy adds\nan x-timestamp header to PUT, POST and DELETE requests then the value\nis valid.\n\nAdd assertions to s3api unit tests to verify that the s3api adds a\nvalid x-timestamp header to some swift requests:\n\n  - object PUT requests\n  - multi-upload part PUT requests\n\nNote: The addition of these assertions is not intended to affirm that\nit is necessary or appropriate for s3api to add X-Timestamp to these\nrequests (which is questionable). The tests are added to verify that\nwhen the header is added then the value is *valid*.\n\nAdd assertions to s3api unit tests to verify that the s3api does not\nadd an x-timestamp header to other swift requests:\n\n  - multi-upload complete requests\n  - multi-delete requests\n  - bucket PUT and DELETE requests\n\nNote: It is left to other middleware or the proxy server app to add\nthe x-timestamp header to these requests, which is probably quite\nappropriate.\n\nThe mocked_http_conn helper is preferred over set_http_connect in\ntests because it captures backend requests and detects unused\nresponses.\n\nChange-Id: Iab68f4b596dfa7f23bc587fbde859d854faff87f\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a35ca5eb44b0b123ad4f9ec50f5dcfeda9a28f57"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a35ca5eb44b0b123ad4f9ec50f5dcfeda9a28f57"}]},"branch":"refs/heads/master"},"949f0fdac8624c1a40381edd1948e82b3092d350":{"kind":"TRIVIAL_REBASE","_number":6,"created":"2026-01-13 10:07:25.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/34/972334/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/34/972334/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/34/972334/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/34/972334/6"}}},"commit":{"parents":[{"commit":"8f82e458684285a2d62e90590f0cefd7abc825aa","subject":"test_sync.py: fix timestamp handling","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/8f82e458684285a2d62e90590f0cefd7abc825aa"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-06 14:55:36.000000000","tz":0},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-01-13 10:07:14.000000000","tz":0},"subject":"tests: assert that X-Timestamp headers are valid","message":"tests: assert that X-Timestamp headers are valid\n\nAdd assertions to proxy unit tests to verify that when the proxy adds\nan x-timestamp header to PUT, POST and DELETE requests then the value\nis valid.\n\nAdd assertions to s3api unit tests to verify that the s3api adds a\nvalid x-timestamp header to some swift requests:\n\n  - object PUT requests\n  - multi-upload part PUT requests\n\nNote: The addition of these assertions is not intended to affirm that\nit is necessary or appropriate for s3api to add X-Timestamp to these\nrequests (which is questionable). The tests are added to verify that\nwhen the header is added then the value is *valid*.\n\nAdd assertions to s3api unit tests to verify that the s3api does not\nadd an x-timestamp header to other swift requests:\n\n  - multi-upload complete requests\n  - multi-delete requests\n  - bucket PUT and DELETE requests\n\nNote: It is left to other middleware or the proxy server app to add\nthe x-timestamp header to these requests, which is probably quite\nappropriate.\n\nThe mocked_http_conn helper is preferred over set_http_connect in\ntests because it captures backend requests and detects unused\nresponses.\n\nChange-Id: Iab68f4b596dfa7f23bc587fbde859d854faff87f\nSigned-off-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/949f0fdac8624c1a40381edd1948e82b3092d350"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/949f0fdac8624c1a40381edd1948e82b3092d350"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{}}}]}
