)]}'
{"id":"openstack%2Fneutron-lib~903334","triplet_id":"openstack%2Fneutron-lib~stable%2F2023.2~Ie1e7be6d70cca957c1b1b6c15b402e8bc6523865","project":"openstack/neutron-lib","branch":"stable/2023.2","topic":"bug/2036607","attention_set":{},"removed_from_attention_set":{"16688":{"account":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"last_update":"2023-12-12 20:29:57.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ie1e7be6d70cca957c1b1b6c15b402e8bc6523865","subject":"Add the \"cancellable\" flag to the ``CallbacksManager`` events","status":"MERGED","created":"2023-12-11 11:58:25.000000000","updated":"2023-12-12 20:31:44.000000000","submitted":"2023-12-12 20:29:57.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":"903334-bug/2036607","meta_rev_id":"5e2afd28cf6147e457ca49cb4e93daa88f81c660","_number":903334,"virtual_id_number":903334,"owner":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2023-12-12 20:29:57.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":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"all":[{"value":2,"date":"2023-12-12 13:00:37.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"value":2,"date":"2023-12-12 18:38:11.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"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":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"all":[{"value":0,"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"value":1,"date":"2023-12-12 18:38:11.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"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},"Review-Priority":{"all":[{"value":0,"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"value":0,"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2023-12-11 14:00:20.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":"2023-12-12 13:00:37.000000000","updated_by":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"reviewer":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"state":"REVIEWER"},{"updated":"2023-12-12 18:38:11.000000000","updated_by":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"reviewer":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"state":"REVIEWER"}],"messages":[{"id":"ea9facf2b89d813001bb474f054c6609084e84b1","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2023-12-11 11:58:25.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"e37c2280cc71eb403a698091123c3bdedf525bda","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2023-12-11 11:58:44.000000000","message":"Uploaded patch set 2: New patch set was added with same tree, parent tree, and commit message as Patch Set 1.","accounts_in_message":[],"_revision_number":2},{"id":"7e557fbbe1bb2cadc20d405a14292d3b817e13e4","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-12-11 14:00:20.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\nhttps://zuul.opendev.org/t/openstack/buildset/8226ed9129b640f0af20f2a58bfcb8e1\n\n- requirements-check https://zuul.opendev.org/t/openstack/build/bb5f344c1f5a483d9f5b1f0dd3a43b33 : SUCCESS in 2m 12s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b9c37107f509475c919e97c36dc02485 : SUCCESS in 6m 45s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/498d34674a004179afa1a800e56a8330 : SUCCESS in 4m 33s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4c2c9db3aec142f098cc573167c900be : SUCCESS in 4m 14s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/57052c6b595e4415865830ea98dae3da : SUCCESS in 3m 43s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/8a2c1c97d2f44314953af417d9fd8ecb : SUCCESS in 4m 47s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/f9dbe0b8ff654b56a950ef2f1ce69ee0 : SUCCESS in 3m 34s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/1231c35a0beb42bb861666844041f3ba : SUCCESS in 4m 40s (non-voting)\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/db7fcd2b6afd4562a256de34d2c36f36 : SUCCESS in 1h 40m 06s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a1a624cc10a14fd7954b94dffe4b1c6c : SUCCESS in 3m 21s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/af9eb012a641411a8a2c1292c974f42b : FAILURE in 19m 36s\n- neutron-tempest-plugin-openvswitch-iptables_hybrid https://zuul.opendev.org/t/openstack/build/983d28a74d1a4a6ab7aa6b80032ff88f : FAILURE in 16m 52s\n- neutron-tempest-plugin-openvswitch-enforce-scope-old-defaults https://zuul.opendev.org/t/openstack/build/092232dc072f4e6989e0dade8d037c01 : SUCCESS in 1h 18m 40s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/642c3c84c3f140988af6e512e7d179eb : SUCCESS in 1h 24m 52s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/e61c9c80be694bc0a97d154c5323cfc4 : SUCCESS in 32m 43s\n- neutron-functional-with-uwsgi https://zuul.opendev.org/t/openstack/build/b850aa20fd8243d1b067441a594a6d8d : SUCCESS in 57m 54s","accounts_in_message":[],"_revision_number":2},{"id":"d21600e976d0610e883be552080631124522570a","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2023-12-12 12:01:12.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"6bcdc1fcbe18c25289d89f3620de4815814bc27e","author":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"date":"2023-12-12 13:00:37.000000000","message":"Patch Set 2: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"6b589576453effc988e7aaaf131a498e39d56f58","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-12-12 14:01:30.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/9d851069400941cea9529b8b3d8d7b57\n\n- requirements-check https://zuul.opendev.org/t/openstack/build/48aed0e0617b49bcab8ea8bf9b0f383b : SUCCESS in 2m 03s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/39f73453e74c49cf8c1ed6d47da26b7a : SUCCESS in 5m 31s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/aeadd85cd4f442ebad9031f62c481662 : SUCCESS in 4m 50s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/cb8a583243b1439caa2f1a9db3ef802f : SUCCESS in 3m 57s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/ae3c1310eace46d4a4b00ffbd145aa29 : SUCCESS in 3m 32s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/0063cfdcc6094a918be7df0851c534f7 : SUCCESS in 4m 10s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/1f8f8fed38bd481a82b3289cf2827783 : SUCCESS in 3m 23s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/995b11ceae8349dbbd631103ac8e2540 : SUCCESS in 3m 36s (non-voting)\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/406c6778fdff46aea2b985010e770cc3 : SUCCESS in 1h 19m 22s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b7052ee6fc0840c9bc88e1bb521b8fcd : SUCCESS in 3m 36s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/8708b37fd3eb407ab23301c365ab37c9 : SUCCESS in 1h 36m 45s\n- neutron-tempest-plugin-openvswitch-iptables_hybrid https://zuul.opendev.org/t/openstack/build/648bb980989949db84db2425c5b22bcb : SUCCESS in 1h 59m 11s\n- neutron-tempest-plugin-openvswitch-enforce-scope-old-defaults https://zuul.opendev.org/t/openstack/build/a8df69aca79e42f2b58514c399b4286f : SUCCESS in 1h 34m 03s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/346acefb2caa4ea599a09e35179946e3 : SUCCESS in 1h 45m 08s\n- neutron-tempest-plugin-designate-scenario https://zuul.opendev.org/t/openstack/build/1c7fb1a087ed4495899bcac90d0d7793 : SUCCESS in 37m 13s\n- neutron-functional-with-uwsgi https://zuul.opendev.org/t/openstack/build/5a5ac30011d64bb48231a1718047d57d : SUCCESS in 1h 06m 25s","accounts_in_message":[],"_revision_number":2},{"id":"3bf3341e593c1188e2fc670bccbc20613efd4470","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2023-12-12 18:38:11.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"aa8992b8bd6d41492c7dcf29c5e03091ec39e97c","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-12-12 18:38:42.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"9129f5e97e7701f00dfedb30b49f74490ab3e7ba","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-12-12 20:29:57.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/a2bd01bcf17644ffae80530954577d86\n\n- requirements-check https://zuul.opendev.org/t/openstack/build/dcf3feabfa624220b857bd2bb2cf35ca : SUCCESS in 1m 41s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2fb452585d424551bc9d06b35f452d79 : SUCCESS in 5m 51s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/99db9bc71f274fa2881662218eb2940d : SUCCESS in 3m 54s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/b450034c9cd24a0f9ba4b7711e5d7412 : SUCCESS in 3m 23s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/a59449b1f27e41e58b344fbc5d8d09af : SUCCESS in 3m 35s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/5de84536eeec49f68580ce408815ebab : SUCCESS in 3m 34s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/631869af0e694611814945f653276923 : SUCCESS in 1h 14m 46s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/a63972c56ac9432797b3529c437aef4d : SUCCESS in 3m 09s\n- neutron-tempest-plugin-openvswitch https://zuul.opendev.org/t/openstack/build/9645cd4fcdb846a4953bb557b6453767 : SUCCESS in 1h 18m 22s\n- neutron-tempest-plugin-ovn https://zuul.opendev.org/t/openstack/build/94d2d5fc1ca04044803753cc6cfcc344 : SUCCESS in 1h 23m 47s\n- neutron-tempest-plugin-openvswitch-iptables_hybrid https://zuul.opendev.org/t/openstack/build/9e220bacb5ee4706aab0ad802a351919 : SUCCESS in 1h 49m 44s\n- neutron-tempest-plugin-openvswitch-enforce-scope-old-defaults https://zuul.opendev.org/t/openstack/build/bb9ff9b403d9452bb02acfbace718d46 : SUCCESS in 1h 20m 15s\n- neutron-functional-with-uwsgi https://zuul.opendev.org/t/openstack/build/13a314bc1dae42bd83a19614c6672782 : SUCCESS in 1h 00m 23s","accounts_in_message":[],"_revision_number":2},{"id":"e2dc61084106d55ee75e909756db75980594af67","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-12-12 20:29:57.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"5e2afd28cf6147e457ca49cb4e93daa88f81c660","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2023-12-12 20:31:44.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c5c0db39abb54e16a9779f4b1cb93c8d\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c8a3788fc262449f9c4d3cd891276f5b : SUCCESS in 49s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/5b19b30a7d954cbfb96f6ccce1d78922 : SUCCESS in 55s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"2224f23ca50fc0b305e3d5ac232a74bd2e9770a6","revisions":{"32e9281d969f07be4c901e1e8e16d71f71867327":{"kind":"REWORK","_number":1,"created":"2023-12-11 11:58:25.000000000","uploader":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"ref":"refs/changes/34/903334/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/34/903334/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/1"}}},"commit":{"parents":[{"commit":"72d3c7b470a774fad3fe0e54761f0f9f8c92a6d8","subject":"Update TOX_CONSTRAINTS_FILE for stable/2023.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/72d3c7b470a774fad3fe0e54761f0f9f8c92a6d8"}]}],"author":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2023-09-11 14:30:47.000000000","tz":0},"committer":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2023-08-18 05:47:41.000000000","tz":0},"subject":"Add the \"cancellable\" flag to the ``CallbacksManager`` events","message":"Add the \"cancellable\" flag to the ``CallbacksManager`` events\n\nThe ``CallbacksManager`` class considers, by default, that the events\nstarting with \"before_\" and \"precommit_\" can raise an Exception\n(``CallbackFailure``) in case that the callbacks associated to these\nmethods exit with an error.\n\nHowever there are some other events (those started with \"after_\") that\nwon\u0027t generate an exception in case of error. The error will be logged\nbut the process will continue.\n\nThis new functionality adds the possibility of adding any kind of event\nand mark is as \"cancellable\". The ``CallbacksManager`` instance will check\nthe errors returned by the callback methods and if any of them is marked\nas \"cancellable\", the manager will raise a ``CallbackFailure`` exception,\nterminating the process.\n\nIn case of being a Neutron worker, for example, the\n``oslo_service.service.Services`` class will restart the process again.\n\nRelated-Bug: #2036607\nChange-Id: Ie1e7be6d70cca957c1b1b6c15b402e8bc6523865\n(cherry picked from commit 08b8c6d33b34de4be96116ed78835645dca9493a)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/32e9281d969f07be4c901e1e8e16d71f71867327"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/32e9281d969f07be4c901e1e8e16d71f71867327"}]},"branch":"refs/heads/stable/2023.2"},"2224f23ca50fc0b305e3d5ac232a74bd2e9770a6":{"kind":"NO_CHANGE","_number":2,"created":"2023-12-11 11:58:44.000000000","uploader":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"ref":"refs/changes/34/903334/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron-lib","ref":"refs/changes/34/903334/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron-lib refs/changes/34/903334/2"}}},"commit":{"parents":[{"commit":"72d3c7b470a774fad3fe0e54761f0f9f8c92a6d8","subject":"Update TOX_CONSTRAINTS_FILE for stable/2023.2","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/72d3c7b470a774fad3fe0e54761f0f9f8c92a6d8"}]}],"author":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2023-09-11 14:30:47.000000000","tz":0},"committer":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2023-08-18 05:48:14.000000000","tz":0},"subject":"Add the \"cancellable\" flag to the ``CallbacksManager`` events","message":"Add the \"cancellable\" flag to the ``CallbacksManager`` events\n\nThe ``CallbacksManager`` class considers, by default, that the events\nstarting with \"before_\" and \"precommit_\" can raise an Exception\n(``CallbackFailure``) in case that the callbacks associated to these\nmethods exit with an error.\n\nHowever there are some other events (those started with \"after_\") that\nwon\u0027t generate an exception in case of error. The error will be logged\nbut the process will continue.\n\nThis new functionality adds the possibility of adding any kind of event\nand mark is as \"cancellable\". The ``CallbacksManager`` instance will check\nthe errors returned by the callback methods and if any of them is marked\nas \"cancellable\", the manager will raise a ``CallbackFailure`` exception,\nterminating the process.\n\nIn case of being a Neutron worker, for example, the\n``oslo_service.service.Services`` class will restart the process again.\n\nRelated-Bug: #2036607\nChange-Id: Ie1e7be6d70cca957c1b1b6c15b402e8bc6523865\n(cherry picked from commit 08b8c6d33b34de4be96116ed78835645dca9493a)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/2224f23ca50fc0b305e3d5ac232a74bd2e9770a6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron-lib/commit/2224f23ca50fc0b305e3d5ac232a74bd2e9770a6"}]},"branch":"refs/heads/stable/2023.2"}},"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":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"}},{"label":"Review-Priority","status":"MAY"}]}],"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":{}}},{"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":{}}},{"name":"Review-Priority","description":"Review priority","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"-label:Review-Priority\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":[],"failing_atoms":["label:Review-Priority\u003dMIN"],"atom_explanations":{}}},{"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":{}}}]}
