)]}'
{"id":"openstack%2Foslo.messaging~960377","triplet_id":"openstack%2Foslo.messaging~master~I586c02ede5f999f9658d569969c9306be3592a01","project":"openstack/oslo.messaging","branch":"master","attention_set":{},"removed_from_attention_set":{"15334":{"account":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"last_update":"2025-11-17 09:55:19.000000000","reason":"Change was abandoned"},"9816":{"account":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"last_update":"2025-11-17 09:55:19.000000000","reason":"Change was abandoned"},"28522":{"account":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"last_update":"2025-11-17 09:39:03.000000000","reason":"\u003cGERRIT_ACCOUNT_28522\u003e replied on the change","reason_account":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"}},"11583":{"account":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"last_update":"2025-11-17 09:55:19.000000000","reason":"Change was abandoned"}},"hashtags":[],"change_id":"I586c02ede5f999f9658d569969c9306be3592a01","subject":"Implement cluster exchange limit detection logic.","status":"ABANDONED","created":"2025-09-10 13:36:05.000000000","updated":"2025-11-17 09:55:19.000000000","total_comment_count":28,"unresolved_comment_count":2,"has_review_started":true,"meta_rev_id":"107fd02740379d18356e6da090c1ea4e464a6220","_number":960377,"virtual_id_number":960377,"owner":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"tag":"autogenerated:zuul:check","value":1,"date":"2025-11-14 12:55:49.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"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":-1,"max":1},"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"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":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"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":-1,"max":1},"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"}],"REVIEWER":[{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-09-10 15:21:12.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2025-09-10 16:39:50.000000000","updated_by":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"reviewer":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"state":"REVIEWER"},{"updated":"2025-09-17 13:52:26.000000000","updated_by":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"reviewer":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"state":"REVIEWER"},{"updated":"2025-10-23 10:43:52.000000000","updated_by":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"reviewer":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"state":"CC"},{"updated":"2025-10-23 13:15:10.000000000","updated_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"reviewer":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"state":"REVIEWER"}],"messages":[{"id":"143adcd70c325d1ba5ebb94f4e9e7d543544690b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-09-10 13:36:05.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"27fb8200bb5df086e23bdbb7d9a31781c5058d6b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-09-10 13:40:01.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"b59316a847916ce5af8d71ca46a4e14408c7307d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-09-10 15:21:12.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7f2d3c22e245413e84108c862e58a2d8\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/01d2384c1dfb4660b8b3435f1a69827d : SUCCESS in 51m 22s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/886b3c309b3b43baa769739fd66ab5f8 : SUCCESS in 4m 20s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1900caeac5ba40188d3b859baee5bdda : SUCCESS in 2m 08s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/bcdadee42f73415eaababe8d21b6ccf5 : SUCCESS in 4m 45s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/2d9321c596f3468c91897c46d0164c26 : SUCCESS in 4m 22s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3e66f23263ce4225af1b137836fdc801 : SUCCESS in 7m 46s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b15f2fc6b153475fa0d06850a44c58e5 : SUCCESS in 3m 34s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/d76d66e37be440688f13baa3258d4d4b : SUCCESS in 4m 21s\n- oslo.messaging-tox-py310-func-scenario01 https://zuul.opendev.org/t/openstack/build/8a916c5abd5b48c3a36f69f3a8b4da78 : SUCCESS in 4m 40s\n- oslo.messaging-tox-py310-func-scenario02 https://zuul.opendev.org/t/openstack/build/93de5f57bba74a34aedaaad697a113d7 : FAILURE in 19m 27s (non-voting)\n- oslo.messaging-src-dsvm-full-rabbit https://zuul.opendev.org/t/openstack/build/5a9b82e9413b4ab0bbf00dd739ffd62a : SUCCESS in 1h 36m 46s\n- oslo.messaging-src-dsvm-full-kafka-hybrid https://zuul.opendev.org/t/openstack/build/ebcf9c59b3ab46de991f0a9e5c8ba05c : SUCCESS in 1h 40m 16s (non-voting)\n- oslo.messaging-grenade https://zuul.opendev.org/t/openstack/build/4d3639432f6646afb3b6bb142ac7120c : SUCCESS in 49m 17s (non-voting)\n- oslo.messaging-grenade-multinode https://zuul.opendev.org/t/openstack/build/3dfe0b5e798e400491fee70094f6303f : SUCCESS in 36m 16s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"a3e0e796ab5ae1ed31225213a5823feb520f816d","author":{"_account_id":11583,"name":"Arnaud Morin","email":"arnaud.morin@gmail.com","username":"arnaudmorin"},"date":"2025-09-10 16:39:50.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"f572ec14c86d72357522df135d1dab22b41357f0","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2025-09-17 13:52:26.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"57138cc1e65547cb05ac1aea6a0c158b0d9468ff","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2025-10-23 10:43:52.000000000","message":"Patch Set 2:\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"5cb384aa2db60331a9eefb693ef98337dcc75c56","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2025-10-23 13:15:10.000000000","message":"Patch Set 2: Code-Review-1\n\n(4 comments)","accounts_in_message":[],"_revision_number":2},{"id":"57a8cade0149be873db3abb6fc1b0502fc9bd9e7","author":{"_account_id":16137,"name":"Tobias Urdin","email":"tobias.urdin@binero.com","username":"tobasco"},"date":"2025-10-27 14:41:18.000000000","message":"Patch Set 2: -Code-Review","accounts_in_message":[],"_revision_number":2},{"id":"57a01fde68c65abdde805550b386dba0b4bb64cc","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-04 12:52:24.000000000","message":"Patch Set 2:\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"ba77edd8b54e6daca47aa3d81edec77af90c1957","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-04 12:54:39.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"59e9567c5c52510d397a85bea50147b7bc9f8b55","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-04 13:13:16.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Code-Review+1, Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1\n","accounts_in_message":[],"_revision_number":3},{"id":"25b1bd3d357f8b78dd272fbd85dd2c11e2e19580","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-04 13:16:12.000000000","message":"Patch Set 2:\n\n(5 comments)","accounts_in_message":[],"_revision_number":2},{"id":"8b5dfb5037966f0b41099d35c78cfa2b643a874c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-04 15:09:27.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/f0fb3cc0f39244e19a356541be0a3fa0\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/f4c829600b7e4f7b88595de03529bdf2 : SUCCESS in 1h 44m 40s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/226b6985a1ac4e3d98a43a150a166672 : SUCCESS in 5m 27s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/65c980e5e3ae4c0dafc22b5fa69bf5f9 : SUCCESS in 3m 16s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/29abeeb7f52844ee8a5ac7b52c90cb5d : SUCCESS in 4m 25s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3d41e5fa725f46ca9b3012a834880e54 : SUCCESS in 7m 47s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/67b91b99bb164c05a0585a0ea67646ff : SUCCESS in 3m 18s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b24b626142354563b7365e0d109a538c : SUCCESS in 3m 31s\n- oslo.messaging-tox-py310-func-scenario01 https://zuul.opendev.org/t/openstack/build/36516798961c4a99af424ad556bc4621 : SUCCESS in 6m 17s\n- oslo.messaging-tox-py310-func-scenario02 https://zuul.opendev.org/t/openstack/build/e5c12a10e99c4be387c9acbb4dedb6bf : FAILURE in 7m 48s (non-voting)\n- oslo.messaging-src-dsvm-full-rabbit https://zuul.opendev.org/t/openstack/build/bac9470f6d23454097b9a0bac14574b3 : SUCCESS in 1h 51m 17s\n- oslo.messaging-src-dsvm-full-kafka-hybrid https://zuul.opendev.org/t/openstack/build/39ca4e624b2649dbaa2350c72c28910b : SUCCESS in 1h 46m 21s (non-voting)\n- oslo.messaging-grenade https://zuul.opendev.org/t/openstack/build/76a0b1e1bb4f4a01ae352507c58910fa : SUCCESS in 58m 49s (non-voting)\n- oslo.messaging-grenade-multinode https://zuul.opendev.org/t/openstack/build/f87acccd05464316b8b631c9d78cb2a5 : FAILURE in 1h 00m 05s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"01219e725f036497778f492ef4f38e41d72922d5","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2025-11-10 15:14:39.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"787a06ead6b2d2b3a226dd005e0b081730968197","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2025-11-10 15:39:55.000000000","message":"Patch Set 3:\n\n(3 comments)","accounts_in_message":[],"_revision_number":3},{"id":"62888e73786e8a5424ba806f4726f56b5d816239","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-12 09:07:27.000000000","message":"Uploaded patch set 4.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":4},{"id":"e69e027dbd5a1ddfd328c12218b06df209549a63","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-12 09:08:41.000000000","message":"Uploaded patch set 5: Commit message was updated.","accounts_in_message":[],"_revision_number":5},{"id":"a50ea7470c33407613bbf85a1e9cbb1be87e076f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-12 09:13:00.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"dad171ec7ec7b85a1f8029e2210b1b0efd98945e","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-12 09:14:33.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"af1b37feb66da7a53a920fed1c1422a4e001e94a","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-12 09:17:07.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"4cf6c4c0dab7e2f07d9d439206e669c9c169c77d","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-12 11:13:29.000000000","message":"Patch Set 6: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/af640c76d9ea409eb2cfa470c5166880\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/5806e23f478a4b4e8c86a6d53f579f77 : SUCCESS in 1h 53m 41s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/7c36743894324552acc033fe871773ca : SUCCESS in 5m 25s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/54e09030edcf4d87aeb1e277ae1fc696 : SUCCESS in 2m 52s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/8a07c406169944698407a56b0ced7fb6 : SUCCESS in 4m 58s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/41c857101eef446283fea6bd33760586 : SUCCESS in 5m 56s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3ca9cab135f74a65a62031c8683f17dc : SUCCESS in 4m 52s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/5c324d282fd246358e9e55bf580f81cf : SUCCESS in 5m 26s\n- oslo.messaging-tox-py310-func-scenario01 https://zuul.opendev.org/t/openstack/build/255121a9e503439fb6ec3eb650681509 : SUCCESS in 5m 00s\n- oslo.messaging-tox-py310-func-scenario02 https://zuul.opendev.org/t/openstack/build/1a2b0209984d4bec885424fffe2c70e4 : FAILURE in 21m 07s (non-voting)\n- oslo.messaging-src-dsvm-full-rabbit https://zuul.opendev.org/t/openstack/build/9503ce4ee1444ba68366bb64a3d7b4f8 : SUCCESS in 1h 27m 53s\n- oslo.messaging-src-dsvm-full-kafka-hybrid https://zuul.opendev.org/t/openstack/build/80da5c975b70470c914ac71b285c59ad : SUCCESS in 1h 54m 45s (non-voting)\n- oslo.messaging-grenade https://zuul.opendev.org/t/openstack/build/3aebca67bcc74a1e921a4ef9e0eb53a7 : SUCCESS in 54m 23s (non-voting)\n- oslo.messaging-grenade-multinode https://zuul.opendev.org/t/openstack/build/13100e2f89c74189a3b594760ece6365 : SUCCESS in 1h 10m 48s (non-voting)","accounts_in_message":[],"_revision_number":6},{"id":"425fbb12d258b417844ab30ae03a3e7474414704","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2025-11-13 10:13:24.000000000","message":"Patch Set 6:\n\n(4 comments)","accounts_in_message":[],"_revision_number":6},{"id":"f71ea0e0178cc81a2b336b7f0bbbb1e56659f3d6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-14 10:38:32.000000000","message":"Uploaded patch set 7.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":7},{"id":"4d3eef47b94feb32261c4b4c788db1c0635a929d","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-14 10:38:50.000000000","message":"Patch Set 6:\n\n(1 comment)","accounts_in_message":[],"_revision_number":6},{"id":"e43ede7cee650f73bb7e84e0f2d2cc206dd27e71","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-11-14 12:55:49.000000000","message":"Patch Set 7: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/376d2210768047c68b6ea4c37a2246d9\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/fbd62893329c468886fd69c40670facd : SUCCESS in 1h 14m 06s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/af9958c32f9541738271df37e90ccd42 : SUCCESS in 3m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1a0718f8e3cd4af4ad42e86e304c099e : SUCCESS in 5m 05s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/ddf9f0219f3e4f45b591e16aff0919c4 : SUCCESS in 4m 18s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/f8c8809ed1554ee1bae33e56c09fd9fe : SUCCESS in 5m 49s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/99e37e5889404e8d9dae45039acef433 : SUCCESS in 5m 10s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/8dae707591a74ee6bbcd6390fa72da04 : SUCCESS in 3m 51s\n- oslo.messaging-tox-py310-func-scenario01 https://zuul.opendev.org/t/openstack/build/3655449004504d15a7dda296347d189d : SUCCESS in 4m 53s\n- oslo.messaging-tox-py310-func-scenario02 https://zuul.opendev.org/t/openstack/build/9d299c504c9d4b6ebbe23adf2e4740b1 : FAILURE in 11m 13s (non-voting)\n- oslo.messaging-src-dsvm-full-rabbit https://zuul.opendev.org/t/openstack/build/88e5f38d84734fda8f29a371127257a5 : SUCCESS in 1h 39m 09s\n- oslo.messaging-src-dsvm-full-kafka-hybrid https://zuul.opendev.org/t/openstack/build/564301014b694e9eb3fa94a8bb70383c : SUCCESS in 2h 06m 16s (non-voting)\n- oslo.messaging-grenade https://zuul.opendev.org/t/openstack/build/e04df6a7b2534514b80bc93073ac53c4 : SUCCESS in 1h 04m 07s (non-voting)\n- oslo.messaging-grenade-multinode https://zuul.opendev.org/t/openstack/build/da9ff860dc9b4417802dd89f60a00b76 : SUCCESS in 1h 11m 27s (non-voting)","accounts_in_message":[],"_revision_number":7},{"id":"e9e1f46e77a7f4a68573fb4ed9a581d67a710b9b","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-17 08:53:44.000000000","message":"Patch Set 7:\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"7bbb0b36d469f2cd012e51c8cf75656613f8c4f8","author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"date":"2025-11-17 09:27:16.000000000","message":"Patch Set 7:\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"5b66d98414880db5b56a4b06a07027c33969954f","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-17 09:39:03.000000000","message":"Patch Set 7:\n\n(1 comment)","accounts_in_message":[],"_revision_number":7},{"id":"107fd02740379d18356e6da090c1ea4e464a6220","tag":"autogenerated:gerrit:abandon","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2025-11-17 09:55:19.000000000","message":"Abandoned\n\nTakashi proposed a better approach, so I decided to abandon my proposal in favor of the one proposed by Takashi https://review.opendev.org/c/openstack/oslo.messaging/+/967305","accounts_in_message":[],"_revision_number":7}],"current_revision_number":7,"current_revision":"153e2967c5ffc60305c4566023e1d525ac40573d","revisions":{"670ca75fd218cbe3bdec78060e8a74413c142210":{"kind":"REWORK","_number":1,"created":"2025-09-10 13:36:05.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/1"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:35:48.000000000","tz":120},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then a warning is logged and\nan ``ExchangeLimitReached`` exception is raised to allow\nupper layers to implement a retry strategy.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/670ca75fd218cbe3bdec78060e8a74413c142210"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/670ca75fd218cbe3bdec78060e8a74413c142210"}]},"branch":"refs/heads/master"},"c2e381aa2db177b71f46a1babfeb76c2a75af042":{"kind":"REWORK","_number":2,"created":"2025-09-10 13:40:01.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/2"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:39:53.000000000","tz":120},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then a warning is logged and\nan ``ExchangeLimitReached`` exception is raised to allow\nupper layers to implement a retry strategy.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/c2e381aa2db177b71f46a1babfeb76c2a75af042"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/c2e381aa2db177b71f46a1babfeb76c2a75af042"}]},"branch":"refs/heads/master"},"2a2a76f74f794f98c40abdfb13030eb11a15a94b":{"kind":"REWORK","_number":3,"created":"2025-11-04 13:13:16.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/3"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-11-04 13:11:54.000000000","tz":60},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then a warning is logged and\nan ``ExchangeLimitReached`` exception is raised to allow\nupper layers to implement a retry strategy.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/2a2a76f74f794f98c40abdfb13030eb11a15a94b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/2a2a76f74f794f98c40abdfb13030eb11a15a94b"}]},"branch":"refs/heads/master"},"c5d2ace7fb7c73b00e2737c64ab3b3c481f9d7d2":{"kind":"REWORK","_number":4,"created":"2025-11-12 09:07:27.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/4"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-11-12 09:06:51.000000000","tz":60},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then a warning is logged and\nan ``ExchangeLimitReached`` exception is raised to allow\nupper layers to implement a retry strategy.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/c5d2ace7fb7c73b00e2737c64ab3b3c481f9d7d2"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/c5d2ace7fb7c73b00e2737c64ab3b3c481f9d7d2"}]},"branch":"refs/heads/master"},"40ab573e9e0504c4899468f9f7db31ee7e306cdd":{"kind":"NO_CODE_CHANGE","_number":5,"created":"2025-11-12 09:08:41.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/5"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-11-12 09:07:58.000000000","tz":60},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then an ``ExchangeLimitReached``\nexception is raised to allow upper layers to implement\na retry strategy.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/40ab573e9e0504c4899468f9f7db31ee7e306cdd"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/40ab573e9e0504c4899468f9f7db31ee7e306cdd"}]},"branch":"refs/heads/master"},"3bc41510c37bbbdf3ef407dafa0357e784e63f60":{"kind":"REWORK","_number":6,"created":"2025-11-12 09:13:00.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/6"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-11-12 09:12:38.000000000","tz":60},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then an ``ExchangeLimitReached``\nexception is raised to allow upper layers to implement\na retry strategy.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/3bc41510c37bbbdf3ef407dafa0357e784e63f60"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/3bc41510c37bbbdf3ef407dafa0357e784e63f60"}]},"branch":"refs/heads/master"},"153e2967c5ffc60305c4566023e1d525ac40573d":{"kind":"REWORK","_number":7,"created":"2025-11-14 10:38:32.000000000","uploader":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"ref":"refs/changes/77/960377/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.messaging","ref":"refs/changes/77/960377/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.messaging refs/changes/77/960377/7"}}},"commit":{"parents":[{"commit":"56921bcf7f08ad29c19ae8767c694099f0d83450","subject":"Update master for stable/2025.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/56921bcf7f08ad29c19ae8767c694099f0d83450"}]}],"author":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-09-10 13:27:15.000000000","tz":120},"committer":{"name":"Hervé Beraud","email":"hberaud@redhat.com","date":"2025-11-14 10:37:20.000000000","tz":60},"subject":"Implement cluster exchange limit detection logic.","message":"Implement cluster exchange limit detection logic.\n\nSince version 4.1.4 RabbitMQ allow to configure a limit [1][2]\non the cluster-wide number of exchanges that applications.\n\nThis new RabbitMQ feature is a guard against applications\nthat leak resources. However oslo.messaging as a client lib\nis not prepared in case operators decide to setup this limit.\n\nThis patch implement the logic to detect when the exchange\nlimit is reached when a publisher try to declare a new\nexchange.\n\nIf this situation is detected then an ``ExchangeLimitReached``\nexception is raised to allow upper layers to implement\na retry strategy.\n\nUpper layer could implement an optional retry mechanism with\na configurable failure rate, applying a threshold-based\nfailure-aware decision pattern to enable smarter,\nadaptive handling. A kind of upper layer opt-in logic that\ncould allow to choose between best effort mode vs fail fast modes.\n\n[1] https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.1.4\n[2] https://github.com/rabbitmq/rabbitmq-server/pull/14339/files\n\nChange-Id: I586c02ede5f999f9658d569969c9306be3592a01\nSigned-off-by: Hervé Beraud \u003chberaud@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/153e2967c5ffc60305c4566023e1d525ac40573d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.messaging/commit/153e2967c5ffc60305c4566023e1d525ac40573d"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"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":{}}},{"name":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"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":{}}},{"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":{}}}]}
