)]}'
{"id":"openstack%2Fswift~1003424","triplet_id":"openstack%2Fswift~master~If9d53f4f1e548dc735813ed9adbc33088037272c","project":"openstack/swift","branch":"master","topic":"s3-checksum-persistence","attention_set":{"6968":{"account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"last_update":"2026-09-09 16:49:28.000000000","reason":"A robot voted negatively on a label"},"39146":{"account":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"last_update":"2026-09-02 23:09:40.000000000","reason":"Vote got outdated and was removed: Code-Review+1"},"1179":{"account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"last_update":"2026-09-08 10:30:09.000000000","reason":"Vote got outdated and was removed: Code-Review+2"},"15343":{"account":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"last_update":"2026-09-17 04:12:14.000000000","reason":"\u003cGERRIT_ACCOUNT_34930\u003e replied on the change","reason_account":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"}}},"removed_from_attention_set":{"34930":{"account":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"last_update":"2026-09-30 21:31:15.000000000","reason":"\u003cGERRIT_ACCOUNT_34930\u003e replied on the change","reason_account":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"}},"7847":{"account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"last_update":"2026-09-17 09:03:04.000000000","reason":"\u003cGERRIT_ACCOUNT_7847\u003e replied on the change","reason_account":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"}}},"hashtags":[],"change_id":"If9d53f4f1e548dc735813ed9adbc33088037272c","subject":"crypto: Encrypt object sysmeta registered as sensitive","status":"NEW","created":"2026-09-02 09:53:25.000000000","updated":"2026-09-30 21:31:15.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":98,"unresolved_comment_count":29,"has_review_started":true,"meta_rev_id":"80d1088def11c2dcb1adbb823ddf516b5550d1f4","_number":1003424,"virtual_id_number":1003424,"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":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"tag":"autogenerated:zuul:check","value":1,"date":"2026-09-30 05:21:58.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_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":"","value":1,"default_value":0,"optional":true},"Code-Review":{"recommended":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"all":[{"value":1,"date":"2026-09-30 21:31:15.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"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":"","value":1,"default_value":0,"optional":true},"Workflow":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"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":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-09-02 12:15:37.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-09-02 12:28:46.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-09-02 15:44:31.000000000","updated_by":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"reviewer":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"state":"CC"},{"updated":"2026-09-02 15:44:36.000000000","updated_by":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"reviewer":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"state":"REVIEWER"},{"updated":"2026-09-02 15:53:06.000000000","updated_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"reviewer":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"state":"CC"},{"updated":"2026-09-02 15:53:06.000000000","updated_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"reviewer":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"state":"CC"},{"updated":"2026-09-02 23:11:25.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-09-04 20:09:58.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"},{"updated":"2026-09-07 18:23:44.000000000","updated_by":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"reviewer":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"state":"CC"},{"updated":"2026-09-08 17:53:39.000000000","updated_by":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"reviewer":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"state":"REVIEWER"},{"updated":"2026-09-14 04:46:54.000000000","updated_by":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"reviewer":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"state":"REVIEWER"}],"messages":[{"id":"2bfd708384a79fc1f911b19d95ba7b61ac99b20d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-02 09:53:25.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"412a2a7a01499dc145859126535a14a049e7593d","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-02 10:13:38.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"6a836a3f8912fc14265d2cb6e8a06777a9489b58","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-02 10:40:43.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"cd10c6141d4eba4ee274939e0ab4dcee1ef4c9a2","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-02 11:13:40.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"875381e4f0619d3209d48d76ac6d50c47a824dc4","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 12:15:37.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/16a6a34177764834a729dcdf09ef822a\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/cc601646925241e9be55de4f4ff5800d : SUCCESS in 59m 35s","accounts_in_message":[],"_revision_number":4},{"id":"40381072e159c81ae4e0006fb47f93a41325dc3b","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 12:28:46.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e067082315754069a931619d9324610c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/da288985861a464d963ed79dfed5acde : SUCCESS in 10m 31s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/6f894487daa34e9f837cbbf2a53cae53 : SUCCESS in 10m 12s\n- grenade https://zuul.opendev.org/t/openstack/build/b7eeba335ce1401d87eb2c2e6c935733 : SUCCESS in 1h 06m 01s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/8f1f45986ef547afa418a72bb08126aa : SUCCESS in 30m 55s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/d2333ca5328d45519035d9c801e86677 : SUCCESS in 49m 36s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/a5e5241909cb486fa721e20b0e28c29c : SUCCESS in 1h 05m 16s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f93145da2b7c4980a89367489a5435ac : SUCCESS in 13m 19s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/9c5b82adb4094cad9255990740c339c6 : SUCCESS in 11m 24s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f3d799ef165d49b888aafcd39a4e904c : SUCCESS in 18m 14s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/01dc4a2756b64473b81f345ee1a399da : SUCCESS in 7m 07s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/c19dd9e1cb8b4d92bb63e539cf596b3f : SUCCESS in 27m 12s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/66a3dd501af8414f8af20704497e6635 : SUCCESS in 23m 44s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/030ba367887148838683441f9b560643 : SUCCESS in 36m 10s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/6b572c92003e4d8db55985697994905c : SUCCESS in 20m 46s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/075c5e021add4d70b00c858b660e893c : SUCCESS in 13m 33s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/f14774f12133426c9fb6f95131640b32 : SUCCESS in 15m 03s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/1f5813cf9e3a464bb5d1ab98007bfa49 : SUCCESS in 17m 37s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/f5be599e9a59433f9e60c7fc2fe7ea5c : SUCCESS in 15m 15s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/3d59a91fa3bc4d9fa4398c07c3dbb2fb : SUCCESS in 6m 45s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/42eaea6d2a694b5393363fd8e96856aa : FAILURE in 19m 06s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/b8d0093b4a0345f1b4291ca7fc986f2c : SUCCESS in 8m 46s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/aa34a5c9f1914a0590bd0954e7592cac : SUCCESS in 56m 25s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/73a28c571a024b17a2fd613ec8547c2e : SUCCESS in 53m 59s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/2108c1de1ff444b3b8e3b8ff4f68e53e : SUCCESS in 56m 01s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/8c7e79b8dd9f45a69b47cc849668b26d : SUCCESS in 15m 09s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/bdc8e67ba2b84d9fb115d111751d5eca : SUCCESS in 4m 17s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/290e93ad8f224b0b8c0d268a60ce7f26 : SUCCESS in 19m 24s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/ed6895eea0924b4e9c582864c643d784 : SUCCESS in 1h 01m 35s\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-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.\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-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.","accounts_in_message":[],"_revision_number":4},{"id":"af5c6e609b78c68fc3a0bc1c2c4eea0ff69ca8e9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-02 13:31:01.000000000","message":"Uploaded patch set 5.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":5},{"id":"80fbebb13ceb526280d99828bfc689fe8fa5963c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 14:55:15.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/bfb978e7f8b34861b58ed5505a727d42\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8d814917477243d4b07c82afc5b6cc6f : SUCCESS in 11m 28s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/992d9c14fd8a425e8a6ac66c6ebb6d90 : SUCCESS in 7m 16s\n- grenade https://zuul.opendev.org/t/openstack/build/594e4e6e7a5b410d9f7f2427e2b23cff : SUCCESS in 1h 03m 37s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/04f75d86fcc34486ad0a045e7d88850e : SUCCESS in 34m 26s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/4623d46c535646ecbddfc485d8ceb1c9 : SUCCESS in 55m 30s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/cce2dec12abc43a28565d7b256066709 : SUCCESS in 1h 04m 19s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/e04e1ee50a0042b9b5b42412813862f6 : SUCCESS in 19m 24s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/2bfa8daab5d747b1a78419b691e23914 : SUCCESS in 20m 54s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/1e5586ac46e8439b8b80fe87f7b65842 : SUCCESS in 23m 38s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/cb142e30dc2346a3bfd92d763164709c : SUCCESS in 9m 58s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/174f4668bf7a402cbcea48496ee52c80 : SUCCESS in 21m 19s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/95d9b06f13704ed9b7b6e5fbc0a14636 : SUCCESS in 21m 16s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/e09f7a7d4b91456a993ccde7a3e2ce0c : SUCCESS in 16m 01s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/18feb5e4f371437d86c6347832a19d03 : SUCCESS in 10m 07s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/9f75093c3ac943b09c0c6481e6dfca7e : SUCCESS in 10m 03s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/da2da473b3e74042b13423c0b5a38f3d : SUCCESS in 16m 26s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/4cf8774b60204b9fa145aab6868f358a : SUCCESS in 16m 51s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/d6b0227b6ef14edda57e42e8da1cd940 : SUCCESS in 18m 21s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/9ae3cba510fc418e921a485022ff752a : SUCCESS in 7m 24s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/3c46307dfd2d4f3fb7422350e47ae8a6 : FAILURE in 27m 12s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/a4690605dee3485d97d57bcce5322ce9 : SUCCESS in 9m 20s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/eff48cbd681c4255b4b4aefe70d92b93 : SUCCESS in 1h 07m 23s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/b5541635e9ab4025886ab422d848c193 : SUCCESS in 59m 18s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/5018f8fb90da4f3cb9f649f912881f3d : SUCCESS in 56m 54s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/665c5bc3b9ac4bc6bb738ef6ddc73aef : SUCCESS in 30m 43s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8c6e624a39ba4ebebc118329094c1d21 : SUCCESS in 2m 57s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/9b47fe82a24b415eb6263e7ee1c803a3 : SUCCESS in 21m 16s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/8097405e84b44c1a809215c8091892d1 : SUCCESS in 40m 07s\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-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-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-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":5},{"id":"433fcc3b7dc0ac8d6df5a7855ccbac94bd787cdc","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-02 14:56:28.000000000","message":"Patch Set 5:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3bca0eefdc4743bfb47dbbddf1b772f6\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/73e516e2427e408e93f3c6c785ea82b8 : SUCCESS in 34m 59s","accounts_in_message":[],"_revision_number":5},{"id":"01dfecce2526e1d9b91e53127752be3e16b539f7","author":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"date":"2026-09-02 15:44:31.000000000","message":"Patch Set 5:\n\n(2 comments)","accounts_in_message":[],"_revision_number":5},{"id":"cc0cd982ba7d218b29b05d06f328bc4fdc633508","author":{"_account_id":39146,"name":"Nathaniel Martes","display_name":"Nate Martes","email":"natemartes09@gmail.com","username":"nmartes"},"date":"2026-09-02 15:44:36.000000000","message":"Patch Set 5: Code-Review+1","accounts_in_message":[],"_revision_number":5},{"id":"f4807561753d81d366859a66c97a10a95d2caffc","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-09-02 23:09:40.000000000","message":"Patch Set 6: Commit message was updated.\n\nOutdated Votes:\n* Code-Review+1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":6},{"id":"cc4d0fe8e33aefbef04559d084037ced5944d65d","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-09-02 23:11:25.000000000","message":"Patch Set 6: Code-Review+2\n\n(6 comments)","accounts_in_message":[],"_revision_number":6},{"id":"bf280af4892693b90f95bb1dd925433a562c7830","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-03 00:12:25.000000000","message":"Patch Set 6:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/72e48a3fd962466a9833ac1ad1d4aa7f\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/3bb3168201b94d96ab43e0e84fa3da52 : SUCCESS in 1h 00m 04s","accounts_in_message":[],"_revision_number":6},{"id":"99988a536420a73c3bf970afd52c70c62b4cd074","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-03 00:54:38.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/440b1911b83541c080ce9c31bd949183\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3d680cff87014a92aae7b552421c4d01 : SUCCESS in 11m 36s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/972c82c699ea44f0b5b544b5fb462738 : SUCCESS in 9m 10s\n- grenade https://zuul.opendev.org/t/openstack/build/587c8ae4c7b3402dadb9bfaed38a75b7 : SUCCESS in 49m 37s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/18080e1dd06e4c35a219a1afcd2befca : SUCCESS in 1h 10m 25s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/aeed31a5bc444994bd3abf5ff992d6df : SUCCESS in 57m 12s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/d77d3f22954f44659bb48e2d38b27978 : SUCCESS in 1h 06m 16s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/b639db2393c741f4882784a1eb039cc6 : SUCCESS in 21m 21s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/9b51b0abbde6472e9844142b31113eec : SUCCESS in 21m 43s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/d709a3f8b3af46efbb5753f85150a39c : SUCCESS in 10m 51s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/dd7fbbccfb6e45dd9e9534feadfd3c87 : SUCCESS in 5m 31s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/fa568c71903d463286fc3e561b2d2602 : SUCCESS in 27m 31s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/73463f4119dc4d1ea0ae74177cde5102 : SUCCESS in 10m 29s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/77d9827b8339437fa7a06604f17b8ee8 : SUCCESS in 20m 54s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/c6ed958e5be34fab9cdabd19a81faeb6 : SUCCESS in 20m 26s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/7e2276b030f64c3e9302f7b530e79e32 : SUCCESS in 14m 50s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/5fc9ab79186b45d4846b493b018f4d18 : SUCCESS in 11m 29s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/ac6c8f956b68403ebb8aaada34d29315 : SUCCESS in 8m 12s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/4c7d7492e9cf4a0faa08cbe15a57911e : SUCCESS in 17m 54s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/d2284b47f36c4ff9bde0ab880ba3aea5 : SUCCESS in 6m 12s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/6ec4a3ef322a41e9996ab3aa6bc1c2ac : FAILURE in 17m 23s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/abe9b06e47a34bfd884c4a822f1bd02b : SUCCESS in 9m 52s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/d9e54d336b48417dba25debf188cca2a : SUCCESS in 48m 38s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/0778cee96b5d4cf087a2234575054c3d : SUCCESS in 51m 22s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/c88caa27b420417faeae40076cc23823 : SUCCESS in 57m 38s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b76e2628382c420da4ab017f1f05bff4 : SUCCESS in 18m 41s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1aef3c812d7d4fd8bf0f73021c37df26 : SUCCESS in 4m 14s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/f9a6a8ba4f6a483dae27e5ebd1938db5 : SUCCESS in 18m 45s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/6eb7f2c701464ef68d97dd170a5689eb : SUCCESS in 29m 31s\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-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.\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.","accounts_in_message":[],"_revision_number":6},{"id":"78b5f029a9e799af1a02fe1ae9ccf99f90e86ea3","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-03 05:43:24.000000000","message":"Patch Set 6:\n\n(3 comments)","accounts_in_message":[],"_revision_number":6},{"id":"091f2d3a752166e4db10fc3ebc9fea4fab8ba3e0","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-09-04 20:09:58.000000000","message":"Patch Set 6: Code-Review+1\n\n(9 comments)","accounts_in_message":[],"_revision_number":6},{"id":"f28af65d7b1dc107ea28a1d23062afb4ac37def4","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-07 18:23:44.000000000","message":"Patch Set 6:\n\n(18 comments)","accounts_in_message":[],"_revision_number":6},{"id":"fe29e52c04aee4a0645c4897674224216506a216","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-08 08:22:41.000000000","message":"Patch Set 6:\n\n(3 comments)","accounts_in_message":[],"_revision_number":6},{"id":"fa235b5a695383c6e657ba313ae673b2dee98e48","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 10:30:09.000000000","message":"Uploaded patch set 7.\n\nOutdated Votes:\n* Code-Review+1, Code-Review+2 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":7},{"id":"aa55388c00b07b961088e46b3b58e7514a9c8218","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 10:36:31.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"577c050f3bdfc5616ae513f671bdd9ebfc98d629","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 10:40:38.000000000","message":"Uploaded patch set 9.","accounts_in_message":[],"_revision_number":9},{"id":"f1a8770ede377e45ea5c99c14a98b31528b37ecc","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 10:42:37.000000000","message":"Patch Set 9:\n\n(6 comments)","accounts_in_message":[],"_revision_number":9},{"id":"097a6a16ae6faee65392577de7dd287eeaac84f4","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-08 11:39:12.000000000","message":"Patch Set 9:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/50dfc13e8f50403a99acfbbbdb5d162f\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/3f068703d673457f9372a6cf01d1dedf : SUCCESS in 57m 00s","accounts_in_message":[],"_revision_number":9},{"id":"8724a10fe1c6c5b81d6590e5053e3ae9a9588c06","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-08 11:50:31.000000000","message":"Patch Set 9: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c6e6f75ffc7141e98179ff77d37c9212\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/10a4f2aa552946be84a8769ec30b1473 : SUCCESS in 10m 26s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/c165e0613966460c8ff93f26125e834d : SUCCESS in 7m 23s\n- grenade https://zuul.opendev.org/t/openstack/build/8705e1bedada404dae1575eafb0a680b : SUCCESS in 1h 07m 18s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/8f6934067c0e4a109d0b6f4876f2b389 : SUCCESS in 1h 05m 49s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/b7dccfa0b45e45f5b1064fad091f5bd4 : SUCCESS in 57m 49s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/eec4b170f9c14cc4bfbc4fa5df47c7fc : SUCCESS in 40m 30s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/b6bea3c0a04f44a39eaaf6fd553d94ba : SUCCESS in 15m 48s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/cab460a1825e4edab1e907ea995ee45f : SUCCESS in 15m 40s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/927d538ec0a7475c9a4ffd9de88ec81f : SUCCESS in 20m 48s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/2cb0d9f1847f4f01aa44493e3fd1f5ef : SUCCESS in 5m 48s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/42373f9c4e9749619399c80677a16b1c : SUCCESS in 11m 44s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/34c76ebd609744258e751261ed766bfe : SUCCESS in 10m 33s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/5dc64762d9684f8fa69396a37d93d3e7 : SUCCESS in 32m 57s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/67e51302192545fd87e01b33cf27ceb9 : SUCCESS in 21m 56s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/f1ac13835df2471a91e13ae00437030c : SUCCESS in 9m 01s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/16f7d815fe2f4dbfafa90300f0606d6e : SUCCESS in 16m 02s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/5aa2df5697dc4c48a643e30ff48570ec : SUCCESS in 9m 32s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/5cabf887851145409f42b8c5862f4eae : SUCCESS in 18m 17s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/47dbf527489b46a9b53256e779afafce : SUCCESS in 5m 46s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/2bd3bb63f348471da7a7bfc218c821b1 : FAILURE in 31m 08s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/0fa88e2290a24b6d916d78f8b4a9b966 : SUCCESS in 5m 24s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/58f1c39f9cb848d29479f39fd7a92e7a : SUCCESS in 40m 01s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/8a2a11145a0e4309b1be9ae8c2f5d7fa : SUCCESS in 57m 20s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/cb9bc0d46e754ff7b828c055d166a608 : SUCCESS in 52m 05s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b10509770a9d4d37949072c116eccdd5 : SUCCESS in 13m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c23e477406594e258fe71b374c50f49b : SUCCESS in 4m 22s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/f6fad3d8cecb4d9ab07979c43821addf : SUCCESS in 25m 50s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/1a55996c79d24277b8153c53aff11183 : SUCCESS in 36m 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-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.\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.","accounts_in_message":[],"_revision_number":9},{"id":"8c3991f5110ead926e05796006a39343cdc3f3c1","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 12:56:21.000000000","message":"Uploaded patch set 10.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":10},{"id":"a4a0463fd318d12ff2b23d2f405d4da2a4d2e020","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 13:20:09.000000000","message":"Uploaded patch set 11.","accounts_in_message":[],"_revision_number":11},{"id":"7ea7a641cea9d070c75d6fd02e609fb300478481","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-08 13:20:44.000000000","message":"Patch Set 10:\n\n(5 comments)","accounts_in_message":[],"_revision_number":10},{"id":"c741bb42582e4e867d470aaebaef0055bc725781","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-08 14:14:11.000000000","message":"Patch Set 11:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f9b3d89203374ab5bbee6bd3291d9a11\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/3df9540b64814647a1dde92cc1578404 : SUCCESS in 52m 09s","accounts_in_message":[],"_revision_number":11},{"id":"a6116e1702afe256a7133bc5eceec9b723b54fde","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-08 14:31:25.000000000","message":"Patch Set 11: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e756e1e2887048069af1830ffef1e010\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d493d1e517b84592bbfa33c54c55d725 : SUCCESS in 10m 56s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e5d1b54c0aa74199bd8aafbd955cfeca : SUCCESS in 3m 47s\n- grenade https://zuul.opendev.org/t/openstack/build/8af75c88ac1c4e09ba9133e6dc22933d : SUCCESS in 43m 39s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/e4cbb55d259d44e3bbfe66a0f2519a1e : SUCCESS in 1h 00m 20s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/fa9122a61fee404a920849ebe20ca675 : SUCCESS in 35m 01s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/56daa668481f470d93ffb3ff6e48f052 : SUCCESS in 1h 00m 12s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/91c098f7936b4f2982dc6e01f9a7eb84 : SUCCESS in 20m 00s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/efad4997be9249c2bddec231221d5096 : SUCCESS in 20m 20s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/47a9b8a1b0e54105becfeb34dc3825c2 : SUCCESS in 11m 05s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/4311e647dd25430f9777fcd5b3db5295 : SUCCESS in 5m 39s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e5d42dde8848499cac8aa7ca3a598b01 : SUCCESS in 25m 04s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/7261b23a33f44017906fd896dc4b0a61 : SUCCESS in 22m 08s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/6edc050b162f405a9857e4d0a3cbe065 : SUCCESS in 14m 35s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/9f37b51476a04d82ba107bd3fc977a7e : SUCCESS in 10m 38s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/6aa1b740a23d47149bbb7e80cbf6c5e1 : SUCCESS in 9m 01s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/77c6dc6d7a084b4d92b9ea534fb7cb3e : SUCCESS in 10m 40s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/bf373621028e48119946582b75f08d45 : SUCCESS in 16m 40s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/af6a43a56fd94f378cc130358385ba4a : SUCCESS in 9m 37s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/01808e3b369640a3aa8690beb9c564af : SUCCESS in 3m 39s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/42cc54cc775745ef9461181aaaa0f765 : FAILURE in 37m 17s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/a545ceecda414773a27baa3078ee01e2 : SUCCESS in 6m 26s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/948522191f6243a7ba3d177f9cdb64a6 : SUCCESS in 42m 02s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/a9e2df260f964733b2fd513464702743 : SUCCESS in 36m 25s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/d1b72b529d9d4522b56ccedb92402916 : SUCCESS in 50m 26s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/88f262810ff7484b97eae3460731110c : SUCCESS in 30m 28s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e362054d3e2e4ead9f8edf7b93178aa9 : SUCCESS in 4m 10s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/0633f5b37c96403f9f14a9cfd5d95e48 : SUCCESS in 20m 27s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/9a46258cb399408884a25d5da844c6f4 : SUCCESS in 56m 14s\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":11},{"id":"2287b5b3164335794c8ba9e90afbc0a89fce6a25","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-08 17:53:39.000000000","message":"Patch Set 11: Code-Review+1\n\n(13 comments)","accounts_in_message":[],"_revision_number":11},{"id":"675de47200ec712c735f90ed9b772a2d57541abf","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-09 08:22:06.000000000","message":"Patch Set 11:\n\n(1 comment)","accounts_in_message":[],"_revision_number":11},{"id":"6d9a3b7c4dd73a655e4210b4152b711f80971b9b","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-09 09:54:45.000000000","message":"Patch Set 11:\n\n(1 comment)","accounts_in_message":[],"_revision_number":11},{"id":"25e8d8347faddafa9beed926d8f2a344b82855a4","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-09 10:56:21.000000000","message":"Patch Set 11:\n\n(1 comment)","accounts_in_message":[],"_revision_number":11},{"id":"1d17fffec8bd7f95415430ab30a652a8ed6b379e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-09 14:59:04.000000000","message":"Uploaded patch set 12: Patch Set 11 was rebased.\n\nCopied Votes:\n* Code-Review+1 (copy condition: \"**changekind:TRIVIAL_REBASE** OR is:MIN\")\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":12},{"id":"d1c4a924f289e98800a77a37f2a2bbd29e420542","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-09 15:13:50.000000000","message":"Uploaded patch set 13.\n\nOutdated Votes:\n* Code-Review+1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n","accounts_in_message":[],"_revision_number":13},{"id":"bafe16dc28f1f41cbc0d7fcfbec0784e1416ae00","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-09 15:16:09.000000000","message":"Uploaded patch set 14.","accounts_in_message":[],"_revision_number":14},{"id":"5a91aebcac1f69ec36aad19e16372a4fe73a43b7","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-09 15:25:54.000000000","message":"Uploaded patch set 15.","accounts_in_message":[],"_revision_number":15},{"id":"b83c6a13c8d8144e63b9551b5549f361d91b3a95","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-09 16:49:28.000000000","message":"Patch Set 15: Verified-1\n\n(1 comment)\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/7c37d3949e3f40c9a9e5c8e39817bf2c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/90f8c316e8814193ae730022d7eab4a4 : SUCCESS in 12m 43s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/3c9ab0806fc142bfb0454df03e9c116b : SUCCESS in 10m 53s\n- grenade https://zuul.opendev.org/t/openstack/build/0cec0738287e40b289ab56752166618e : SUCCESS in 1h 13m 42s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/3d517ef306d247d09e91f0e0bf918696 : SUCCESS in 1h 02m 40s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/52f777e94af741cabb41d2d158896b1a : SUCCESS in 1h 06m 27s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/2ecd4576358944a0b3723fc398d9041a : SUCCESS in 49m 13s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f8b7c75db407448c9bc389c807b68c6e : SUCCESS in 21m 15s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/c2e4e94a49b34c5dbee8bd7b481cbe11 : SUCCESS in 23m 09s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/d998ecddb27146ed80424b2292ebb8f1 : SUCCESS in 22m 43s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8e85971949e142e8b06ca7dee4787c3a : SUCCESS in 8m 01s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/cc65c4e521e843c8937b305a11641e7c : SUCCESS in 35m 46s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/a7f248f95fce4741a06a8953aaed3c5c : SUCCESS in 21m 34s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/aa61f1e27db5439381d613e4036539ce : SUCCESS in 27m 03s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/95d045961a394057998e726bf52aec9c : SUCCESS in 21m 38s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/33b139cb59c14d58b1f4adec48a7437e : SUCCESS in 13m 45s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/ba55abe6e7044839aa7a60eefa56cb58 : SUCCESS in 14m 54s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/e798d0435742488d80325219dc16784a : SUCCESS in 9m 45s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/cc345c0e0fa14a3582879cdc7f8a9f9d : SUCCESS in 20m 39s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/ce6d40984744401e8f7eddee8eda8e4a : SUCCESS in 7m 20s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/1f12299647554933b25f7c27924a3934 : FAILURE in 35m 00s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/6ac80800cb904cb9971331c8903be97c : SUCCESS in 10m 43s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/2077a910520444528945ee8269f70bfc : SUCCESS in 1h 07m 20s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/d667ad1ef6ca4bc3b60d077596f1515a : SUCCESS in 56m 47s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/fa7563acd649453eaf7151f43092f42b : SUCCESS in 54m 08s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/4f25740b3a91441b971322c6965c0d43 : SUCCESS in 25m 36s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b3c0e3b60cfa4fb2a929783faeab8475 : FAILURE in 2m 58s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/805d13fe54f947e88aeeda9f4699057f : SUCCESS in 20m 39s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/01c552f7e961416291f199861f7e71ea : SUCCESS in 40m 01s\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-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.\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-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.","accounts_in_message":[],"_revision_number":15},{"id":"dbb9799e774b55c9127c2aa0da50e6f68ffe78ff","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-09 17:37:39.000000000","message":"Uploaded patch set 16.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":16},{"id":"9ddc9fcfc5911109a8f87ce15fe75fe28284fcee","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-09 18:43:16.000000000","message":"Patch Set 16: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/2991f35d7d974f4c971f8e8e67144b90\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d342516b62a14e6f87ee4eefba694116 : SUCCESS in 8m 57s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/94c66436d4eb4f00b7e21071832829c9 : SUCCESS in 8m 23s\n- grenade https://zuul.opendev.org/t/openstack/build/f1d6f6f1789f41f9ade0a9298985f3e8 : SUCCESS in 1h 04m 30s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/6ebc23971c54489798fd228d4812b6fa : SUCCESS in 44m 55s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/05bdcdb6d9204a7484f0cce8c2342cb7 : SUCCESS in 36m 57s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/56e90ab5bed646579a2229c08ae99bdc : SUCCESS in 33m 29s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/73d5fa611bed49dc9e0c7c62d790d3c2 : SUCCESS in 10m 50s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/7bf38be48ff741d0a14b6bc54dcf9499 : SUCCESS in 11m 59s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/3147d800770a4eb0a565d522105cad59 : SUCCESS in 13m 18s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/6e0c8a2db24f4665962d0bf3517677d3 : SUCCESS in 4m 57s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/871d6e4e6be048d1a5e18bba11fcc26e : SUCCESS in 13m 41s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/eadaf905efc64a819124c7e2482df18c : SUCCESS in 10m 04s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/db696677212a46a9bbfaeaf952984541 : SUCCESS in 12m 20s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/f0f39d98316042a59ac2ad6042d1ddfb : SUCCESS in 11m 39s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/97e143db3ac34fd095b2c9e05c13ce09 : SUCCESS in 10m 11s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/790796a319c949658ef7258236189c24 : SUCCESS in 15m 18s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/df2af9abe5384d4790044786067c9cd6 : SUCCESS in 11m 28s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/79284875bd2a4bf1ad95fbbccb639710 : SUCCESS in 18m 34s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/4b88537286924c0ea3a54183a8c7a01b : SUCCESS in 4m 13s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/a004c9ad774e4f30b8b6cedbe53fafa4 : FAILURE in 18m 36s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/80fb7d9b161841e4a8aa20ae3b792e72 : SUCCESS in 11m 34s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/842b9e2cf2024902bc0a034fbb84fbbe : SUCCESS in 53m 14s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/c0255d2002ea4738932489122d0cdf23 : SUCCESS in 37m 59s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/d810ee100dae4d6fb4d5a6de2466c5ec : SUCCESS in 55m 51s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/36d7254f7f9447f086ad09f0a24dc567 : SUCCESS in 27m 06s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8b84e8c7ff704fbe954e2b33c35b5279 : SUCCESS in 3m 38s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/5c311895dfc44d91a549e89207fbb907 : SUCCESS in 11m 32s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/58bc51f8624f414b809c77198d018573 : SUCCESS in 52m 59s\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-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.\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-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.","accounts_in_message":[],"_revision_number":16},{"id":"b632d168480b2e53eddbc606b031795553adee1d","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-09 19:33:19.000000000","message":"Patch Set 16:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/adb85264d686427e820559fb091c8f54\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/049aa1afde284f438c6019df4aa17471 : SUCCESS in 57m 17s","accounts_in_message":[],"_revision_number":16},{"id":"1b5b757a6dc3a4c156060d836bc418f861b5d066","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-09-10 19:52:37.000000000","message":"Patch Set 16:\n\n(3 comments)","accounts_in_message":[],"_revision_number":16},{"id":"880073960005cd2416d67b82c43a281e51bc436a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-09-10 20:56:25.000000000","message":"Uploaded patch set 17: Patch Set 16 was rebased.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":17},{"id":"893f91d2ffd361dbaf1a81479fe2641e8402a9f7","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-10 22:04:01.000000000","message":"Patch Set 17: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/582f2b211a514f2b8cae85b0a06c4eb8\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/4141fe27805b433bb7368f63fdf792cb : SUCCESS in 10m 11s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/53d58620db924cccbd71b3e24076a248 : SUCCESS in 9m 29s\n- grenade https://zuul.opendev.org/t/openstack/build/94589a74712848cdb0e1989777de9e12 : SUCCESS in 1h 02m 32s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/57f82ca9227340b5be6c4b80d3f190d1 : SUCCESS in 1h 01m 52s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/3d1516ab49854dae827d7e6754ccd8b2 : SUCCESS in 49m 54s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/dc283a83e2d1448bb53830df298c0fbd : SUCCESS in 58m 43s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/949b717376e140b2ac002553d9f6626b : SUCCESS in 20m 57s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/844fdffd0d574b828c937a9f28484093 : SUCCESS in 20m 19s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/80bc9d83f379442daf54f04505a0495b : SUCCESS in 20m 24s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/07898dc551d64cb8b9a2ddc2c1f8c563 : SUCCESS in 7m 06s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e0a09f7e04cd4dbd97b1bcb91923dc61 : SUCCESS in 24m 06s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/3ac5815d8bd744118d1c07e8d057061c : SUCCESS in 17m 07s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/d691134ceb5c4a92a5a95204fed475b6 : SUCCESS in 33m 46s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/530e0c6e0fed479b93e722bae0da1be5 : SUCCESS in 20m 41s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/f18994db4dbd41d1b2d3bcfcaa5e8def : SUCCESS in 14m 53s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/01e3cd48877943bf97c10f288f9f1a4e : SUCCESS in 17m 21s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/2cf57bdd6dc74568adab2639888324f9 : SUCCESS in 15m 36s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/96e36150d8074be4a4611098e42b06c6 : SUCCESS in 16m 38s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/3b7443c32faf46ec80625bc4fdb8c718 : SUCCESS in 5m 50s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/938840101112417f9439cdbba04b81ab : FAILURE in 31m 28s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/659f3b85c525403bbfd1523e6834961d : SUCCESS in 11m 06s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/51947c0d59724b0aa9a3f3428e7639f8 : SUCCESS in 59m 23s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/215a56fee1c742ff8533c66b400f8c60 : SUCCESS in 49m 58s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/3a08bf750cc3451e8e100a45f4f4ca39 : SUCCESS in 51m 57s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/a75556536b954e99ad79e328e9963ea4 : SUCCESS in 24m 17s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/cb9a5bfa999f42f9a5ed727ad08b943b : SUCCESS in 5m 00s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2de2487cfcfa426795a7c5afa81bf63b : SUCCESS in 19m 51s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/dc998d590b5742279d06be21dd259e19 : SUCCESS in 53m 56s\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-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.\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.","accounts_in_message":[],"_revision_number":17},{"id":"9250c085d06ecb5c7e5f83f291b6d68b3d94c4cc","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-10 22:19:24.000000000","message":"Patch Set 17:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6f67346e2ffa4dea87b32da6cfeaf999\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/50a4976933b64de0853d0a042d6d5ff6 : SUCCESS in 1h 20m 37s","accounts_in_message":[],"_revision_number":17},{"id":"0126c85b53bfc0fcb3691f2580b8d3ff5d8e16c0","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-11 10:31:07.000000000","message":"Uploaded patch set 18.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":18},{"id":"36c867c231daa7f117a1671ffbf7f30f88b3434a","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-11 10:32:14.000000000","message":"Patch Set 17:\n\n(2 comments)","accounts_in_message":[],"_revision_number":17},{"id":"42709ada5c8f79e1a2856219213abe0fd63c4bb8","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-11 11:10:38.000000000","message":"Patch Set 18:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/4f243e2dd83442a1b18f58b0e9516cdc\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/ed0250e5438b4fc4bb7b46a210c097d9 : SUCCESS in 36m 57s","accounts_in_message":[],"_revision_number":18},{"id":"0d91d4296f3a7ddbd62fdf6ec2b4a00550f471ce","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-11 11:45:55.000000000","message":"Patch Set 18: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a64b006a3b66447ebd6591155b7a99d8\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/97bd37dde53b433ea27926b34232bbb4 : SUCCESS in 10m 22s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/d84af8b1b7254e9ea8db205f425ce229 : SUCCESS in 10m 16s\n- grenade https://zuul.opendev.org/t/openstack/build/c927714af474472088495e474df12642 : SUCCESS in 1h 07m 02s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/5f71f48fa8f24ae886b3f1bc86dabd6e : SUCCESS in 1h 07m 43s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/e1749a4bc2f04f94b53489e9d9158040 : SUCCESS in 34m 52s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/dd9caa3d46a248a4a4c85f0a9d544257 : SUCCESS in 29m 26s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ae602b6a4ec14566a498acf08133b773 : SUCCESS in 19m 19s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/348dc1b8e9b64520a61746072fee168b : SUCCESS in 11m 37s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/38c90d0e36d940049779a4eea9454472 : SUCCESS in 21m 38s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8e5e6c69502b4e40955c5428edfabb78 : SUCCESS in 9m 05s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/3bc98920d69444b4b6ec836e8c790168 : SUCCESS in 17m 26s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/ebb475398ab24649ac92ce16fc5e0809 : SUCCESS in 21m 15s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/401ed730567f49e8b7b3fb8cb632432a : SUCCESS in 30m 24s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/90a1cf13d464453897bf40f31b4cf892 : SUCCESS in 19m 42s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/15c49e8c028342c6a22cad93bf49ab8d : SUCCESS in 14m 02s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/979fb7edf35c495c9c7a4b44c10915f8 : SUCCESS in 14m 41s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/e10dddff7d1b4727bd6d2020af9f0c79 : SUCCESS in 14m 47s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/990f6ca1441e4fddb4dcbe0c0126bc01 : SUCCESS in 18m 31s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/79d2614e73cc4ed9b3234f38b935b31d : SUCCESS in 6m 05s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/73788a7f304049aea25b6cc9e288b94f : FAILURE in 15m 56s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/d59756c316264db3840afe787a8db095 : SUCCESS in 8m 31s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/3bcf7d707acf419cb74eb72b93733809 : SUCCESS in 37m 10s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/f588c1dd5c8c419db2d735ed28072974 : SUCCESS in 29m 12s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/8a3253fbb84543abb6d8884faa1d3c40 : SUCCESS in 49m 33s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/cbd73ce55f1f427388bbe34624da6031 : SUCCESS in 26m 45s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/81349b108ab0426095347c1ae21859b7 : SUCCESS in 4m 25s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/76fa581d0a2a42eebc41c4e209334dee : SUCCESS in 18m 42s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/43f556a5bc5e4122b3c70e8f6fe020d4 : SUCCESS in 52m 36s\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-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.\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.","accounts_in_message":[],"_revision_number":18},{"id":"fa43733d5d50add790110899902714a4a5e8a569","author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"date":"2026-09-14 04:46:54.000000000","message":"Patch Set 18: Code-Review+1\n\n(6 comments)","accounts_in_message":[],"_revision_number":18},{"id":"8483599d200fe33a5851c6a8c274531fbc6a31f3","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-14 08:17:52.000000000","message":"Patch Set 18:\n\n(11 comments)","accounts_in_message":[],"_revision_number":18},{"id":"4fed9be7cae936e44dd5196144823187601aa6a0","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2026-09-16 22:58:57.000000000","message":"Patch Set 18:\n\n(4 comments)","accounts_in_message":[],"_revision_number":18},{"id":"1f499d10286a7b0a07b2990597ba0cabee22e10c","author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"date":"2026-09-17 04:12:14.000000000","message":"Patch Set 18: -Code-Review\n\n(1 comment)","accounts_in_message":[],"_revision_number":18},{"id":"aaa96a1d4e999c9823f0c47fcc7e40045efc4654","author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"date":"2026-09-17 09:03:04.000000000","message":"Patch Set 18:\n\n(2 comments)","accounts_in_message":[],"_revision_number":18},{"id":"f2dba15867a2c7168fff22b47afaecd580f41a19","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"date":"2026-09-18 20:08:04.000000000","message":"Uploaded patch set 19: Patch Set 18 was rebased.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":19},{"id":"d9b79c2046d1e6d6920cc2e2f4663cdbe04a1b19","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 21:05:55.000000000","message":"Patch Set 19:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/2a37e8b8f9ac45ad942c09c245c448cc\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/4184e46cd2604ba290f0dfc357b39103 : SUCCESS in 55m 22s","accounts_in_message":[],"_revision_number":19},{"id":"a912ec57df36b9dd8775dd2d57081624851e35a3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 21:28:48.000000000","message":"Patch Set 19: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f2bcbcd72d5e4155a53542185c6fc54c\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/11eb54d3d6ed434d9f179b3f99564929 : SUCCESS in 13m 16s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/5c5b5baebaed4335acd15b6e96ec2abf : SUCCESS in 6m 55s\n- grenade https://zuul.opendev.org/t/openstack/build/3261b330eae343118e25c203b86a72e9 : SUCCESS in 1h 03m 17s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/908b7b1ffb2048f9bbb4fd2fe01168cd : SUCCESS in 1h 04m 12s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/84d06cc0d5e0421590589593450f38ba : SUCCESS in 54m 11s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/1c2a2edfe6d74c7c8dbce1d828b56cb3 : SUCCESS in 1h 03m 01s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/83b793b6af184759b04361091fce7ad3 : SUCCESS in 21m 14s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/d398267766524ae29d32b9fdc1c2962e : SUCCESS in 11m 03s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/dcfd1ebb35f94dc6a248fe3e9d93750d : SUCCESS in 11m 32s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/07b639cb68f648faadffbe9730bded4c : SUCCESS in 6m 29s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/06b24868d5e74576a7ae38b40254151b : SUCCESS in 24m 46s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/f97811529eb34a158b6e40a56feef46c : SUCCESS in 24m 16s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/072897e62668430cb039d644a553d3c7 : SUCCESS in 24m 40s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/16e2b445e80e492cb6f825160c8747c3 : SUCCESS in 22m 47s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/d3e63ac34e6b426796c478e23c1214bd : SUCCESS in 8m 30s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/5c11709a17ef4e29a3342d52cf3fdc4b : SUCCESS in 14m 20s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/15310eb2880142679a98701a8734a6a1 : SUCCESS in 16m 34s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/c63a366f600f4be1bc6dedf4644724ab : SUCCESS in 18m 40s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/853d2e45372b40b99345972a1a683d40 : SUCCESS in 5m 26s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/3adb8da85adb49a582cc7740c76b2fee : SUCCESS in 8m 03s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/e9f8da244ce64cfdbdb47203f52f6c0b : SUCCESS in 1h 00m 23s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/cc2296d64df146fe83ec71e3173d4a1a : SUCCESS in 27m 41s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/355f131d9fa14121a7c79e40c1bfcb35 : SUCCESS in 57m 56s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/3a2ebe5cc24e401eaea8c71a2945af5c : SUCCESS in 22m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/74b4fa008c7d4625b67d09f9bd3d6229 : SUCCESS in 6m 19s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a3b0ea0baee54da1a2b59806b69ef0ab : SUCCESS in 19m 33s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/fd681bb78eb84720a1d76bcd83be3e6d : SUCCESS in 56m 10s\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-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.\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.","accounts_in_message":[],"_revision_number":19},{"id":"f46a83508ba1568ff73cfc84537d352b584706c0","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"date":"2026-09-30 04:12:07.000000000","message":"Uploaded patch set 20.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":20},{"id":"af235f7d0552e9c5ffbbbd63a88ecd794b91e728","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-30 05:06:00.000000000","message":"Patch Set 20:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/00f6747e68334ad281ba166a296e6a3f\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/a6ca2832441a484eb3c1e89f8af5c68d : SUCCESS in 51m 18s","accounts_in_message":[],"_revision_number":20},{"id":"b34c8aa3823f0c0daa6f6f63c52cc0c2b75b68a3","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-30 05:21:58.000000000","message":"Patch Set 20: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3e2dc9f7118d428db0557222690bb1bb\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/261102517e4a4f6e950424f9b809e3e8 : SUCCESS in 10m 09s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/ac262563ff4b4c77a74beee0065718e8 : SUCCESS in 5m 49s\n- grenade https://zuul.opendev.org/t/openstack/build/cbf1e40c0c6d4495a2f42d485b4fa345 : SUCCESS in 35m 23s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/7c1d952b7641461da1431bb1fb988957 : SUCCESS in 1h 04m 17s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/bdd93c7507534025ad87c41aa0cdd74a : SUCCESS in 29m 43s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/b9fa8be0469340f8bb6a13420e02f153 : SUCCESS in 1h 00m 30s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/3076684b7c034e26b071d55f125edd7e : SUCCESS in 10m 44s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/075a0b00b3784ba8bf81ae71b7645c1b : SUCCESS in 20m 11s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/b84849c8d8cb43c29bf8a2f527c9899e : SUCCESS in 19m 45s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/69526d357f324613ab579671aa2fd533 : SUCCESS in 6m 36s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/e949f671f7c44036bc282479a99b35ec : SUCCESS in 17m 20s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/c86d8ad1ec8d418eaa598c1f46ffbe65 : SUCCESS in 14m 58s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/cec81884e6334311877a03adbca6e195 : SUCCESS in 31m 25s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/f3047568b9fd4605b3be0bb0f971b57b : SUCCESS in 9m 11s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/812fd59b7ddc43f389b201e76c2066a2 : SUCCESS in 12m 41s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/824d5790ff8744eb97fe9910adbb53c4 : SUCCESS in 14m 39s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/a72f2383a64d4e44b2cb1f2edb159053 : SUCCESS in 15m 36s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/b75a7225073546258be2afc63a7df52b : SUCCESS in 11m 45s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/91eec86ecf5d4445b12e0d97728fd1b1 : SUCCESS in 8m 42s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/751caf57ee8d4edf98209cf3241a8737 : SUCCESS in 10m 59s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f52d5ed3b1a04be58b695d6b5303b559 : SUCCESS in 43m 43s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/5ba26f2e8d6440e49ef1bacdbdf94b0f : SUCCESS in 25m 56s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/4f8f003dfac84919a9b7ac2cc4339b54 : SUCCESS in 49m 25s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/82047b4331fb4e36a4b8141c93224395 : SUCCESS in 11m 24s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b0c703ce2e8645e488cef590fac1f71e : SUCCESS in 4m 20s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/06193f062c3a46739c1503a3e4daeafc : SUCCESS in 26m 16s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e26b8a1ea3274c03b8d322ae099174fa : SUCCESS in 28m 44s\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-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.\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-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.","accounts_in_message":[],"_revision_number":20},{"id":"80d1088def11c2dcb1adbb823ddf516b5550d1f4","author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"date":"2026-09-30 21:31:15.000000000","message":"Patch Set 20: Code-Review+1","accounts_in_message":[],"_revision_number":20}],"current_revision_number":20,"current_revision":"e1be8ee3704e16ad6ea317736d476e865e7f1551","revisions":{"74fe57ec3fa4c581b39a789978db416eae438f2c":{"kind":"REWORK","_number":1,"created":"2026-09-02 09:53:25.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/1"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 09:52:38.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain the\nmiddleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte symlink.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/74fe57ec3fa4c581b39a789978db416eae438f2c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/74fe57ec3fa4c581b39a789978db416eae438f2c"}]},"branch":"refs/heads/master"},"6af4a7ec348c0c6c2adbfddc54c738affb79d58f":{"kind":"REWORK","_number":2,"created":"2026-09-02 10:13:38.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/2"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 10:12:53.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6af4a7ec348c0c6c2adbfddc54c738affb79d58f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6af4a7ec348c0c6c2adbfddc54c738affb79d58f"}]},"branch":"refs/heads/master"},"bbef24453fcb12268afae5379f4efe35982e0df7":{"kind":"REWORK","_number":3,"created":"2026-09-02 10:40:43.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/3"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 10:29:57.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/bbef24453fcb12268afae5379f4efe35982e0df7"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/bbef24453fcb12268afae5379f4efe35982e0df7"}]},"branch":"refs/heads/master"},"28eefcf1e1a502ab477b352d53c3519d0ef31fea":{"kind":"REWORK","_number":4,"created":"2026-09-02 11:13:40.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/4"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 11:00:05.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user, in\nI8b126d54e34f74d3cdb08cae626811caa3daba82.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/28eefcf1e1a502ab477b352d53c3519d0ef31fea"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/28eefcf1e1a502ab477b352d53c3519d0ef31fea"}]},"branch":"refs/heads/master"},"fa71c232c898519d8b045a84717b22de0c675cb4":{"kind":"REWORK","_number":5,"created":"2026-09-02 13:31:01.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/5"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 13:22:13.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user, in\nI8b126d54e34f74d3cdb08cae626811caa3daba82.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/fa71c232c898519d8b045a84717b22de0c675cb4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/fa71c232c898519d8b045a84717b22de0c675cb4"}]},"branch":"refs/heads/master"},"9941a3b9a4f7019dfeaefdd77d75bb6bda21741d":{"kind":"NO_CODE_CHANGE","_number":6,"created":"2026-09-02 23:09:40.000000000","uploader":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"ref":"refs/changes/24/1003424/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/6"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","date":"2026-09-02 23:09:40.000000000","tz":0},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The related\nchange adds the first consumer of this namespace in the s3api\nmiddleware.\n\nSecurityImpact\n\nRelated-Change-Id: I8b126d54e34f74d3cdb08cae626811caa3daba82\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9941a3b9a4f7019dfeaefdd77d75bb6bda21741d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9941a3b9a4f7019dfeaefdd77d75bb6bda21741d"}]},"branch":"refs/heads/master","description":"Edit commit message"},"4ba656257ea2a30fbd392c98902f893fea252f96":{"kind":"REWORK","_number":7,"created":"2026-09-08 10:30:09.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/7"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-08 10:28:31.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta also for a zero-byte object.\nThe plaintext Etag of such an object is always the same value, but a\nsensitive value does not always come from the body. Each encrypted value\nholds its own key id. Because of this, the decrypter can decrypt the\nvalue when there is no body crypto meta, and after an operator changes\nthe root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user, in\nI8b126d54e34f74d3cdb08cae626811caa3daba82.\n\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ba656257ea2a30fbd392c98902f893fea252f96"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ba656257ea2a30fbd392c98902f893fea252f96"}]},"branch":"refs/heads/master"},"43f5dd83ba712cc14df69ec1ebe8faa9a97584b1":{"kind":"REWORK","_number":8,"created":"2026-09-08 10:36:31.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/8"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-08 10:36:16.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. The decrypter puts\nback the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/43f5dd83ba712cc14df69ec1ebe8faa9a97584b1"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/43f5dd83ba712cc14df69ec1ebe8faa9a97584b1"}]},"branch":"refs/heads/master"},"1bb5ce42c338c849b1e2ddca353b24d014b34072":{"kind":"REWORK","_number":9,"created":"2026-09-08 10:40:38.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/9"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-08 10:39:58.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1bb5ce42c338c849b1e2ddca353b24d014b34072"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/1bb5ce42c338c849b1e2ddca353b24d014b34072"}]},"branch":"refs/heads/master"},"c69949312ec3d821d540597efa3c2cdfc36d9b43":{"kind":"REWORK","_number":10,"created":"2026-09-08 12:56:21.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/10","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/10","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/10"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-08 12:38:57.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c69949312ec3d821d540597efa3c2cdfc36d9b43"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c69949312ec3d821d540597efa3c2cdfc36d9b43"}]},"branch":"refs/heads/master"},"33e5aeb2ee1b8e746996e75906ac4772c04e8f08":{"kind":"REWORK","_number":11,"created":"2026-09-08 13:20:09.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/11","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/11","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/11 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/11 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/11 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/11"}}},"commit":{"parents":[{"commit":"4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766","subject":"s3api: add normalize_checksum_algorithm","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4ff57666f016d4054a46dc2dcaa3ca2ad7ed4766"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-08 13:19:51.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/33e5aeb2ee1b8e746996e75906ac4772c04e8f08"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/33e5aeb2ee1b8e746996e75906ac4772c04e8f08"}]},"branch":"refs/heads/master"},"59d118b55119b9dfcb8d70ef00653507514f8c85":{"kind":"TRIVIAL_REBASE","_number":12,"created":"2026-09-09 14:59:04.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/24/1003424/12","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/12","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/12 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/12 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/12 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/12"}}},"commit":{"parents":[{"commit":"87834c289e96a6dd0be4635e506233d87c12c2a2","subject":"s3api: add x-amz-checksum-type label to checksum metric","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/87834c289e96a6dd0be4635e506233d87c12c2a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-09-09 14:35:11.000000000","tz":60},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/59d118b55119b9dfcb8d70ef00653507514f8c85"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/59d118b55119b9dfcb8d70ef00653507514f8c85"}]},"branch":"refs/heads/master"},"946ecbbc4f80a4aaf80f3beb8e5af0b77b26f469":{"kind":"REWORK","_number":13,"created":"2026-09-09 15:13:50.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/13","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/13","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/13 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/13 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/13 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/13"}}},"commit":{"parents":[{"commit":"87834c289e96a6dd0be4635e506233d87c12c2a2","subject":"s3api: add x-amz-checksum-type label to checksum metric","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/87834c289e96a6dd0be4635e506233d87c12c2a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-09 15:10:41.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/946ecbbc4f80a4aaf80f3beb8e5af0b77b26f469"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/946ecbbc4f80a4aaf80f3beb8e5af0b77b26f469"}]},"branch":"refs/heads/master"},"718e1e4b00e910902e3f8d8b31f5c3f8752b1f71":{"kind":"REWORK","_number":14,"created":"2026-09-09 15:16:09.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/14","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/14","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/14 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/14 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/14 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/14"}}},"commit":{"parents":[{"commit":"87834c289e96a6dd0be4635e506233d87c12c2a2","subject":"s3api: add x-amz-checksum-type label to checksum metric","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/87834c289e96a6dd0be4635e506233d87c12c2a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-09 15:16:00.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/718e1e4b00e910902e3f8d8b31f5c3f8752b1f71"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/718e1e4b00e910902e3f8d8b31f5c3f8752b1f71"}]},"branch":"refs/heads/master"},"a0aac4c34ea337b3707a1625fde96b75af531969":{"kind":"REWORK","_number":15,"created":"2026-09-09 15:25:54.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/15","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/15","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/15 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/15 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/15 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/15"}}},"commit":{"parents":[{"commit":"87834c289e96a6dd0be4635e506233d87c12c2a2","subject":"s3api: add x-amz-checksum-type label to checksum metric","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/87834c289e96a6dd0be4635e506233d87c12c2a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-09 15:25:45.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a0aac4c34ea337b3707a1625fde96b75af531969"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/a0aac4c34ea337b3707a1625fde96b75af531969"}]},"branch":"refs/heads/master"},"d73d0b3fb00013404fd436c70c746693b6d52271":{"kind":"REWORK","_number":16,"created":"2026-09-09 17:37:39.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/24/1003424/16","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/16","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/16 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/16 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/16 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/16"}}},"commit":{"parents":[{"commit":"87834c289e96a6dd0be4635e506233d87c12c2a2","subject":"s3api: add x-amz-checksum-type label to checksum metric","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/87834c289e96a6dd0be4635e506233d87c12c2a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-09 17:37:31.000000000","tz":120},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d73d0b3fb00013404fd436c70c746693b6d52271"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/d73d0b3fb00013404fd436c70c746693b6d52271"}]},"branch":"refs/heads/master"},"cf43007fefada7387a228d06f395076eee5b3f76":{"kind":"TRIVIAL_REBASE","_number":17,"created":"2026-09-10 20:56:25.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/24/1003424/17","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/17","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/17 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/17 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/17 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/17"}}},"commit":{"parents":[{"commit":"396cf55464a006beb4b6c401f3f2e41f2323290c","subject":"utils/checksum: Prefer anycrc for CRC32","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/396cf55464a006beb4b6c401f3f2e41f2323290c"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2026-09-10 20:53:24.000000000","tz":-420},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cf43007fefada7387a228d06f395076eee5b3f76"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/cf43007fefada7387a228d06f395076eee5b3f76"}]},"branch":"refs/heads/master"},"4d36f9e79587fcc807a511b933d097fdfac2eedd":{"kind":"REWORK","_number":18,"created":"2026-09-11 10:31:07.000000000","uploader":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"ref":"refs/changes/24/1003424/18","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/18","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/18 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/18 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/18 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/18"}}},"commit":{"parents":[{"commit":"396cf55464a006beb4b6c401f3f2e41f2323290c","subject":"utils/checksum: Prefer anycrc for CRC32","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/396cf55464a006beb4b6c401f3f2e41f2323290c"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Alistair Coles","email":"alistairncoles@gmail.com","date":"2026-09-11 10:30:37.000000000","tz":60},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4d36f9e79587fcc807a511b933d097fdfac2eedd"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4d36f9e79587fcc807a511b933d097fdfac2eedd"}]},"branch":"refs/heads/master"},"841edd05407a9f89c7c2889cce9e2e44625e94a2":{"kind":"TRIVIAL_REBASE","_number":19,"created":"2026-09-18 20:08:04.000000000","uploader":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"ref":"refs/changes/24/1003424/19","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/19","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/19 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/19 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/19 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/19"}}},"commit":{"parents":[{"commit":"caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d","subject":"Merge \"relinker: Add audit step to quarantine stale hash directories\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/caf11b1e93047eb09b97dc025a33fe4d5f7f7a8d"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Jianjian Huo","email":"jhuo@nvidia.com","date":"2026-09-18 19:49:09.000000000","tz":-420},"subject":"crypto: Encrypt object sysmeta declared sensitive","message":"crypto: Encrypt object sysmeta declared sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd the X-Object-Sysmeta-Sensitive- namespace. On a PUT, the encrypter\nencrypts each value in this namespace with the object key. It stores the\nresult as X-Object-Sysmeta-Crypto-Sensitive-\u003cname\u003e. A value in the\nfooters replaces a value of the same name in the headers. The encrypter\nstores an empty value in the clear, because an empty value tells nothing\nabout the plaintext. The decrypter puts back the original header name.\n\nThe decrypter also reads a value that is in the clear in the sensitive\nnamespace. Because of this, Swift can read an object that it wrote with\nno encryption, or wrote before the crypto middleware knew the namespace.\n\nA proxy that does not have this change removes the encrypted header from\nthe response, because the name starts with x-object-sysmeta-crypto-.\nMiddleware that reads a sensitive value must accept that the value is\nnot there.\n\nThe header name shows that the value is sensitive. Because of this, a\nCOPY keeps the value sensitive, even if the pipeline does not contain\nthe middleware that set the value. The encrypter at the destination then\nencrypts the value again with the key of the destination object.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nid and the cipher in X-Object-Sysmeta-Crypto-Meta, one header for all\nthe values. The decrypter reads that header, so it can decrypt a value\nafter an operator changes the root secret.\n\nOnly a PUT can set object sysmeta. Object versioning keeps sensitive\nsysmeta on the version object, and removes it from the zero-byte\nsymlink.\n\nNo middleware in this patch writes to the namespace. The s3api\nmiddleware is the first user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/841edd05407a9f89c7c2889cce9e2e44625e94a2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/841edd05407a9f89c7c2889cce9e2e44625e94a2"}]},"branch":"refs/heads/master"},"e1be8ee3704e16ad6ea317736d476e865e7f1551":{"kind":"REWORK","_number":20,"created":"2026-09-30 04:12:07.000000000","uploader":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"ref":"refs/changes/24/1003424/20","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/24/1003424/20","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/20 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/20 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/24/1003424/20 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/24/1003424/20"}}},"commit":{"parents":[{"commit":"3a8cdee9b26b93b853e9163fe46850d1a0d31d13","subject":"tests: Fix diskfile tests on systems without EUCLEAN errno","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3a8cdee9b26b93b853e9163fe46850d1a0d31d13"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-02 07:33:15.000000000","tz":120},"committer":{"name":"Jianjian Huo","email":"jhuo@nvidia.com","date":"2026-09-29 22:28:23.000000000","tz":-420},"subject":"crypto: Encrypt object sysmeta registered as sensitive","message":"crypto: Encrypt object sysmeta registered as sensitive\n\nMiddleware can store object sysmeta that gives information about the\nplaintext, for example a checksum of the object body. The encryption\nmiddleware has no general method to protect such a value.\n\nAdd register_sensitive_sysmeta(names) in swift.common.registry.\nMiddleware registers exact, case-insensitive object sysmeta header\nnames. Registration is additive and idempotent. Reject strings and\nmappings in place of the names collection, empty collections, invalid\nheader names, and names in the crypto sysmeta namespace.\n\nMiddleware keeps its original object sysmeta names. It must register\nthem before it writes sensitive values, also when its feature is\ndisabled. Only register fields that downstream components can store\nand return without interpreting before decryption. The registry does\nnot enforce this requirement.\n\nOn a PUT, the encrypter encrypts each registered non-empty value with\nthe object key. It stores X-Object-Sysmeta-\u003cname\u003e as\nX-Object-Sysmeta-Crypto-Sysmeta-\u003cname\u003e. A value in the footers replaces\na value of the same name in the headers. Empty values stay in clear\ntext.\n\nThe decrypter restores the original header name from the stored\nencrypted sysmeta, even when the current process has not registered\nthe name. It also preserves values stored in clear text, so Swift can\nread objects written without encryption or before this support was\navailable. It ignores and removes empty encrypted sysmeta headers.\n\nThe encrypter encrypts sensitive sysmeta even for a zero-byte object,\nbecause a sensitive value does not always come from the body. Such an\nobject has no body crypto meta. The encrypter therefore stores the key\nID and cipher in X-Object-Sysmeta-Crypto-Meta, one header for all the\nvalues. This lets the decrypter select the correct key after an\noperator changes the root secret.\n\nUpgrade all applicable proxy processes and register the names before\nenabling a use case. An old proxy removes the encrypted header because\nits name starts with x-object-sysmeta-crypto-. Middleware must accept\nthat the value can be absent during an upgrade.\n\nNo middleware in this patch registers a sensitive sysmeta name. The\ns3api middleware is the first intended user.\n\nSecurityImpact\n\nRelated-Change: Ie957413640289c458db35c6e65dbdc0e71652322\nCo-Authored-by: Clay Gerrard \u003cclay.gerrard@gmail.com\u003e\nCo-Authored-by: Alistair Coles \u003calistairncoles@gmail.com\u003e\nCo-Authored-by: Jianjian Huo \u003cjhuo@nvidia.com\u003e\nAssisted-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nAssisted-By: Codex:GPT-5\nChange-Id: If9d53f4f1e548dc735813ed9adbc33088037272c\nSigned-off-by: Christian Schwede \u003ccschwede@mailbox.org\u003e\nSigned-off-by: Jianjian Huo \u003cjhuo@nvidia.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e1be8ee3704e16ad6ea317736d476e865e7f1551"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/e1be8ee3704e16ad6ea317736d476e865e7f1551"}]},"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":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"}},{"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":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","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":""}}}]}
