2021-10-22 14:29:44 |
Rodolfo Alonso |
bug |
|
|
added bug |
2021-10-23 21:18:59 |
Jakub Libosvar |
neutron: status |
New |
Incomplete |
|
2021-10-23 21:50:18 |
Jakub Libosvar |
neutron: importance |
Undecided |
Low |
|
2021-10-23 21:53:02 |
Jakub Libosvar |
tags |
|
ovn |
|
2021-10-25 10:56:39 |
Rodolfo Alonso |
neutron: status |
Incomplete |
New |
|
2021-10-25 11:15:38 |
Rodolfo Alonso |
neutron: assignee |
|
Rodolfo Alonso (rodolfo-alonso-hernandez) |
|
2021-10-25 11:16:21 |
OpenStack Infra |
neutron: status |
New |
In Progress |
|
2021-10-26 19:06:26 |
OpenStack Infra |
neutron: status |
In Progress |
Fix Released |
|
2022-01-03 17:09:11 |
OpenStack Infra |
tags |
ovn |
in-stable-victoria ovn |
|
2022-01-03 17:09:17 |
OpenStack Infra |
tags |
in-stable-victoria ovn |
in-stable-ussuri in-stable-victoria ovn |
|
2022-01-05 17:44:18 |
OpenStack Infra |
tags |
in-stable-ussuri in-stable-victoria ovn |
in-stable-ussuri in-stable-victoria in-stable-xena ovn |
|
2022-01-05 18:17:11 |
OpenStack Infra |
tags |
in-stable-ussuri in-stable-victoria in-stable-xena ovn |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn |
|
2023-08-16 16:09:34 |
Brian Haley |
bug task added |
|
neutron (Ubuntu) |
|
2023-08-16 16:10:46 |
Brian Haley |
bug task added |
|
cloud-archive |
|
2023-08-16 16:13:09 |
Corey Bryant |
nominated for series |
|
Ubuntu Focal |
|
2023-08-16 16:13:09 |
Corey Bryant |
bug task added |
|
neutron (Ubuntu Focal) |
|
2023-08-16 16:13:16 |
Corey Bryant |
neutron (Ubuntu): status |
New |
Fix Released |
|
2023-08-16 16:13:17 |
Corey Bryant |
neutron (Ubuntu Focal): status |
New |
Triaged |
|
2023-08-16 16:14:21 |
Corey Bryant |
neutron (Ubuntu Focal): importance |
Undecided |
High |
|
2023-08-16 16:14:36 |
Corey Bryant |
nominated for series |
|
cloud-archive/ussuri |
|
2023-08-16 16:14:36 |
Corey Bryant |
bug task added |
|
cloud-archive/ussuri |
|
2023-08-16 16:14:41 |
Corey Bryant |
cloud-archive: status |
New |
Fix Released |
|
2023-08-16 16:14:45 |
Corey Bryant |
cloud-archive/ussuri: status |
New |
Triaged |
|
2023-08-16 16:14:50 |
Corey Bryant |
cloud-archive/ussuri: importance |
Undecided |
High |
|
2023-08-21 21:07:52 |
Corey Bryant |
description |
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen. |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
|
2023-08-21 21:09:02 |
Corey Bryant |
description |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
|
2023-08-21 21:11:03 |
Corey Bryant |
description |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {} manipulated
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
|
2023-08-21 21:11:33 |
Corey Bryant |
description |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {} manipulated
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
|
2023-08-21 21:12:31 |
Corey Bryant |
description |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:jammy j1 && lxc exec j1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
== Original Bug Description ==
Snippet: https://paste.opendev.org/show/810168/
I can't provide a link to a CI execution, I saw this error in an internal CI. I'm still investigating when this could happen.
== Ubuntu SRU Details ==
[Impact]
During subnet deletion the check in _remove_subnet_dhcp_options() results in the following traceback (taken from pastebin above in case it disappears) if dhcp_options['subnet'] is an empty dictionary:
ExternalNetworksRBACTestJSON-2078932943-project-admin] Mechanism driver 'ovn' failed in delete_subnet_postcommit: KeyError: 'uuid'
Traceback (most recent call last):
File "/opt/stack/neutron/neutron/plugins/ml2/managers.py", line 482, in _call_on_drivers
getattr(driver.obj, method_name)(context)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py", line 637, in delete_subnet_postcommit
self._ovn_client.delete_subnet(context._plugin_context,
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 2103, in delete_subnet
self._remove_subnet_dhcp_options(subnet_id, txn)
File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1971, in _remove_subnet_dhcp_options
dhcp_options['subnet']['uuid']))
KeyError: 'uuid'
The fix ensures this check handles a dictionary correctly.
[Test Case]
In case we don't have a recreate for this:
1) lxc launch ubuntu-daily:focal f1 && lxc exec f1 /bin/bash
2) sudo add-apt-repository -p proposed
3) sudo apt install python3-neutron
4) cd /usr/lib/python3/dist-packages
5) python3 -m unittest neutron.tests.unit.plugins.ml2.drivers.ovn.mech_driver.test_mech_driver.TestOVNMechanismDriver.test_remove_subnet_dhcp_options_in_ovn_ipv4
6) re-run the test in step #5 after adding 'pdb.set_trace()' to the line before the check in neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py
this way we can see what dhcp_options['subnet'] is set to, ensure the check behaves correctly, and try another run with dhcp_options['subnet'] = {}
7) sudo add-apt-repository -r -p proposed
[Regression Potential]
This is a minimal change that is backward compatible with the previous check. The new check can still handle 'not None' in addition to handling an empty dictionary correctly. This has been fixed in Ubuntu Victoria packages (and above) since 2022-01-12, and has been fixed in the upstream stable/ussuri branch since 2021-10-25. |
|
2023-08-21 21:14:13 |
Corey Bryant |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2023-08-21 21:43:12 |
Ubuntu Archive Robot |
bug |
|
|
added subscriber Corey Bryant |
2023-08-23 21:16:15 |
Andreas Hasenack |
neutron (Ubuntu Focal): status |
Triaged |
Fix Committed |
|
2023-08-23 21:16:19 |
Andreas Hasenack |
bug |
|
|
added subscriber SRU Verification |
2023-08-23 21:16:23 |
Andreas Hasenack |
tags |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn verification-needed verification-needed-focal |
|
2023-08-24 13:09:36 |
Corey Bryant |
cloud-archive/ussuri: status |
Triaged |
Fix Committed |
|
2023-08-24 13:09:38 |
Corey Bryant |
tags |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn verification-needed verification-needed-focal |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn verification-needed verification-needed-focal verification-ussuri-needed |
|
2023-09-05 07:41:59 |
nikhil kshirsagar |
attachment added |
|
testing_dhcp_neutron https://bugs.launchpad.net/neutron/+bug/1948466/+attachment/5697658/+files/testing_dhcp_neutron |
|
2023-09-06 12:55:18 |
nikhil kshirsagar |
tags |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn verification-needed verification-needed-focal verification-ussuri-needed |
in-stable-ussuri in-stable-victoria in-stable-wallaby in-stable-xena ovn verification-done verification-done-focal verification-ussuri-done |
|
2023-09-07 01:59:42 |
Rafael Lopez |
attachment added |
|
test_results_empty_dict.txt https://bugs.launchpad.net/neutron/+bug/1948466/+attachment/5698112/+files/test_results_empty_dict.txt |
|
2023-09-20 06:56:06 |
Launchpad Janitor |
neutron (Ubuntu Focal): status |
Fix Committed |
Fix Released |
|
2023-09-20 06:56:21 |
Chris Halse Rogers |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2023-09-20 12:24:13 |
Corey Bryant |
cloud-archive/ussuri: status |
Fix Committed |
Fix Released |
|