)]}'
{"id":"openstack%2Fswift~986089","triplet_id":"openstack%2Fswift~master~I624d392f5bfa548fb9b47a37ef686ea6916e2dcd","project":"openstack/swift","branch":"master","topic":"p-fix-test-backend-timestamp","attention_set":{},"removed_from_attention_set":{"7847":{"account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"last_update":"2026-04-24 16:48:13.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I624d392f5bfa548fb9b47a37ef686ea6916e2dcd","subject":"Fix timestamp mocking","status":"MERGED","created":"2026-04-24 13:37:57.000000000","updated":"2026-04-24 16:50:41.000000000","submitted":"2026-04-24 16:48:13.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"986089-p-fix-test-backend-timestamp","meta_rev_id":"0f68e05a9581cf578378f5c7b695219194245659","_number":986089,"virtual_id_number":986089,"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":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-04-24 16:48:13.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-04-24 15:44:36.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-04-24 15:44:36.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-04-24 14:19:03.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-04-24 14:33:12.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-04-24 15:44:36.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":"REVIEWER"}],"messages":[{"id":"9ae4f9469dc6b1ab5d700e1cc72eead6c64fa725","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-04-24 13:37:57.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"16b7abdb07d2974b4932227a95f32da400e256e1","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 14:19:03.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7f96b9bb1759480a83b4ad5bdbcc18af\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/bd923e2b47964d418205b54a77affe83 : SUCCESS in 35m 12s","accounts_in_message":[],"_revision_number":1},{"id":"a9753b22507eac1a6592f89364b503fac43c80c7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 14:33:12.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/cf1a970f47c648b789be18b63e273b4b\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d54ffb2177394014a4cd73de4d7babae : SUCCESS in 9m 07s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/a76c8f33f8ec4998bd5ed08692451d2c : SUCCESS in 16m 40s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/96511a5e2fc24c47894e514d0e151e0c : SUCCESS in 11m 04s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ca8da8c7d29848d5973e0be3b64df2be : SUCCESS in 19m 17s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/3e9edef1b0a94ef7abcd4ef0aa256d0f : SUCCESS in 5m 59s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/6cffb32730504f0b83fa5dcefd647427 : SUCCESS in 12m 02s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/e4cef3dc050e4e3598ff72ea422bd932 : SUCCESS in 22m 12s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/36f3ad86a8e44030b4d48d147d0da5e7 : SUCCESS in 11m 58s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/4e4f670e353e48328f2bdae119dada11 : SUCCESS in 9m 29s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/6a13fd228e8a47cca0b9dd289e9d97ec : SUCCESS in 8m 34s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/b4fd511456fe42f2b77f6c88e139b132 : SUCCESS in 9m 28s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/adcf800445f746af89a30ca0981b21aa : SUCCESS in 12m 53s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/4d4ef45b7d9e41e4b4f85534d7668650 : SUCCESS in 52m 51s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/62d1693062054157a7b8d4f532edcde8 : SUCCESS in 53m 16s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8dbc9db0f0ec47a889d576ec7296d50f : SUCCESS in 23m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/bb506e3f2a2a4d9fac6cfac6ae89bd60 : SUCCESS in 4m 20s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/7fd166607fd64a26aa3e06b92e3d8f4b : SUCCESS in 10m 13s","accounts_in_message":[],"_revision_number":1},{"id":"baa41b80ba2c975421442d68eaf6befae6455389","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-04-24 15:44:36.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"465ba64bdcd3cf7a3405e7547a866775d2febd2c","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 15:44:57.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"d8c2b9cf9e9affae4f4de457955021db2882bfeb","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 16:48:13.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a8571433dc134e4ebe54e93ce9ae72a5\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/27cbb6abc7a04d70b7fddbc61af18c96 : SUCCESS in 10m 01s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/09e13ee6112d4ad5badb4289a5a2c971 : SUCCESS in 7m 25s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/43cb49bbc3bc4864828189fc1d4cba79 : SUCCESS in 26m 03s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/f2771c4db5ce4cea9dfca4a76725a03b : SUCCESS in 21m 32s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/d7f819be89314b26b3de56bd1c404f33 : SUCCESS in 38m 33s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/6940d5b0cede492eb2415ffb6670ce46 : SUCCESS in 20m 59s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/cf0b60b289c64708ba1ed8b70c891696 : SUCCESS in 14m 50s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/4a58138a51684d18b411b8d90cc51a22 : SUCCESS in 15m 39s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/2f87bf6d7f084a0eb13b04675807a805 : SUCCESS in 15m 07s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/453fe5f1029448d5af36c8c6da769b05 : SUCCESS in 6m 29s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/93f529cc8599428380ae468ca71709d6 : SUCCESS in 8m 37s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/3d3338aee3f64f43b4718f545d84929c : SUCCESS in 50m 01s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f5ab39e741554c66b4dda7a0d37fbe8f : SUCCESS in 23m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/552b2f5cc7b249f2ac5458bd97654ab9 : SUCCESS in 28m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d61946084a1c48ddaaeff0ecbd491600 : SUCCESS in 4m 22s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/8a253442e1c94290b6f99a7fc14e51a4 : SUCCESS in 19m 44s","accounts_in_message":[],"_revision_number":1},{"id":"399071556628f7a3889f6a2258a99fc526de3529","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 16:48:13.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"0f68e05a9581cf578378f5c7b695219194245659","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 16:50:41.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a2ec63a236bb458a84f163c349668a20\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/87bba2de10004c18a99f8f6cf9ab5fa5 : SUCCESS in 46s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/2c9fe385c311434e9f7ed9d410d267a1 : SUCCESS in 41s (non-voting)","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"f72807f34014fb1ea25ec42d51e90a13262686eb","revisions":{"f72807f34014fb1ea25ec42d51e90a13262686eb":{"kind":"REWORK","_number":1,"created":"2026-04-24 13:37:57.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/89/986089/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/89/986089/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/89/986089/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/89/986089/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/89/986089/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/89/986089/1"}}},"commit":{"parents":[{"commit":"a4cfcd869642fbc7e6fda68bffabfeb5cd1098b1","subject":"Merge \"timestamps: add NormalTimestamp for ShardRanges\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a4cfcd869642fbc7e6fda68bffabfeb5cd1098b1"}]}],"author":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-04-24 13:25:50.000000000","tz":60},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-04-24 13:25:50.000000000","tz":60},"subject":"Fix timestamp mocking","message":"Fix timestamp mocking\n\nTestContainerBroker.test_get_info_is_deleted previously mocked\nTimestamp.now() while initialising the broker. The mock value was\nintended to be used as the created_at time in\ncreate_container_info_table, but the Related-Change modified that\nmethod to use a NormalTimestamp. The test then compares the created_at\ntime to an earlier snapshot of the Timestamp iterator (\u0027start\u0027). The\ncomparison succeeds because the \u0027start\u0027 time was sampled before the\nbroker was initialised, *and was the first sample from the Timestamp\niterator* created in setUp i.e. always earlier than the actual\ninitialisation.\n\nThe test should mock NormalTimestamp.now and assert that the\ncreated_at time is equal to the mocked value.\n\nThis patch also modifies the copies of historic implementations of\ncreate_container_info_table, which are monkey patched into\nContainerBroker by some test classes. These now use\nNormalTimestamp.now(). This makes no difference to the float value and\nnormalised representation of the created_at time, but does ensure that\nthe mock_normal_timestamp_now() will provide the created_at time in\nall these alternative implementations.\n\nChange-Id: I624d392f5bfa548fb9b47a37ef686ea6916e2dcd\nRelated-Change: Idcf28c29d52a52830ff12be9c9b1235fd8d23738\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/f72807f34014fb1ea25ec42d51e90a13262686eb"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/f72807f34014fb1ea25ec42d51e90a13262686eb"}]},"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}}]}],"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":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"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":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"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":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
