)]}'
{"id":"openstack%2Fneutron~996749","triplet_id":"openstack%2Fneutron~stable%2F2026.1~I5c9b689558a9553ff6968868b43bf3d9239c92ad","project":"openstack/neutron","branch":"stable/2026.1","topic":"bug/2160210","attention_set":{},"removed_from_attention_set":{"16688":{"account":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"last_update":"2026-07-13 09:38:52.000000000","reason":"Change was submitted"},"11975":{"account":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"last_update":"2026-07-13 09:38:52.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I5c9b689558a9553ff6968868b43bf3d9239c92ad","subject":"Fix load_db_migration_drivers","status":"MERGED","created":"2026-07-10 07:59:32.000000000","updated":"2026-07-13 09:40:36.000000000","submitted":"2026-07-13 09:38:52.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"996749-bug/2160210","meta_rev_id":"ad2be61cdc2123c7b9f7a478f488f1bb8d38d41b","_number":996749,"virtual_id_number":996749,"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":"2026-07-13 09:38:52.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"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":"2026-07-13 07:45:25.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"value":2,"date":"2026-07-10 16:13:20.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"]},{"value":1,"date":"2026-07-10 14:16:59.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"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":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"all":[{"value":1,"date":"2026-07-13 07:45:25.000000000","permitted_voting_range":{"min":1,"max":1},"_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"]},{"value":0,"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"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"]},{"value":0,"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"}],"reviewers":{"REVIEWER":[{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"}],"CC":[{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-10 07:59:32.000000000","updated_by":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"reviewer":{"_account_id":22629,"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","username":"mnasiadka"},"state":"CC"},{"updated":"2026-07-10 10:08:32.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-07-10 14:16:59.000000000","updated_by":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"reviewer":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"state":"REVIEWER"},{"updated":"2026-07-10 14:16:59.000000000","updated_by":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"reviewer":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"state":"REVIEWER"},{"updated":"2026-07-10 16:13:20.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"},{"updated":"2026-07-13 07:45:25.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"}],"messages":[{"id":"3cd11e1054d5778df15fb6a9f47bbd15d3dc88ab","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"date":"2026-07-10 07:59:32.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"20bcb2e9ff40422f128ab32c19e1fca8cfa054fd","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-10 10:08:32.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/9a865ba5668649b8aa10c5178de33345\n\n- tempest-integrated-networking https://zuul.opendev.org/t/openstack/build/3f08659157684fa3b5182a609b5bbc20 : SUCCESS in 1h 23m 19s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/77c801fd84cd45db91cfc3043fad5e3f : SUCCESS in 35m 18s\n- neutron-tempest-plugin-ovn-2026-1 https://zuul.opendev.org/t/openstack/build/a8b30fc9e4bb4ef4b72db465114128c4 : SUCCESS in 2h 03m 42s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/8084033d7a5b4fa78cc6127e56076471 : SUCCESS in 54m 03s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c384978b488e4ba9b80f2ff3d747fbba : SUCCESS in 11m 36s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/14a3adb79a93472ba76351c253d199e7 : SUCCESS in 25m 25s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/f7ab02fe7fd944578290b27c41be9fb4 : SUCCESS in 17m 17s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/7f9dca6f7df44187a44e9fd8a7afccc3 : SUCCESS in 26m 05s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9ae03bfbd20a460990700be7bbdf8ba0 : SUCCESS in 7m 25s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/afa174e612004b699d29c76f129cfab8 : SUCCESS in 22m 45s\n- neutron-ovn-grenade-multinode-skip-level https://zuul.opendev.org/t/openstack/build/afaf4192623a4d1b93bd9ca9a5baf671 : SUCCESS in 39m 43s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/b6a62da7f4d14ba2b86a257439dff4bb : SUCCESS in 1h 17m 31s\n- neutron-ovn-grenade-multinode https://zuul.opendev.org/t/openstack/build/8a5af988127c4be2ac1e1cb28ff44f3d : SUCCESS in 41m 01s\n- neutron-ovn-tempest-ipv6-only-ovs-release https://zuul.opendev.org/t/openstack/build/df270aced84a46d497100e8c77ea8e4c : SUCCESS in 1h 00m 50s\n- neutron-ovn-rally-task https://zuul.opendev.org/t/openstack/build/99a1b5446c354046a98b3218c2819100 : SUCCESS in 1h 20m 50s","accounts_in_message":[],"_revision_number":1},{"id":"c669eb113411b9ef0a366ecab029296fceb1dbcd","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-10 11:24:55.000000000","message":"Patch Set 1:\n\nBuild failed (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/bb5bada571514633a70fcc7578865928\n\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/36c075e5fbf242e582a8adfc639c6008 : SUCCESS in 48m 41s\n- openstack-tox-py314-arm64 https://zuul.opendev.org/t/openstack/build/3384824e92374eeb9c6ed5af26819741 : TIMED_OUT in 1h 21m 19s\n- openstack-tox-py310-arm64 https://zuul.opendev.org/t/openstack/build/a6e486ddf35d46828d12d33883a66bd0 : TIMED_OUT in 1h 21m 10s","accounts_in_message":[],"_revision_number":1},{"id":"4ed01732b9c56d5d07cf0f87330f27139f228bfa","author":{"_account_id":37598,"name":"Ivan Anfimov","display_name":"Ivan Anfimov","email":"lazekteam@gmail.com","username":"anfimovir"},"date":"2026-07-10 14:16:59.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"6452d66d9a81fce8c29c55e5e705c64f91868561","author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"date":"2026-07-10 16:13:20.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"14226a424927137ef850e4904a9aaa09a6023b31","author":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"},"date":"2026-07-13 07:45:25.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"17d732e4ced16eea6cef8cf64e4d5e657bf3bd28","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-13 07:45:56.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"90004777e4acbcc855d8d2705486ca59f089d0e6","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-13 09:38:52.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/89e7673fc6104e07aecb8795bc5e50c4\n\n- tempest-integrated-networking https://zuul.opendev.org/t/openstack/build/d29ef3f65a994e9f9d1494d949f2a56c : SUCCESS in 1h 04m 55s\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/d853cd06bbe7412dac4573f73ff60af3 : SUCCESS in 1h 03m 19s\n- neutron-tempest-plugin-ovn-2026-1 https://zuul.opendev.org/t/openstack/build/5c61cc32b8bd4db1bca0afa8481a22f9 : SUCCESS in 1h 52m 31s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6b784a3a176240d7a1fbe2884774d0fc : SUCCESS in 11m 02s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/ce8f950d4f7447538fe939a3cb0e5338 : SUCCESS in 20m 44s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/1356a69f146343e9ab4d0fe4ec34f35a : SUCCESS in 22m 34s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/b8d936c369334e19acb41e35ef7b2ce8 : SUCCESS in 11m 46s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/c6a9a74a62b947debad03d4002eeda68 : SUCCESS in 18m 28s\n- neutron-functional https://zuul.opendev.org/t/openstack/build/892f280626e748c6aa855e475857c065 : SUCCESS in 1h 22m 54s\n- neutron-ovn-grenade-multinode https://zuul.opendev.org/t/openstack/build/3579fd7a90154fc9bb048bcf174b043d : SUCCESS in 1h 15m 39s\n- neutron-ovn-tempest-ipv6-only-ovs-release https://zuul.opendev.org/t/openstack/build/c8df8fbb1a8a4e51a2ed6536d39ca1f7 : SUCCESS in 1h 13m 15s","accounts_in_message":[],"_revision_number":1},{"id":"91c102926e0b7d828da6071db8f2c4a96e146255","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-13 09:38:52.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"ad2be61cdc2123c7b9f7a478f488f1bb8d38d41b","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-13 09:40:36.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/186c880126c9498c929cba376fd58c95\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/56b7e17fef104668b64c04b39c9ecc74 : SUCCESS in 1m 09s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"fe5a33341209ba3fc657991b445bdfe459063ac1","revisions":{"fe5a33341209ba3fc657991b445bdfe459063ac1":{"kind":"REWORK","_number":1,"created":"2026-07-10 07:59:32.000000000","uploader":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"ref":"refs/changes/49/996749/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/neutron","ref":"refs/changes/49/996749/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/neutron refs/changes/49/996749/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/neutron refs/changes/49/996749/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/neutron refs/changes/49/996749/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/neutron refs/changes/49/996749/1"}}},"commit":{"parents":[{"commit":"163a5a4bc3ccc16f1ee332795d5d225349c017a3","subject":"Merge \"rpc/ovn: Use base OVN IDL for RPC workers, disable notification events\" into stable/2026.1","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron/commit/163a5a4bc3ccc16f1ee332795d5d225349c017a3"}]}],"author":{"name":"Michal Nasiadka","email":"mnasiadka@gmail.com","date":"2026-07-09 11:40:59.000000000","tz":120},"committer":{"name":"Rodolfo Alonso Hernandez","email":"ralonsoh@redhat.com","date":"2026-07-10 07:59:10.000000000","tz":120},"subject":"Fix load_db_migration_drivers","message":"Fix load_db_migration_drivers\n\nMigration plugins registered under the ``neutron.ovn.db_migration``\nentry point are plain callables (functions), not subclasses of\n``BaseOvnDbSynchronizer``. The shared ``_load_drivers`` helper applies\nan ``issubclass`` guard that is only valid for class-based sync plugins,\ncausing a ``TypeError`` when loading function-based migration plugins and\nultimately a ``NoMatches`` exception that aborts the OVS-to-OVN database\nmigration step.\n\nFix this by giving ``load_db_migration_drivers`` its own\n``EnabledExtensionManager`` construction that skips the ``issubclass``\ncheck and simply filters by driver name.\n\nCloses-Bug: #2160210\n\nAssisted-By: Claude Sonnet 4.6\nChange-Id: I5c9b689558a9553ff6968868b43bf3d9239c92ad\nSigned-off-by: Michal Nasiadka \u003cmnasiadka@gmail.com\u003e\n(cherry picked from commit c615e18da9943d9f8837e6f2d4bc0c5055447076)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron/commit/fe5a33341209ba3fc657991b445bdfe459063ac1"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/neutron/commit/fe5a33341209ba3fc657991b445bdfe459063ac1"}]},"branch":"refs/heads/stable/2026.1"}},"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":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":21798,"name":"Bernard Cafarelli","email":"bcafarel@redhat.com","username":"bcafarel"}},{"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":{"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":"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":{"label:Review-Priority\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":""}}}]}
