Bug 2104931 - RHOSP16.2 Neutron QOS related tempest test failure and traceback observed in neutron server log: "ERROR neutron.plugins.ml2.managers TypeError: qos_del() got an unexpected keyword argument 'if_exists'"
Summary: RHOSP16.2 Neutron QOS related tempest test failure and traceback observed in ...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-ovsdbapp
Version: 16.2 (Train)
Hardware: x86_64
OS: Linux
urgent
urgent
Target Milestone: z4
: ---
Assignee: Rodolfo Alonso
QA Contact: Toni Freger
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-07-07 13:44 UTC by Sandeep Yadav
Modified: 2022-07-12 12:26 UTC (History)
5 users (show)

Fixed In Version: python-ovsdbapp-0.17.6-2.20220707155303.4d9ea84.el8osttrunk
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-07-12 12:26:07 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 743198 0 None MERGED Add "if_exists" parameter to "QoSDelCommand" 2022-07-07 14:36:52 UTC
Red Hat Issue Tracker OSP-16298 0 None None None 2022-07-07 14:00:22 UTC

Description Sandeep Yadav 2022-07-07 13:44:25 UTC
Description of problem:

Neutron QOS related tempest test failure and traceback observed in neutron server log: "ERROR neutron.plugins.ml2.managers TypeError: qos_del() got an unexpected keyword argument 'if_exists'"


Version-Release number of selected component (if applicable):

RHOSP 16.2


How reproducible:
Everytime

Steps to Reproduce:
1. Deploy standalone run below tempest tests:-

~~~
neutron_tempest_plugin.api.test_qos.QosTestJSON.test_delete_not_allowed_if_policy_in_use_by_port
neutron_tempest_plugin.api.test_qos.QosTestJSON.test_policy_association_with_port_shared_policy
neutron_tempest_plugin.api.test_qos.QosTestJSON.test_user_create_port_with_admin_qos_policy
~~~

Actual results:

Tempest tests failed with below error:-

~~~
{3} neutron_tempest_plugin.api.test_qos.QosTestJSON.test_policy_association_with_port_shared_policy [2.512964s] ... FAILED

Captured traceback:
~~~~~~~~~~~~~~~~~~~
    b'Traceback (most recent call last):'
    b'  File "/usr/lib/python3.6/site-packages/neutron_tempest_plugin/api/test_qos.py", line 269, in test_policy_association_with_port_shared_policy'
    b"    port = self.create_port(network, qos_policy_id=policy['id'])"
    b'  File "/usr/lib/python3.6/site-packages/neutron_tempest_plugin/api/base.py", line 562, in create_port'
    b'    **kwargs)'
    b'  File "/usr/lib/python3.6/site-packages/neutron_tempest_plugin/services/network/json/network_client.py", line 145, in _create'
    b'    resp, body = self.post(uri, post_data)'
    b'  File "/usr/lib/python3.6/site-packages/tempest/lib/common/rest_client.py", line 300, in post'
    b"    return self.request('POST', url, extra_headers, headers, body, chunked)"
    b'  File "/usr/lib/python3.6/site-packages/tempest/lib/common/rest_client.py", line 704, in request'
    b'    self._error_checker(resp, resp_body)'
    b'  File "/usr/lib/python3.6/site-packages/tempest/lib/common/rest_client.py", line 881, in _error_checker'
    b'    message=message)'
    b'tempest.lib.exceptions.ServerFault: Got server fault'
    b'Details: Request Failed: internal server error while processing your request.'
    b''
~~~


Expected results:

All the tempest tests should pass


Additional info:

Below traceback observed in server logs:-

~~~
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers Traceback (most recent call last):
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/neutron/plugins/ml2/managers.py", line 477, in _call_on_drivers
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     getattr(driver.obj, method_name)(context)
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/networking_ovn/ml2/mech_driver.py", line 693, in create_port_postcommit
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     self._ovn_client.create_port(port)
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/networking_ovn/common/ovn_client.py", line 424, in create_port
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     self._qos_driver.create_port(txn, port)
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/networking_ovn/common/client_extensions/qos.py", line 245, in create_port
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     self.update_port(txn, port, None, reset=True)
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/networking_ovn/common/client_extensions/qos.py", line 273, in update_port
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     qos_policy_id, qos_rules)
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/networking_ovn/common/client_extensions/qos.py", line 242, in _update_port_qos_rules
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     qos_rules)
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers   File "/usr/lib/python3.6/site-packages/networking_ovn/common/client_extensions/qos.py", line 234, in _add_port_qos_rules
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers     txn.add(self.nb_idl.qos_del(**ovn_rule, if_exists=True))
2022-07-06 04:38:32.130 ERROR /var/log/containers/neutron/server.log: 16 ERROR neutron.plugins.ml2.managers TypeError: qos_del() got an unexpected keyword argument 'if_exists'
~~~


Note You need to log in before you can comment on or make changes to this bug.