)]}'
{"id":"openstack%2Fswift~1005517","triplet_id":"openstack%2Fswift~feature%2Fthreaded~Ifa08e2734fbfaf5ba618defb225dcf1742ded3bf","project":"openstack/swift","branch":"feature/threaded","topic":"eventlet-removal","attention_set":{},"removed_from_attention_set":{"6968":{"account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"last_update":"2026-09-18 08:24:28.000000000","reason":"\u003cGERRIT_ACCOUNT_6968\u003e replied on the change","reason_account":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"}}},"hashtags":[],"change_id":"Ifa08e2734fbfaf5ba618defb225dcf1742ded3bf","subject":"gunicorn: poll the ring in the per-port supervisor","status":"MERGED","created":"2026-09-14 09:41:39.000000000","updated":"2026-09-18 09:47:20.000000000","submitted":"2026-09-18 09:45:19.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"1005517-eventlet-removal","meta_rev_id":"5c08e20fabdcab634fef4d32daa6df3a5a976ab0","_number":1005517,"virtual_id_number":1005517,"owner":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-09-18 09:45:19.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"all":[{"value":2,"date":"2026-09-18 08:24:28.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"all":[{"value":1,"date":"2026-09-18 08:24:28.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-09-14 10:30:42.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-14 11:30: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":"REVIEWER"}],"messages":[{"id":"999ddfac526bfca615e269c87e1e0963122f8f55","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-14 09:41:39.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"651bf3652d48198946b473948bb88de92375f955","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-14 10:30:42.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7c2546edd3284ed6a87ac2dcafeadf69\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/e654e313b1104881b60dc2d947fccf63 : SUCCESS in 34m 29s","accounts_in_message":[],"_revision_number":1},{"id":"f82afe270e860b0d10f3ef2dde1e9c347a90a7f8","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-14 11:30:37.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/147de9f2c4ad4ace832cd32b60746b10\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2ae04e16120542d1b0cf625e2358346e : SUCCESS in 13m 26s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/27e2ede6fd3c41ebb9ada71b2c269187 : SUCCESS in 13m 33s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/a94f3c28a1204831b8e2b35a6a13ac28 : SUCCESS in 20m 37s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/c5b9c91085344b699e3571cc47505758 : SUCCESS in 24m 57s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/89acbb9492aa43a0a55ea1406c04d032 : SUCCESS in 21m 00s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/8b8e7d3198744027bef746900a42148e : SUCCESS in 7m 55s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/af589593e659423f897e47ad756bf7de : SUCCESS in 22m 28s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/d0eb21a28624490dbb037ac4fdc3a9c7 : SUCCESS in 20m 06s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/d883914fb78b47f79687de137f1675fd : SUCCESS in 40m 44s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/f295f17096644107a1f2ad2cb89e2991 : SUCCESS in 20m 00s\n- swift-tox-py3-no-eventlet https://zuul.opendev.org/t/openstack/build/60989a9ae7284061ae9975c0bbd3c973 : TIMED_OUT in 1h 33m 06s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/4fefbd317bf64515bf1aa66c09869b6c : SUCCESS in 14m 37s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/480eeeaf84f84df1b1eeef67857ae6e5 : SUCCESS in 17m 03s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/3f65ab9c42c540bf8de8a8e34da90d07 : SUCCESS in 17m 11s\n- swift-tox-func-no-eventlet-py312 https://zuul.opendev.org/t/openstack/build/47841399f1bd44e19ce706bf604809d1 : SUCCESS in 15m 44s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/a1284cefd17447329572b860e7826bb5 : SUCCESS in 20m 14s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/a35b724e77cd4929b29f6f950984eb31 : SUCCESS in 8m 06s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/e10795174cbc4bf5952c228bbc9e0d82 : FAILURE in 34m 40s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/8aee8343077d448a8184a40a9b743f04 : SUCCESS in 10m 04s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/5716036403a54f14be6d11c0627b53d7 : SUCCESS in 1h 04m 45s\n- swift-probetests-no-eventlet-centos-9-stream https://zuul.opendev.org/t/openstack/build/2d25c04e20b4476e8046c21ec3e88fed : SUCCESS in 1h 00m 19s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/58462c38f08447e8be83aa2deda35673 : SUCCESS in 26m 52s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b622fd84e2c8433d9c0b3c0e8d631378 : SUCCESS in 5m 27s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/46810a03f03b4c33b116002f1aac9483 : SUCCESS in 27m 11s\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":1},{"id":"343a4f65ef8367a0621da8596e3d1931457d1dd8","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-15 15:47:12.000000000","message":"Uploaded patch set 2: Patch Set 1 was rebased.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"656a4b63b9002ef2465e380c7c22e1877aac90c3","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-15 16:59:58.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6b5a144c4dae4623acd2661704eb1e5d\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/6e8eeb8ed36f485c86307ffaa4c7a79d : SUCCESS in 33m 44s","accounts_in_message":[],"_revision_number":2},{"id":"c9cc24ff637c8aaba4ebfd690dd63d7c97f83a5f","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-15 17:15:16.000000000","message":"Patch Set 2: 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/02b1f4509d0c4e4d907615d954ea39b3\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bf092d9747164fbfb8f8c69c9b1c0306 : SUCCESS in 6m 38s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a983c1e601e0479ca1b85e85ab06434b : SUCCESS in 11m 53s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/6e0d11deac3148ca858cfcbcc1346aa4 : SUCCESS in 22m 23s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/85604cd2884c4531b280bcf67e439884 : SUCCESS in 16m 11s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/503635d92ec04bcb902876401741c6b2 : SUCCESS in 15m 20s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/4dbe95caac8a4ba5a8bd5095633f1bfa : SUCCESS in 9m 54s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/653d87cdcec04ad0b1b1ce51e595cfc7 : SUCCESS in 24m 31s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/8e3a807491ab430ab937e107f6914293 : SUCCESS in 25m 57s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/7671e9fd33ce439fab520db7648de442 : SUCCESS in 35m 16s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/ed110fd4595640c287153bef2a32fb80 : SUCCESS in 23m 20s\n- swift-tox-py3-no-eventlet https://zuul.opendev.org/t/openstack/build/3f1bb0516dba44f8860b3b43a9d65d5f : FAILURE in 31m 33s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/04524a5d3bea4dbc84fbba571472aa37 : SUCCESS in 13m 27s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/4233808a89e841ecafde62ebd66e3699 : SUCCESS in 16m 45s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/75fadf2f1e3443698f89514eeb840692 : SUCCESS in 14m 20s\n- swift-tox-func-no-eventlet-py312 https://zuul.opendev.org/t/openstack/build/dcb7e63cc5e0482095548e7283d1cb43 : SUCCESS in 13m 16s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/70a071a7dc3a460baf80fdd63912ab31 : SUCCESS in 19m 58s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/054acf1fc6434629837d496f3c1676c7 : SUCCESS in 7m 38s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/b2c692d3989643feb7426dbffa23f612 : FAILURE in 17m 45s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/bee5f2c04e2c42f6ba5ba04fc87d6cb4 : SUCCESS in 5m 47s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/f251356d194948b49fe89d30d8f45327 : SUCCESS in 1h 02m 41s\n- swift-probetests-no-eventlet-centos-9-stream https://zuul.opendev.org/t/openstack/build/ee01ceca00af419faacca3ea4e720701 : SUCCESS in 1h 01m 52s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/02084d4cdef440e186a551f2ee7851c6 : SUCCESS in 34m 33s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b89c32c4759a458f949a0c8595df424b : FAILURE in 4m 45s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/5427c141c12e47bd9235e71f884fccf7 : SUCCESS in 11m 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-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":2},{"id":"e5886be7a493f7bd0573ec2ff8273257cb89b8be","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-16 13:39:54.000000000","message":"Uploaded patch set 3: Patch Set 2 was rebased.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"3ead940b3ca5da35bae510844ade22c7a30c53e0","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-16 15:26:18.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c79381ad82fa450cbed4ac792220d67b\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/78f94949228345068d1b38996d5e882a : SUCCESS in 9m 59s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/671c28529d6546a89469b769af9d5b04 : SUCCESS in 11m 47s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/6df318f814fa4d91bb145572b9274eb8 : SUCCESS in 18m 34s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/68c2f928c8a64fc896f36b83bbcfb544 : SUCCESS in 12m 49s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/be0f835cd7784e97864ad225273c97ea : SUCCESS in 21m 11s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/288290b44a9341d2bed948ec95431547 : SUCCESS in 9m 16s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/4531124b4e604f5bbe26c827dd319e2b : SUCCESS in 14m 08s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/398db55066cd419abcd8cd925c5ef57b : SUCCESS in 24m 03s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/bea1eac83ab84588a155d29116fcde44 : SUCCESS in 15m 50s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/f17fb59c95a3400fb0d16f55e144ec50 : SUCCESS in 12m 18s\n- swift-tox-py3-no-eventlet https://zuul.opendev.org/t/openstack/build/79a6e6186b064395a65ac7625d54083d : SUCCESS in 31m 45s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/7dabb69e637746ef814b03ebb223031c : SUCCESS in 16m 47s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/352793f6b8ad4de4bf82eb7255d2735b : SUCCESS in 14m 10s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/7537cf6e889546e2aa198623b0182e9d : SUCCESS in 11m 12s\n- swift-tox-func-no-eventlet-py312 https://zuul.opendev.org/t/openstack/build/1bae516775ca41fb99fba3fc69a11d8b : SUCCESS in 17m 04s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/9c2701510f15432bb708c1f02b13e73f : SUCCESS in 19m 34s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/5f37faf93455464188c2cb0d8b0687d5 : SUCCESS in 7m 06s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/8f27d36c85d74e8eb0a482ebe2613f1f : FAILURE in 36m 24s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/a9f1c556114e4dc2a702e67725ee7dc5 : SUCCESS in 7m 10s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/fc3798b5a3164826879aef0e58c6e482 : SUCCESS in 1h 07m 00s\n- swift-probetests-no-eventlet-centos-9-stream https://zuul.opendev.org/t/openstack/build/98df4ac0fa4a4a5f8bcc1fd7dbe5148e : SUCCESS in 42m 42s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/1d211ae309ae49498cb3f9d920203adb : SUCCESS in 12m 13s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e1896a397d534aab96a8b7658c3fcd24 : SUCCESS in 3m 25s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/f1f735f869c449689cd28e4a7578853a : SUCCESS in 21m 08s\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":"9370c14b0f00b577319aa22094ce088e6ee5cb9e","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-16 18:38:38.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/58dd1da317de4fea9e96e3a47efa4e37\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/bdc40af473d442a9992ed15ec4b5e6fe : SUCCESS in 1h 08m 55s","accounts_in_message":[],"_revision_number":3},{"id":"115266be57b547b50c8b2abbb4fc68e9f16c0de6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-18 07:09:03.000000000","message":"Uploaded patch set 4: Patch Set 3 was rebased.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":4},{"id":"cb238f55e9604b51bb1ec53bfa91e953fc94897b","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 07:48:55.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d3000d48c5ef4577ba9c6c3369b167fc\n\n- swift-tox-py312-arm64 https://zuul.opendev.org/t/openstack/build/dc66856d47c84a1c9d6797bc67775619 : SUCCESS in 35m 11s","accounts_in_message":[],"_revision_number":4},{"id":"cf697cf31ea608208b7e92716eed5e05944f9c10","author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"date":"2026-09-18 08:24:28.000000000","message":"Patch Set 4: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"6ca65db54c08d95757bda0c8de99b465dde4052d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 08:36:00.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/1224e5e4ef74455aac759dd76fd3d31e\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b2fb3a9b948a45bc856888ad0d7840c1 : SUCCESS in 7m 19s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a8ebbf57b3884522ad905c0c20ed56ad : SUCCESS in 5m 45s\n- swift-tox-func-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/6d3bbcdc2595450a89915934683dd427 : SUCCESS in 19m 01s (non-voting)\n- swift-tox-func-encryption-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/a1406ae7a2524db5bc3bd23bf7d04f2c : SUCCESS in 22m 34s (non-voting)\n- swift-tox-func-ec-py39-centos-9-stream-fips https://zuul.opendev.org/t/openstack/build/7a87430bb99d42618bfbfacc0a0b3816 : SUCCESS in 20m 42s (non-voting)\n- swift-build-image https://zuul.opendev.org/t/openstack/build/4f2021a474e34b7d833e0779263115a8 : SUCCESS in 7m 43s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/de8e2c65c2d54ff7b10b367622436002 : SUCCESS in 11m 14s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/7e14f8bb4137431cb8156e503436910f : SUCCESS in 24m 15s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/15921dfe137c4957bac8216af86f6bf8 : SUCCESS in 32m 40s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/58f6d465b2be4f0bbb32b26317875c90 : SUCCESS in 22m 07s\n- swift-tox-py3-no-eventlet https://zuul.opendev.org/t/openstack/build/11ef997087124751a95cf99461b3888b : SUCCESS in 30m 58s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/e2b5340231954d7aa4ea685537db5880 : SUCCESS in 15m 04s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/00d4700d0d4f418388471732c6934652 : SUCCESS in 8m 42s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/19dd4dc04107463f9d93089bec24f7b5 : SUCCESS in 16m 06s\n- swift-tox-func-no-eventlet-py312 https://zuul.opendev.org/t/openstack/build/335e531831924b6caa57860c7a26c2a7 : SUCCESS in 9m 19s\n- swift-tox-func-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/fcc83dfe30f74257ba506aaa0eeb109d : SUCCESS in 14m 42s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/2e1fa66c2ee840c7a6e8cd2edc33d6f6 : SUCCESS in 4m 53s\n- swift-tox-func-ceph-s3tests-tempauth https://zuul.opendev.org/t/openstack/build/955299b9df4746abbe1eece979df4b76 : FAILURE in 29m 53s (non-voting)\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/1e771fb6447f4f5d820413687f8e8dae : SUCCESS in 8m 25s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/ba9ddd6df3d14c28b8371ffe567adffb : SUCCESS in 1h 08m 54s\n- swift-probetests-no-eventlet-centos-9-stream https://zuul.opendev.org/t/openstack/build/efda6c3dbf42471bbaf8fbec6e5485e4 : SUCCESS in 55m 26s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/08344812c04443749998310323996ad0 : SUCCESS in 32m 28s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/67af7bd0ca7f4acba757d861f235c536 : SUCCESS in 4m 40s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/2b17f23a91664983bb2d37b3620d803a : SUCCESS in 19m 50s\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":4},{"id":"59f1085309ed3abafdd7ac8b2727195b79488c49","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 08:36:38.000000000","message":"Patch Set 4: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":4},{"id":"38a8a53e926f6f582c913b8c92757cbbe0dbad7a","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 09:45:19.000000000","message":"Patch Set 4: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a3f31a607a9240108dd43650b5a08a1f\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/eedc4b0eae934f48888696dc02be1827 : SUCCESS in 10m 45s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/01008e96ab1641dca1f4d1b976a23a6e : SUCCESS in 10m 10s\n- swift-upload-image https://zuul.opendev.org/t/openstack/build/261b43c3799345ccb7f16b61ddfda3f0 : SUCCESS in 10m 01s (non-voting)\n- swift-tox-py37 https://zuul.opendev.org/t/openstack/build/427f2d31f9904f7bac0b1583f372c3d8 : SUCCESS in 27m 00s\n- swift-tox-py310 https://zuul.opendev.org/t/openstack/build/fd5b4299cd09425cbf9501387ce32f03 : SUCCESS in 23m 41s\n- swift-tox-py313 https://zuul.opendev.org/t/openstack/build/96e411bc89c34a8da9e73eb03c4c77ad : SUCCESS in 37m 22s\n- swift-tox-py314 https://zuul.opendev.org/t/openstack/build/2905a1f1f01444fba231c13b9b11ee5b : SUCCESS in 24m 54s\n- swift-tox-func-py312 https://zuul.opendev.org/t/openstack/build/2e62f1a418a84c71afe2cc015b19d9df : SUCCESS in 16m 12s\n- swift-tox-func-encryption-py312 https://zuul.opendev.org/t/openstack/build/48af75141fa94edf8428513a3618d223 : SUCCESS in 16m 33s\n- swift-tox-func-ec-py312 https://zuul.opendev.org/t/openstack/build/9c7705d362b143fd8857b3564e69c22d : SUCCESS in 15m 12s\n- swift-func-cors https://zuul.opendev.org/t/openstack/build/3e30c86c58194028852dd29c49064354 : SUCCESS in 6m 24s\n- swift-tox-func-s3api-compat-tests-tempauth https://zuul.opendev.org/t/openstack/build/cff441453a4c49f6b60739be2d64976e : SUCCESS in 9m 13s\n- swift-probetests-centos-9-stream https://zuul.opendev.org/t/openstack/build/b57085d79f0e4a02b0b40df06f214835 : SUCCESS in 1h 07m 04s\n- swift-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/52beb270fd1445329e0c5d94215961c4 : SUCCESS in 31m 49s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/fb1d319dd24c43b7b971f2c9009aae5b : SUCCESS in 4m 34s\n- swift-multinode-rolling-upgrade https://zuul.opendev.org/t/openstack/build/738012fa67cc4cc484e0848dd7ee8ae0 : SUCCESS in 20m 34s","accounts_in_message":[],"_revision_number":4},{"id":"edbda88fbd3a23e5fcf733773fa5619a27e990f9","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 09:45:19.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":4},{"id":"5c08e20fabdcab634fef4d32daa6df3a5a976ab0","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-09-18 09:47:20.000000000","message":"Patch Set 4:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/abf1af3d7375466395e3497e0e2ad1b5\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a741b283008c4207b36cd7bc4a412038 : SUCCESS in 1m 37s\n- swift-promote-image https://zuul.opendev.org/t/openstack/build/beb0dc107dc2492e8d7ecf0d75a66765 : SUCCESS in 1m 10s (non-voting)","accounts_in_message":[],"_revision_number":4}],"current_revision_number":4,"current_revision":"db4fe1a0d18e50dbe1b8920aa610afda89c7d0b6","revisions":{"9e734f713f05f06dc9646ae4f179de18e89836c4":{"kind":"REWORK","_number":1,"created":"2026-09-14 09:41:39.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/17/1005517/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/1005517/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/1005517/1"}}},"commit":{"parents":[{"commit":"0a8a73c577a20e35c4f3601180760b3b8b8d4790","subject":"gunicorn: drain a replaced worker until its requests complete","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/0a8a73c577a20e35c4f3601180760b3b8b8d4790"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-14 09:36:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-14 09:40:22.000000000","tz":120},"subject":"gunicorn: poll the ring in the per-port supervisor","message":"gunicorn: poll the ring in the per-port supervisor\n\nUnder eventlet, ServersPerPortStrategy re-read the ring every\nring_check_interval (15s) with no operator action. The per-port\nsupervisor re-read the ring only on SIGHUP, so a rebalance that\nchanged local ports needed a reload on the node.\n\nPoll the ring at the same cadence in the supervisor loop. A new port\ngets an arbiter, and the arbiter of a removed port gets SIGTERM. A\nbad read keeps the running set, and the next interval tries again.\n\nOne gap against eventlet remains: a removed port takes the arbiter\nstop path, so its requests get graceful_timeout (5s) before SIGKILL,\nwhere eventlet drained them without a limit.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ifa08e2734fbfaf5ba618defb225dcf1742ded3bf\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/9e734f713f05f06dc9646ae4f179de18e89836c4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/9e734f713f05f06dc9646ae4f179de18e89836c4"}]},"branch":"refs/heads/feature/threaded"},"c61e804b2d26d7ba62f3f449d32cd47e2d85998d":{"kind":"TRIVIAL_REBASE","_number":2,"created":"2026-09-15 15:47:12.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/17/1005517/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/1005517/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/1005517/2"}}},"commit":{"parents":[{"commit":"6a6c71fe55b7d6fb9c427850c3b69060ab7820d4","subject":"gunicorn: drain a replaced worker until its requests complete","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/6a6c71fe55b7d6fb9c427850c3b69060ab7820d4"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-14 09:36:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-15 13:21:07.000000000","tz":120},"subject":"gunicorn: poll the ring in the per-port supervisor","message":"gunicorn: poll the ring in the per-port supervisor\n\nUnder eventlet, ServersPerPortStrategy re-read the ring every\nring_check_interval (15s) with no operator action. The per-port\nsupervisor re-read the ring only on SIGHUP, so a rebalance that\nchanged local ports needed a reload on the node.\n\nPoll the ring at the same cadence in the supervisor loop. A new port\ngets an arbiter, and the arbiter of a removed port gets SIGTERM. A\nbad read keeps the running set, and the next interval tries again.\n\nOne gap against eventlet remains: a removed port takes the arbiter\nstop path, so its requests get graceful_timeout (5s) before SIGKILL,\nwhere eventlet drained them without a limit.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ifa08e2734fbfaf5ba618defb225dcf1742ded3bf\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/c61e804b2d26d7ba62f3f449d32cd47e2d85998d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/c61e804b2d26d7ba62f3f449d32cd47e2d85998d"}]},"branch":"refs/heads/feature/threaded"},"b3f5c76fbc5d361ce26413a38845e4e2bc66c83b":{"kind":"TRIVIAL_REBASE","_number":3,"created":"2026-09-16 13:39:54.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/17/1005517/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/1005517/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/1005517/3"}}},"commit":{"parents":[{"commit":"3e94d89e55d8d81d7834dd23f1c36e63be445619","subject":"gunicorn: drain a replaced worker until its requests complete","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/3e94d89e55d8d81d7834dd23f1c36e63be445619"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-14 09:36:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-16 13:31:49.000000000","tz":120},"subject":"gunicorn: poll the ring in the per-port supervisor","message":"gunicorn: poll the ring in the per-port supervisor\n\nUnder eventlet, ServersPerPortStrategy re-read the ring every\nring_check_interval (15s) with no operator action. The per-port\nsupervisor re-read the ring only on SIGHUP, so a rebalance that\nchanged local ports needed a reload on the node.\n\nPoll the ring at the same cadence in the supervisor loop. A new port\ngets an arbiter, and the arbiter of a removed port gets SIGTERM. A\nbad read keeps the running set, and the next interval tries again.\n\nOne gap against eventlet remains: a removed port takes the arbiter\nstop path, so its requests get graceful_timeout (5s) before SIGKILL,\nwhere eventlet drained them without a limit.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ifa08e2734fbfaf5ba618defb225dcf1742ded3bf\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/b3f5c76fbc5d361ce26413a38845e4e2bc66c83b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/b3f5c76fbc5d361ce26413a38845e4e2bc66c83b"}]},"branch":"refs/heads/feature/threaded"},"db4fe1a0d18e50dbe1b8920aa610afda89c7d0b6":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2026-09-18 07:09:03.000000000","uploader":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"ref":"refs/changes/17/1005517/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/swift","ref":"refs/changes/17/1005517/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/swift refs/changes/17/1005517/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/swift refs/changes/17/1005517/4"}}},"commit":{"parents":[{"commit":"54638b30292ca1768ab95a7147129fafc6dc3a5a","subject":"gunicorn: drain a replaced worker until its requests complete","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/54638b30292ca1768ab95a7147129fafc6dc3a5a"}]}],"author":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-14 09:36:15.000000000","tz":120},"committer":{"name":"Christian Schwede","email":"cschwede@mailbox.org","date":"2026-09-18 07:03:32.000000000","tz":120},"subject":"gunicorn: poll the ring in the per-port supervisor","message":"gunicorn: poll the ring in the per-port supervisor\n\nUnder eventlet, ServersPerPortStrategy re-read the ring every\nring_check_interval (15s) with no operator action. The per-port\nsupervisor re-read the ring only on SIGHUP, so a rebalance that\nchanged local ports needed a reload on the node.\n\nPoll the ring at the same cadence in the supervisor loop. A new port\ngets an arbiter, and the arbiter of a removed port gets SIGTERM. A\nbad read keeps the running set, and the next interval tries again.\n\nOne gap against eventlet remains: a removed port takes the arbiter\nstop path, so its requests get graceful_timeout (5s) before SIGKILL,\nwhere eventlet drained them without a limit.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: Ifa08e2734fbfaf5ba618defb225dcf1742ded3bf\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/db4fe1a0d18e50dbe1b8920aa610afda89c7d0b6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/swift/commit/db4fe1a0d18e50dbe1b8920aa610afda89c7d0b6"}]},"branch":"refs/heads/feature/threaded"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
