)]}'
{"id":"openstack%2Fswift~991132","triplet_id":"openstack%2Fswift~master~I1d630e80242ed89efb724fc854ba13e778a01e2d","project":"openstack/swift","branch":"master","topic":"ring-history","attention_set":{"6968":{"account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"last_update":"2026-07-28 14:36:35.000000000","reason":"\u003cGERRIT_ACCOUNT_38496\u003e replied on the change","reason_account":{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"}}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I1d630e80242ed89efb724fc854ba13e778a01e2d","subject":"ring: persist history on disk and gate moves on it","status":"NEW","created":"2026-06-02 15:18:21.000000000","updated":"2026-07-31 04:49:36.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":7,"unresolved_comment_count":4,"has_review_started":true,"meta_rev_id":"fe34d1f998d1cad2a87200a29b4cdd83e95d707f","_number":991132,"virtual_id_number":991132,"owner":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"tag":"autogenerated:zuul:check","value":1,"date":"2026-07-24 12:52:41.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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"recommended":{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},"all":[{"value":1,"date":"2026-07-28 14:36:35.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},{"value":2,"date":"2026-07-31 04:49:36.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":"","value":1,"default_value":0,"optional":true},"Workflow":{"all":[{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-06-02 16:45:06.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-07-28 14:36:35.000000000","updated_by":{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},"reviewer":{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},"state":"REVIEWER"},{"updated":"2026-07-31 04:49:36.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":"6e4984193c735f00a6c5bdac8ee31c57429231db","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-06-02 15:18:21.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"5e623635f63c35b807a1593c159b52e8b49a092e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-02 16:45:06.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6a51f7c2c7df463ab622cdb78798c956\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/eda41870e8934ad79c7bf2cc7cde29ef : SUCCESS in 12m 25s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/aa2df48816d548f6aeff773854572165 : SUCCESS in 9m 44s\n- grenade https://zuul.opendev.org/t/openstack/build/dcba2e524bc54719b2108d0ace76d472 : SUCCESS in 1h 07m 04s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/95f4e222a1c34b728d514bfb0fe0f46d : SUCCESS in 57m 48s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/fc94fb4b88854b1a9b4be4ad0c1056ac : SUCCESS in 57m 27s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/67fb6ef1c3a3489b9a64bf9cded934fb : SUCCESS in 1h 08m 07s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/7b080fa8bdd541db842b5667142c9165 : SUCCESS in 21m 50s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/07fea876f4dd44ca86176f4af1cab3e5 : SUCCESS in 17m 50s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f9746333591b44358d10bc473bc44ffe : SUCCESS in 18m 44s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/b3548ab5b2bd4a22bbffbb23c7218091 : SUCCESS in 7m 20s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/c8b334848179488796264a40e47e2826 : SUCCESS in 14m 04s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/5efc25e236dc470384b1a716f68b1d66 : SUCCESS in 22m 58s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/c25e0ddcf632468cbdf1161656fd8aba : SUCCESS in 33m 26s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/44b5b5615c7e4eeba0b933c275c06b52 : SUCCESS in 15m 43s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/fc5264ac2c9f4f53926806646332868f : SUCCESS in 9m 55s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/c25997a117ab422cb1f2cfb2154acbbb : SUCCESS in 13m 36s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/15bdc89373fc4911a50940cc40dd5e67 : SUCCESS in 16m 56s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/be2945738a934f3bab107dee6f538546 : SUCCESS in 6m 46s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/cca7668d7a15430e8288961fafb0b4e7 : SUCCESS in 19m 37s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/adf874889d1f48c4804bb4fbea5e4fe7 : SUCCESS in 9m 06s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/dd43a7963e1b4679a328d8228e9bb479 : SUCCESS in 43m 28s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/8b26740b0f1e42989347493f4efb30ac : SUCCESS in 24m 04s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/11a2123fa6624e78a703ff9d0b1c94d2 : SUCCESS in 47m 47s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/96f93e82ac104163ac8b38c79219c36e : SUCCESS in 32m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/2cc4164851654b31a3d69c6eecb27b73 : SUCCESS in 4m 34s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/42224d9b07254a548a42cee60f9f0731 : SUCCESS in 19m 51s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/14419c2ed44d4fafbe9db521cc1f1c27 : SUCCESS in 1h 05m 00s","accounts_in_message":[],"_revision_number":1},{"id":"94a49de80d48a0f81028011a69cc4b709fd1ee08","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-02 20:14:56.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/5d969a87695e455ab1a645f2eaf8de89\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/2f7689ce39674b148bdce102f937c74c : SUCCESS in 52m 07s","accounts_in_message":[],"_revision_number":1},{"id":"4c127dbc3414cbad0c23d11e648d9b783037bd75","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-06-27 07:32:24.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"de2648355fce4cbc7aedd614d5530ce9c8c5d320","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-27 08:27:48.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/895f3670657848e28ad6b21a84ddc26a\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/229cab9603724d2492f9a0d85ea63e12 : SUCCESS in 52m 40s","accounts_in_message":[],"_revision_number":2},{"id":"2aefc99af38e2a91baaee4e9d321f59943d864db","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-27 09:21:09.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/996b60063d12455d8e4cb74d242078da\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c0bd16c4eb0e4b7792c5ee27591db4fa : SUCCESS in 10m 08s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/167d730ca9a64b169ec8b3f34eb9377b : SUCCESS in 8m 45s\n- grenade https://zuul.opendev.org/t/openstack/build/aa760139d19c482e9dbf9f044a6cc3e1 : SUCCESS in 1h 02m 01s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/0406ad033f31460ea6c507ce7558fd7e : SUCCESS in 1h 07m 22s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/582d97db06a14863a0eb37f4c12b045f : SUCCESS in 56m 54s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/8642fc7b4aaf4018bc6dd5fdd4fb5335 : SUCCESS in 1h 04m 43s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/869fc48ed55343d7b20ca8caf6ffff44 : SUCCESS in 19m 41s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/bdcb8c3beea44eaba7f3362020838f80 : SUCCESS in 20m 38s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/6fbc564f3ff14ef79b666df233c191b8 : SUCCESS in 22m 05s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/0c8d9790de6e41b8af22f3a8ab830fc1 : SUCCESS in 6m 12s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/a1cc4f64142c408bbec541693e2390a5 : SUCCESS in 24m 25s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/bf8fabbdbe914a82aadebce5799edab1 : SUCCESS in 22m 31s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/4579cfeac62b414a8f1693a251b3850b : SUCCESS in 34m 31s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/3f2ee51b17874ef0b3ae80b7ec124904 : SUCCESS in 20m 44s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/7bf439c493bb450b976e61da69bb9543 : SUCCESS in 15m 23s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/c862d6f63a684332b03a627781618679 : SUCCESS in 15m 18s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/9abcc42ef0524b2994f61fcc50d28844 : SUCCESS in 14m 47s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/fd9209e3f3274492b0d2cf2af83877fe : SUCCESS in 6m 31s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/b0c400fccb3546fcb31806ff1600a94a : SUCCESS in 18m 15s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/15b6761c9d004a7fbb634a7d67230b7a : SUCCESS in 8m 48s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/375891257e1a4b548e077a5ba2c6651c : SUCCESS in 1h 00m 25s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/e3e8a9dcaa72494c8e0b6564fcc91f34 : SUCCESS in 54m 32s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/de229f5125e345e49cdf7895313383e7 : SUCCESS in 22m 44s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4659d692c84e4ddd998750850138777f : SUCCESS in 29m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7dad913bfd9d42b5afab4386295c67ce : SUCCESS in 4m 06s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a2ce5596bdbc4d49bf3c2b5bbcbbe691 : TIMED_OUT in 1h 31m 25s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/aec122ef46d542298d2fb287a29c1ecb : SUCCESS in 41m 14s\n\nWarning:\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/docker-image/run.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/buildset-registry/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .local/share/containers/cache/blob-info-cache-v1.sqlite found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .local/share/containers/cache/blob-info-cache-v1.sqlite found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .local/share/containers/cache/blob-info-cache-v1.sqlite found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":2},{"id":"bc9e0e8586ab7101db54ff651b2b96ef21bd2159","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-06-27 09:24:45.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"722c25582963bf60737036018f6abb67362d6107","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-27 10:03:38.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/373402edf93f4f0bb4c0c8dbd10f74c5\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/ecb4f670ea5d40a7a24d262b6d900246 : SUCCESS in 36m 47s","accounts_in_message":[],"_revision_number":2},{"id":"fc7b0f4ba2f6546547b8126c39fe3a80c6025201","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-06-27 10:35:53.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/0c8c4fd27a3e4df0a44915fa544230ad\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/20dfc7726b3e44b1ab724b066221bdcb : SUCCESS in 8m 26s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/4c5a17d5633242f4a684a8bac8f3aa5b : SUCCESS in 7m 52s\n- grenade https://zuul.opendev.org/t/openstack/build/014cfd9f213e44f381e5a7307be9a613 : SUCCESS in 1h 00m 54s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/be4a73dce924412a8ee20267258292a8 : SUCCESS in 1h 03m 03s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/c57ec7fd05894535aebe37045fa05fec : SUCCESS in 56m 18s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/5c21d02a789c412db99774e7d5fc58de : SUCCESS in 1h 10m 27s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/749ad6e1820244af8f2ea40f8910c450 : SUCCESS in 18m 47s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ab8e01981fbf4e8c9efc56494f4d8cfb : SUCCESS in 19m 36s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/99f24f88b87d4c2bace46906213cc484 : SUCCESS in 19m 20s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/96064c359da84a798edfad1b0f614f2e : SUCCESS in 5m 21s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/4b96ea96b93a41d8833fd4ce4cf2439f : SUCCESS in 24m 06s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/1762bfd016b44ab7b32554e506fd8eae : SUCCESS in 17m 40s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/27041bedac1745cd9a78d61f73248ad0 : SUCCESS in 13m 25s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/9c99b42657dc4900950d84595cf40d42 : SUCCESS in 10m 58s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/a8837b92b61145cdaa168f5057802a2b : SUCCESS in 15m 29s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/cac4ef38176842d4b7b5206d2ad20334 : SUCCESS in 8m 20s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/8cfbe89945844ac99d96624db5263ee5 : SUCCESS in 8m 13s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/fee4130718164d358f7ce75b731b8ad3 : SUCCESS in 3m 40s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/e438d5202bbf4435a73da6aae3db4b79 : SUCCESS in 9m 03s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/8a8e24cde882473183fc6df2efc0399b : SUCCESS in 10m 57s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/75718abe59744c1b9cb847b12aba940e : SUCCESS in 38m 34s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/f76d7a9ad0e54a2390d4c6cac59f4633 : SUCCESS in 58m 23s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/ed8feedcb1a5493fa37c159fe62b27d9 : SUCCESS in 58m 02s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/dd4e062c62d143588ed4768997ac54ca : SUCCESS in 26m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/f00e6562aa694b52b8c72f74444dffae : SUCCESS in 3m 47s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2b3d2b21e108471db936ea16e71a741b : SUCCESS in 27m 00s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/54e95701bdbe4947b6a92ec764fcf29f : SUCCESS in 55m 58s\n\nWarning:\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/docker-image/run.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/buildset-registry/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .local/share/containers/cache/blob-info-cache-v1.sqlite found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .local/share/containers/cache/blob-info-cache-v1.sqlite found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .local/share/containers/cache/blob-info-cache-v1.sqlite found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":2},{"id":"d5cf4a73ab5020a95bedba9878f30a589dab9e8d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-07-24 11:29:00.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"6b2a0c3ebef3d6299b31e5bae8c6cfa44348e798","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 12:52:41.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a1172ec981164cd5a232848f21519878\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5eef06416bf64986bb201457ba1f5b13 : SUCCESS in 12m 09s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/ea12647434384dc29e90db00af433463 : SUCCESS in 5m 07s\n- grenade https://zuul.opendev.org/t/openstack/build/a0af040273e5421aaed36a6c0c5e20e3 : SUCCESS in 1h 09m 05s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/5e0b0e6783614920b074415f85327a02 : SUCCESS in 32m 49s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/3033e54954aa414db3d45109fe0b7573 : SUCCESS in 52m 11s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/02a5e2043a424a54b716cc0297114815 : SUCCESS in 1h 05m 30s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/8936c1cf68b44da182285efaa809a4c3 : SUCCESS in 17m 38s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/73d4292bd4cd4faaafef2d2d58bf3c2d : SUCCESS in 19m 24s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f66b15134a7d47e48966824687e0627d : SUCCESS in 11m 13s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/3a866409947542c3b1385ea6c49414ae : SUCCESS in 6m 56s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/5bf2613c24a346619eb5955c8ff982a9 : SUCCESS in 11m 31s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/11d8b7781a29440380341a8e5151f2a4 : SUCCESS in 24m 53s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/215a862799564737a62993b36fa0691e : SUCCESS in 30m 17s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/64457e3d9a914939afed771b1c6d5a2b : SUCCESS in 21m 07s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/f8c6f51960504a3d9d4e2d3404c01c28 : SUCCESS in 10m 13s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/9b1ad29250db45e487590ff37c28434a : SUCCESS in 9m 59s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/dd682bc1405f47c49b7cdc80e11e69a5 : SUCCESS in 16m 21s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/a8ff0c5fc37845268c5b97f3cf824470 : SUCCESS in 10m 16s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/dacdf8a18ff84fbdb3c7e9b9c8115279 : SUCCESS in 9m 16s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/65fc56a5deb74e268533c47cae16b601 : FAILURE in 9m 38s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/8754a6f9755740b9a00ea284204f4a5c : SUCCESS in 6m 28s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/8294e2cc951c4799b3a52cdb7cd91d4a : SUCCESS in 37m 08s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/2567707fccaf4365ac4ca5b0c671abba : SUCCESS in 23m 56s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/f2436242c1784284b1b3118c6d86467d : SUCCESS in 36m 04s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/f69bfb6d94224ad384ab4f7b9a3bb1e3 : SUCCESS in 28m 25s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/536ed9cf3ae444328f947266bb176062 : SUCCESS in 6m 03s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/ca3eed5de56946b89e4b5fda98939c0b : SUCCESS in 19m 08s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/1531c9253fa64a59b166b4866f514078 : SUCCESS in 25m 46s\n\nWarning:\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-ec-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-encryption-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/zuul/zuul-jobs/playbooks/unittests/post.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .ssh/known_hosts.old found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job swift-tox-func-py39-centos-9-stream-fips.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":3},{"id":"d4259c3ff11de69e35747997d02c6e763f561277","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 13:07:38.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c7d610118b40412e97229f64cd0b193e\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/78c06fe49a1d453a973e6fa219470fd0 : SUCCESS in 59m 14s","accounts_in_message":[],"_revision_number":3},{"id":"74647f3b5f1a322df7268ed3c8e0cf28afd363fe","author":{"_account_id":38496,"name":"Andressa Cabistani","display_name":"Andressa","email":"acabistani@gmail.com","username":"andressadotpy","status":"I\u0027m a Software Engineer at Red Hat and I love Open Source and connect with people! Feel free to DM through IRC, I\u0027ll be delighted to chat"},"date":"2026-07-28 14:36:35.000000000","message":"Patch Set 3: Code-Review+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"fe34d1f998d1cad2a87200a29b4cdd83e95d707f","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2026-07-31 04:49:36.000000000","message":"Patch Set 3: Code-Review+2\n\n(5 comments)","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"62d27807a7de63dafb6796c43c2009741ab252ca","revisions":{"05033af841b3e5f6e987c0304d283ba6d642c625":{"kind":"REWORK","_number":1,"created":"2026-06-02 15:18:21.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/32/991132/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/32/991132/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/32/991132/1"}}},"commit":{"parents":[{"commit":"c21f19f4a35c3d0573a23e68cca68627884ac28f","subject":"ring: maintain history across rebalance passes","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c21f19f4a35c3d0573a23e68cca68627884ac28f"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-06-02 10:53:58.000000000","tz":0},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-06-02 15:17:55.000000000","tz":120},"subject":"ring: persist history on disk and gate moves on it","message":"ring: persist history on disk and gate moves on it\n\nAdd a swift/ring/history v2 section so the history table reaches\nconsumers via ring.gz; old rings without the section load with history\nNone. Expose Ring.get_part_tiers and Ring.get_part_old_nodes, and fold\na live-history check into _can_part_move so a partition cannot move\nwhile any replica row still holds live history. The gate uses a strict\nage \u003c max_history_cycles boundary, so a cell that ages out in the same\npass releases the gate; max_history_cycles\u003d1 keeps today\u0027s\nsingle-cycle cadence.\n\nChange-Id: I1d630e80242ed89efb724fc854ba13e778a01e2d\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\nCo-Authored-By: Claude Opus 4.8 \u003cnoreply@anthropic.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/05033af841b3e5f6e987c0304d283ba6d642c625"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/05033af841b3e5f6e987c0304d283ba6d642c625"}]},"branch":"refs/heads/master"},"dcdd97de28ab153eb5f436386e96c0c138f5fa22":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-06-27 07:32:24.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/32/991132/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/32/991132/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/32/991132/2"}}},"commit":{"parents":[{"commit":"2a9336b19cfa92827af1b7ab8c8af9e663772198","subject":"ring: maintain history across rebalance passes","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/2a9336b19cfa92827af1b7ab8c8af9e663772198"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-06-02 10:53:58.000000000","tz":0},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-06-27 07:31:51.000000000","tz":120},"subject":"ring: persist history on disk and gate moves on it","message":"ring: persist history on disk and gate moves on it\n\nAdd a swift/ring/history v2 section so the history table reaches\nconsumers via ring.gz; old rings without the section load with history\nNone. Expose Ring.get_part_tiers and Ring.get_part_old_nodes, and fold\na live-history check into _can_part_move so a partition cannot move\nwhile any replica row still holds live history. The gate uses a strict\nage \u003c max_history_cycles boundary, so a cell that ages out in the same\npass releases the gate; max_history_cycles\u003d1 keeps today\u0027s\nsingle-cycle cadence.\n\nChange-Id: I1d630e80242ed89efb724fc854ba13e778a01e2d\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\nCo-Authored-By: Claude Opus 4.8 \u003cnoreply@anthropic.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dcdd97de28ab153eb5f436386e96c0c138f5fa22"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/dcdd97de28ab153eb5f436386e96c0c138f5fa22"}]},"branch":"refs/heads/master"},"62d27807a7de63dafb6796c43c2009741ab252ca":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2026-07-24 11:29:00.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/32/991132/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/32/991132/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/32/991132/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/32/991132/3"}}},"commit":{"parents":[{"commit":"f695fee2906c42a498ee34b595dda3caf83ab705","subject":"ring: maintain history across rebalance passes","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/f695fee2906c42a498ee34b595dda3caf83ab705"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-06-02 10:53:58.000000000","tz":0},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-07-24 11:28:46.000000000","tz":120},"subject":"ring: persist history on disk and gate moves on it","message":"ring: persist history on disk and gate moves on it\n\nAdd a swift/ring/history v2 section so the history table reaches\nconsumers via ring.gz; old rings without the section load with history\nNone. Expose Ring.get_part_tiers and Ring.get_part_old_nodes, and fold\na live-history check into _can_part_move so a partition cannot move\nwhile any replica row still holds live history. The gate uses a strict\nage \u003c max_history_cycles boundary, so a cell that ages out in the same\npass releases the gate; max_history_cycles\u003d1 keeps today\u0027s\nsingle-cycle cadence.\n\nChange-Id: I1d630e80242ed89efb724fc854ba13e778a01e2d\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\nCo-Authored-By: Claude Opus 4.8 \u003cnoreply@anthropic.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/62d27807a7de63dafb6796c43c2009741ab252ca"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/62d27807a7de63dafb6796c43c2009741ab252ca"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"}},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","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":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
