yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #85302
[Bug 1917508] [NEW] Router create fails when router with same name already exists
Public bug reported:
Test
tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_preserve_preexisting_port
failed with what appears to be an issue in the OVN ML2 driver. According
to Terry, "it looks like the create_lrouter call in impl_idl_ovn.py
passes may_exist, but the one in ovn_client.py which you are hitting
does not."
https://64e4c686e8a5385bf7e9-3a9e3dcf5065ad1abf1d1a27741d8ba4.ssl.cf5.rackcdn.com/775444/9/check
/tripleo-ci-centos-8-containers-
multinode/e812d2f/logs/undercloud/var/log/tempest/tempest_run.log
https://zuul.opendev.org/t/openstack/build/e812d2fb618b45118fca269af335d0f4/log/logs/subnode-1/var/log/containers/neutron/server.log#9668-9736
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource [req-c24e459e-3cd0-457f-8111-4d6bd5e07d05 3cb9d2fb8de645868d440abcd947ea0c c2be1e148cc3473e9f880590eb3ae771 - default default] create failed: No details.: RuntimeError: OVSDB Error: {"details":"Transaction causes multiple rows in \"Logical_Router_Port\" table to have identical values (lrp-ffeb33eb-75bf-4330-9d96-188c1529bf18) for index on column \"name\". First row, with UUID c4340403-af73-46c4-a27c-77969d0522fd, existed in the database before this transaction and was not modified by the transaction. Second row, with UUID 42b137d3-14ad-4ead-bcdc-b2da5684511b, was inserted by this transaction.","error":"constraint violation"}
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource Traceback (most recent call last):
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/resource.py", line 98, in resource
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource result = method(request=request, **args)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 437, in create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return self._create(request, body, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 139, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 135, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return f(*args, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_db/api.py", line 154, in wrapper
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource ectxt.value = e.inner_exc
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_db/api.py", line 142, in wrapper
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return f(*args, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 183, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource LOG.debug("Retry wrapper got retriable exception: %s", e)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 179, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return f(*dup_args, **dup_kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 561, in _create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource obj = do_create(body)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 543, in do_create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource request.context, reservation.reservation_id)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 536, in do_create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return obj_creator(request.context, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/services/ovn_l3/plugin.py", line 178, in create_router
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource router['id'])
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/services/ovn_l3/plugin.py", line 172, in create_router
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self._ovn_client.create_router(context, router)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1147, in create_router
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource router, networks, txn)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib64/python3.6/contextlib.py", line 88, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource next(self.gen)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py", line 204, in transaction
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource yield t
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib64/python3.6/contextlib.py", line 88, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource next(self.gen)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/api.py", line 110, in transaction
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource del self._nested_txns_map[cur_thread_id]
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/api.py", line 61, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.result = self.commit()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/backend/ovs_idl/transaction.py", line 64, in commit
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise result.ex
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/backend/ovs_idl/connection.py", line 129, in run
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource txn.results.put(txn.do_commit())
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/backend/ovs_idl/transaction.py", line 120, in do_commit
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise RuntimeError(msg)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource RuntimeError: OVSDB Error: {"details":"Transaction causes multiple rows in \"Logical_Router_Port\" table to have identical values (lrp-ffeb33eb-75bf-4330-9d96-188c1529bf18) for index on column \"name\". First row, with UUID c4340403-af73-46c4-a27c-77969d0522fd, existed in the database before this transaction and was not modified by the transaction. Second row, with UUID 42b137d3-14ad-4ead-bcdc-b2da5684511b, was inserted by this transaction.","error":"constraint violation"}
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource
2021-03-02 15:52:21.670 29 INFO neutron.wsgi [req-c24e459e-3cd0-457f-8111-4d6bd5e07d05 3cb9d2fb8de645868d440abcd947ea0c c2be1e148cc3473e9f880590eb3ae771 - default default] 192.168.24.3 "POST /v2.0/routers HTTP/1.1" status: 500 len: 363 time: 13.3926668
** Affects: neutron
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1917508
Title:
Router create fails when router with same name already exists
Status in neutron:
New
Bug description:
Test
tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_preserve_preexisting_port
failed with what appears to be an issue in the OVN ML2 driver.
According to Terry, "it looks like the create_lrouter call in
impl_idl_ovn.py passes may_exist, but the one in ovn_client.py which
you are hitting does not."
https://64e4c686e8a5385bf7e9-3a9e3dcf5065ad1abf1d1a27741d8ba4.ssl.cf5.rackcdn.com/775444/9/check
/tripleo-ci-centos-8-containers-
multinode/e812d2f/logs/undercloud/var/log/tempest/tempest_run.log
https://zuul.opendev.org/t/openstack/build/e812d2fb618b45118fca269af335d0f4/log/logs/subnode-1/var/log/containers/neutron/server.log#9668-9736
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource [req-c24e459e-3cd0-457f-8111-4d6bd5e07d05 3cb9d2fb8de645868d440abcd947ea0c c2be1e148cc3473e9f880590eb3ae771 - default default] create failed: No details.: RuntimeError: OVSDB Error: {"details":"Transaction causes multiple rows in \"Logical_Router_Port\" table to have identical values (lrp-ffeb33eb-75bf-4330-9d96-188c1529bf18) for index on column \"name\". First row, with UUID c4340403-af73-46c4-a27c-77969d0522fd, existed in the database before this transaction and was not modified by the transaction. Second row, with UUID 42b137d3-14ad-4ead-bcdc-b2da5684511b, was inserted by this transaction.","error":"constraint violation"}
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource Traceback (most recent call last):
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/resource.py", line 98, in resource
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource result = method(request=request, **args)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 437, in create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return self._create(request, body, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 139, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 135, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return f(*args, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_db/api.py", line 154, in wrapper
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource ectxt.value = e.inner_exc
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_db/api.py", line 142, in wrapper
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return f(*args, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 183, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource LOG.debug("Retry wrapper got retriable exception: %s", e)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron_lib/db/api.py", line 179, in wrapped
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return f(*dup_args, **dup_kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 561, in _create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource obj = do_create(body)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 543, in do_create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource request.context, reservation.reservation_id)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/api/v2/base.py", line 536, in do_create
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource return obj_creator(request.context, **kwargs)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/services/ovn_l3/plugin.py", line 178, in create_router
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource router['id'])
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 227, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.force_reraise()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/oslo_utils/excutils.py", line 200, in force_reraise
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise self.value
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/services/ovn_l3/plugin.py", line 172, in create_router
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self._ovn_client.create_router(context, router)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/ovn_client.py", line 1147, in create_router
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource router, networks, txn)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib64/python3.6/contextlib.py", line 88, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource next(self.gen)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py", line 204, in transaction
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource yield t
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib64/python3.6/contextlib.py", line 88, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource next(self.gen)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/api.py", line 110, in transaction
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource del self._nested_txns_map[cur_thread_id]
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/api.py", line 61, in __exit__
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource self.result = self.commit()
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/backend/ovs_idl/transaction.py", line 64, in commit
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise result.ex
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/backend/ovs_idl/connection.py", line 129, in run
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource txn.results.put(txn.do_commit())
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource File "/usr/lib/python3.6/site-packages/ovsdbapp/backend/ovs_idl/transaction.py", line 120, in do_commit
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource raise RuntimeError(msg)
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource RuntimeError: OVSDB Error: {"details":"Transaction causes multiple rows in \"Logical_Router_Port\" table to have identical values (lrp-ffeb33eb-75bf-4330-9d96-188c1529bf18) for index on column \"name\". First row, with UUID c4340403-af73-46c4-a27c-77969d0522fd, existed in the database before this transaction and was not modified by the transaction. Second row, with UUID 42b137d3-14ad-4ead-bcdc-b2da5684511b, was inserted by this transaction.","error":"constraint violation"}
2021-03-02 15:52:21.648 29 ERROR neutron.api.v2.resource
2021-03-02 15:52:21.670 29 INFO neutron.wsgi [req-c24e459e-3cd0-457f-8111-4d6bd5e07d05 3cb9d2fb8de645868d440abcd947ea0c c2be1e148cc3473e9f880590eb3ae771 - default default] 192.168.24.3 "POST /v2.0/routers HTTP/1.1" status: 500 len: 363 time: 13.3926668
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1917508/+subscriptions