)]}'
{"id":"openstack%2Fswift~999808","triplet_id":"openstack%2Fswift~master~I4a3bfe3a61c72cf44558761445debd350ea03d35","project":"openstack/swift","branch":"master","attention_set":{"6968":{"account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"last_update":"2026-08-28 23:16:18.000000000","reason":"\u003cGERRIT_ACCOUNT_1179\u003e replied on the change","reason_account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"}}},"removed_from_attention_set":{"1179":{"account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"last_update":"2026-08-28 23:16:18.000000000","reason":"\u003cGERRIT_ACCOUNT_1179\u003e replied on the change","reason_account":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"}}},"hashtags":[],"change_id":"I4a3bfe3a61c72cf44558761445debd350ea03d35","subject":"proxy: Don\u0027t wait out a lone slow node on a plain EC 404","status":"NEW","created":"2026-08-05 11:14:04.000000000","updated":"2026-08-28 23:16:18.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":6,"unresolved_comment_count":5,"has_review_started":true,"meta_rev_id":"c0d4119acc2532697eb77bc21eb6e1d048615b9e","_number":999808,"virtual_id_number":999808,"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":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},{"tag":"autogenerated:zuul:check","value":1,"date":"2026-08-11 16:27:16.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"all":[{"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"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"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"]}],"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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-05 11:19:43.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":"REVIEWER"},{"updated":"2026-08-05 11:49:40.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-08-05 12:27: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"}],"messages":[{"id":"66806d400a70044d397c0a71a3a4b80bce7399c6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-08-05 11:14:04.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"104b6614d6b7e68845d6bc76b57d41e759933100","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-08-05 11:31:47.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"89638476741072f1f087f3275da1bf4d5ea2d4d5","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-05 11:49:40.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/aaa8aca0b19947b0b856485dce0522d6\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/75ec6053b43d4197afe6c79d549901b4 : SUCCESS in 33m 59s","accounts_in_message":[],"_revision_number":1},{"id":"c2ef1526906c567916705b64dd6ec0541fedc2ec","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-05 12:27:46.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a63a5f1ac82248ca815e530d7bc393f1\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c6ee6a24ed6c42b4b596fe445b0d52b0 : SUCCESS in 10m 03s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/334cbdd4db36472395879779f8446568 : SUCCESS in 9m 35s\n- grenade https://zuul.opendev.org/t/openstack/build/cfe6b73e8c474586bec9c3743dcecfe6 : SUCCESS in 49m 20s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/81a7255ea0ef4046b4c196fa98d613e3 : SUCCESS in 39m 28s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/4b797d0e4e764fa49eba50133cf3a5e5 : SUCCESS in 48m 39s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/2626414330974c3a9959683b23249726 : SUCCESS in 1h 04m 48s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f13206ddc8574257a08da50f6c0a2ab5 : SUCCESS in 19m 02s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/533f708638374bd58506d5b99cde1cf2 : SUCCESS in 10m 48s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/9541c2fa6b8d425fab6820c8a041caa3 : SUCCESS in 25m 17s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/57b3f1ca97634c728de40f6865d81109 : SUCCESS in 8m 56s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/36174a3f71f44b92860316b755e7bbbf : SUCCESS in 16m 16s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/76664a99cfdb4b7dbe9fb5f2cd1a3c46 : SUCCESS in 22m 28s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/71c0061e3ea34e678b4db2f148fb6538 : SUCCESS in 22m 31s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/ea20199ae2ee4b32a2a776a001bb3846 : SUCCESS in 22m 01s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/888404939c7a4ed683cfc30554e96876 : SUCCESS in 13m 18s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/1b65b0c526bc4c01bd2be0b73d59dc68 : SUCCESS in 14m 47s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/0e114b56657a4b38bdffe6b01bc3e0f7 : SUCCESS in 15m 09s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/31d520e4fc26418a8e2043a845350726 : SUCCESS in 18m 10s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/7ac757c323964fdb86d29a381d956562 : SUCCESS in 6m 17s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/0e2a24da430b470786150b9a8ba030ad : FAILURE in 7m 18s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/9701771d494b41699b324765f83e0db9 : SUCCESS in 8m 26s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f90c4c32ed1d436bade9425d96193eff : SUCCESS in 1h 07m 53s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/891bf3ad491d4fefa109575f12a069bd : SUCCESS in 42m 19s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/99af384d69c149bea1f9c18435d68e81 : SUCCESS in 33m 04s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/f1af449e314e43b282ef57bd73b343bd : SUCCESS in 21m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5b9ff2bc4308458ebd7181cada2e99eb : SUCCESS in 3m 10s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/7547a42f31894bf5a76278fbe14737ce : SUCCESS in 20m 03s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/17b781b2a74e48659cdb4554012fd8df : SUCCESS in 34m 55s\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":1},{"id":"61e2cba1ea924897431fcb72a058f94c14e5a446","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-08-05 14:29:29.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"7acef08b2710bf51dcb206c7989bbe1d2fcfcb40","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-05 15:04:18.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/1994c01fa4f14a81ac6728910f4e5b77\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/8a9c204fbc6d48fe8c657559c790b6e1 : SUCCESS in 32m 40s","accounts_in_message":[],"_revision_number":2},{"id":"b98153b163841d6be6f4ce1452e386a1701799ee","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-05 15:49:17.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8a1f84301f914db0b1932729402edd54\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8e80d6346adc4bb692987174c6d6fc17 : SUCCESS in 9m 10s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/f8dcedf1d4a2473c840a41f39d4603ad : SUCCESS in 9m 42s\n- grenade https://zuul.opendev.org/t/openstack/build/d31887d3777c4d5688743e2b39c8b688 : SUCCESS in 1h 07m 27s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/86254027402d49639721c73d4ef99737 : SUCCESS in 1h 02m 58s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/3ee66de8456e47e59350a8101c9cfc2a : SUCCESS in 56m 19s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/5b3ed97510264cd79e605ddb4de26ee2 : SUCCESS in 1h 01m 09s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/f6cfa4290fcc454894d132e376a9d67b : SUCCESS in 18m 21s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/a5c3bc77930b4e3db3225b18921f0ff7 : SUCCESS in 16m 00s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/fa17eea3d83748bf8e8bee8de7acc62a : SUCCESS in 17m 53s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/5138615ed1dc439e93f15f816ac9913c : SUCCESS in 7m 32s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/4aa972f012df4cb0a139c5a151dc9b8c : SUCCESS in 23m 32s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/39096b1c1e59488ab8f070684637e87f : SUCCESS in 20m 06s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/ed2b3cc87e804aa6bdf707cf5b927ce2 : SUCCESS in 32m 01s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/f0a40dd1faff4ae3a6597be864054554 : SUCCESS in 19m 59s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/bd5b41fbe9aa45d69762eb101cca7e52 : SUCCESS in 8m 41s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/826fe8ac91094bb18f46cbe0d8812bc4 : SUCCESS in 9m 52s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/6f406a8c2fe740ea86888d8b3d3ec486 : SUCCESS in 15m 38s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/18d944bf9fd54502b7cd66de06a31dad : SUCCESS in 18m 53s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/bdd363efeed9404fa0bed845613afad7 : SUCCESS in 6m 38s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/8511c2a81b354399a729d664dfb58b49 : FAILURE in 8m 19s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/e1180ed34ff345f299a7c110ed2c837b : SUCCESS in 9m 02s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/a396ee729447452fb424c4f3415f3d6e : SUCCESS in 37m 57s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/6f34d41cc4654814b698e7735cf73492 : SUCCESS in 38m 28s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/bc01edc16fe54dc698cef977f86bcc47 : SUCCESS in 25m 43s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/15a59c2a7f8c4880ad9b6c1ee7b499b4 : SUCCESS in 28m 56s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/04a07456b58f49409a71924bb31311ae : SUCCESS in 2m 51s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/4a2de96609014933a9cc538a008b22a3 : SUCCESS in 16m 12s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/7a90a753be00474ca2425c6dd1029956 : SUCCESS in 36m 30s\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":2},{"id":"25caee4b1a8928e05649b1471c85a2e27e7fb7bd","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-08-11 15:26:11.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"8d419f2f0fdcff591919ecdacf1679dac633b146","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-11 16:27:16.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3388b98e72f34512b396bb28d7ef6d30\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/dfff748613054ec28419103e1b70e2a3 : SUCCESS in 9m 21s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/461e0aead2ff46a9a52d8c60fc742fe6 : SUCCESS in 8m 02s\n- grenade https://zuul.opendev.org/t/openstack/build/159bc07a4a524e7092c5c1d0f92d1ba3 : SUCCESS in 43m 43s\n- grenade-skip-level-always https://zuul.opendev.org/t/openstack/build/1267414788b849b999f2333817890cc1 : SUCCESS in 29m 35s\n- tempest-integrated-object-storage https://zuul.opendev.org/t/openstack/build/4dff6b7a03644b4fa0e30bf7a56f86b7 : SUCCESS in 49m 49s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/d253de62d40049889e5f32d5c5d389d2 : SUCCESS in 37m 18s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/ae4fe06346a24274b655fab2efaccc86 : SUCCESS in 16m 50s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/812dcc351bdb423ea219e97b804ab67f : SUCCESS in 14m 53s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/1ab7b89b3caa4283943eb99f180f6469 : SUCCESS in 15m 02s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/02fa34c5bec34e07a8829f9e1bbc615a : SUCCESS in 6m 11s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/98157f23b2334da8b25f32e4037e3bb0 : SUCCESS in 20m 46s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/7fe9c2bd73af4ec38d448624a29aad38 : SUCCESS in 22m 17s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/80524bc5154f455d806ef694406ece35 : SUCCESS in 36m 04s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/5afe105d0ec546e69d358325593c0bd1 : SUCCESS in 14m 00s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/88480559fa4f4d5bb6df4b177ec4b6dd : SUCCESS in 14m 30s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/ee16544158124148a9ade6d89deead0f : SUCCESS in 13m 59s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/832ee9a0c2d44dd6bceee017175533db : SUCCESS in 8m 33s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/118669107bcf4bbfa6000827a77a41bb : SUCCESS in 17m 18s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/ed61d8e922bb4e82865cec70411d2f20 : SUCCESS in 6m 17s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/0a67450ed8df4578a8e0f8063ded0654 : FAILURE in 8m 04s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/c9664c32f4b24b5f9f33f06b8f4aaa2d : SUCCESS in 8m 25s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f808925fcab9415bb5d1c71a525ec97a : SUCCESS in 45m 23s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/5fc89df5843449829954e252aa36842d : SUCCESS in 56m 45s\n- swift-dsvm-functional-ipv6 https://zuul.opendev.org/t/openstack/build/922866d1098f407c800b82f84c0a96e5 : SUCCESS in 59m 16s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/003ea66542914c86874484fdb803332e : SUCCESS in 29m 33s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/5b833ef02df5412782123314de1311e3 : SUCCESS in 4m 30s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/a7c51f42fdec4b81ae1e7d1b7ebed5ee : SUCCESS in 9m 05s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e928cb03249444feacc7cd702df6129c : SUCCESS in 39m 25s\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":3},{"id":"7ccc72f9fa8d880957ed67d13dbd1a56b305944b","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-11 16:32:53.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/89ebf35f18964b09af2e6e6448e851ab\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/a07d576c6e194966938470a10afc7752 : SUCCESS in 1h 04m 03s","accounts_in_message":[],"_revision_number":3},{"id":"c0d4119acc2532697eb77bc21eb6e1d048615b9e","author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"date":"2026-08-28 23:16:18.000000000","message":"Patch Set 3:\n\n(5 comments)","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"58567198339842c43924bd35ffee5c513f1754d8","revisions":{"785afed926a83b09d09635c07337b776c53b3ef4":{"kind":"REWORK","_number":1,"created":"2026-08-05 11:14:04.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/08/999808/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/08/999808/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/08/999808/1"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-08-05 11:04:09.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-08-05 11:04:09.000000000","tz":120},"subject":"proxy: Don\u0027t wait for a hung node on an EC 404","message":"proxy: Don\u0027t wait for a hung node on an EC 404\n\nAn EC GET keeps asking nodes while responses are 404, since a fragment\nmay still be sat on a handoff. It then waits for every request it made,\nbecause the only way out of the collection loop is gathering ec_ndata\ndurable fragments.\n\nSo a node that accepts the connection and then goes quiet holds up a 404\nfor a full recoverable_node_timeout, long after the other nodes settled\nthe answer. That node can hold at most one fragment, and ec_ndata are\nneeded to reconstruct, so it was never going to change the response.\n\nStop collecting once no frags have been gathered, no more getters will be\nspawned, and too few replies are outstanding to reach ec_ndata. Leaving\nthe ContextPool kills them.\n\nRequiring that no frags were gathered keeps the break away from GETs that\nare still assembling an object; without it the request count for such a\nGET varied with greenthread scheduling.\n\nThe number of nodes asked now depends on how promptly replies arrive, so\ntests that pinned an exact count either expect one fewer or drop any\nunused stub statuses.\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\nChange-Id: I4a3bfe3a61c72cf44558761445debd350ea03d35\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/785afed926a83b09d09635c07337b776c53b3ef4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/785afed926a83b09d09635c07337b776c53b3ef4"}]},"branch":"refs/heads/master"},"4fe38e947efb008c7173d68bc1a808a703ab6a92":{"kind":"REWORK","_number":2,"created":"2026-08-05 14:29:29.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/08/999808/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/08/999808/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/08/999808/2"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-08-05 11:04:09.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-08-05 14:19:07.000000000","tz":120},"subject":"proxy: Don\u0027t wait out a lone slow node on a plain EC 404","message":"proxy: Don\u0027t wait out a lone slow node on a plain EC 404\n\nAn EC GET keeps asking nodes while responses are 404, since a fragment\nmay still be sat on a handoff, and the only way out of the collection\nloop is gathering ec_ndata durable fragments. So a node that accepts the\nconnection and then goes quiet holds up a 404 for a full\nrecoverable_node_timeout, even though it could hold at most one fragment\nwhere ec_ndata are needed to reconstruct.\n\nEvery node is still asked; only the last outstanding reply is abandoned,\nand only when the responses already collected answer 404. Deciding that\nis fiddlier than it looks, because best_response() derives its quorum\nfrom the responses collected, and ranks a class by highest status rather\nthan by count - see may_stop_at_404().\n\nThis is deliberately partial. HEAD takes the GETorHEAD_base path, and\nconditional or ranged GETs, or a GET that already gathered a fragment,\nstill wait out the timeout. recoverable_node_timeout remains the general\nlever for a cluster with a sick node.\n\nOne case does change: a durable fragment arriving from the abandoned node\nwould have suppressed the 404s and answered 503 instead. Master only\nreports that 503 when the fragment beats recoverable_node_timeout, so\nthis narrows an existing window rather than opening a new one.\ntest_GET_abandons_lone_slow_durable_frag pins the trade.\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\nChange-Id: I4a3bfe3a61c72cf44558761445debd350ea03d35\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/4fe38e947efb008c7173d68bc1a808a703ab6a92"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/4fe38e947efb008c7173d68bc1a808a703ab6a92"}]},"branch":"refs/heads/master"},"58567198339842c43924bd35ffee5c513f1754d8":{"kind":"REWORK","_number":3,"created":"2026-08-11 15:26:11.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/08/999808/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/08/999808/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/08/999808/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/08/999808/3"}}},"commit":{"parents":[{"commit":"b0f92bd978266f30c20cfc9b37c63f3df81a22a2","subject":"statsd: send None label values as an empty string","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b0f92bd978266f30c20cfc9b37c63f3df81a22a2"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-08-05 11:04:09.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-08-11 15:25:02.000000000","tz":120},"subject":"proxy: Don\u0027t wait out a lone slow node on a plain EC 404","message":"proxy: Don\u0027t wait out a lone slow node on a plain EC 404\n\nAn EC GET keeps asking nodes while responses are 404, since a fragment\nmay still reside on a handoff, and the only way out of the collection\nloop is gathering ec_ndata durable fragments. Consequently, one request\nthat accepts a connection and then goes quiet can hold up a 404 for a\nfull recoverable_node_timeout, even when that response and every further\nrequest it could unlock are too few to reconstruct the object.\n\nKeep issuing every backend request allowed by the existing limits, but\nstop waiting for the last outstanding reply once the collected responses\nanswer 404 and that reply, together with the remaining request budget,\ncannot gather ec_ndata fragments. Deciding that is fiddlier than it\nlooks because best_response() derives its quorum from the responses\ncollected and ranks a class by highest status rather than by count; see\nmay_stop_at_404().\n\nThis is deliberately partial. HEAD takes the GETorHEAD_base path, and\nconditional or ranged GETs, or a GET that already gathered a fragment,\nstill wait out the timeout. recoverable_node_timeout remains the general\nlever for a cluster with a sick node.\n\nOne case does change: a durable fragment arriving from the abandoned node\nwould have suppressed the 404s and answered 503 instead. Master only\nreports that 503 when the fragment beats recoverable_node_timeout, so\nthis narrows an existing window rather than opening a new one.\ntest_GET_abandons_lone_slow_durable_frag pins the trade.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: I4a3bfe3a61c72cf44558761445debd350ea03d35\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/58567198339842c43924bd35ffee5c513f1754d8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/58567198339842c43924bd35ffee5c513f1754d8"}]},"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"},{"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":""}}}]}
