Reviewed: https://review.opendev.org/c/openstack/neutron-lib/+/781625 Committed: https://opendev.org/openstack/neutron-lib/commit/ff96659ef0e5cbbad9812a79896cf9c22b984e77 Submitter: "Zuul (22348)" Branch: master
commit ff96659ef0e5cbbad9812a79896cf9c22b984e77 Author: Slawek Kaplonski <[email protected]> Date: Fri Mar 19 12:02:35 2021 +0100 Set system_scope='all' in elevated context In case when enforce_new_defaults is set to True and new policy rules are used, context.is_admin flag isn't really working as it was with old rules. But in case when elevated context is needed, it means that we need context which has full rights to the system. So we should also set "system_scope" parameter to "all" to be sure that system scope queries can be done with such elevated context always. It is needed e.g. when elevated context is used to get some data from db. In such case we need to have db query which will not be scoped to the single project_id and with new defaults to achieve that system_scope has to be set to "all". Closes-Bug: #1920001 Change-Id: I9bbf9ebe4252b2aa4b2a185bdc040ac8bf9753c7 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1920001 Title: Creation of floating ip with new rbac policies fails Status in neutron: Fix Released Bug description: When new api policies are used by setting: [oslo_policy] enforce_new_defaults = true enforce_scope = true Creation of new floating IP fails with error 500 returned. Neutron's server stack trace: Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource [None req-4a6ada86-c9ec-47c1-9cf8-6a04971419ea demo demo] create failed: No details.: neutron_lib.callbacks.exceptions.CallbackFailure: Callback neutron.services.qos.qos_plugin.QoSPlugin._validate_create_port_callback-21625 failed with "'NoneType' object has no attribute 'qos_policy_id'" Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource Traceback (most recent call last): Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/resource.py", line 98, in resource Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource result = method(request=request, **args) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 437, in create Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return self._create(request, body, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 139, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 135, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_db/api.py", line 154, in wrapper Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource ectxt.value = e.inner_exc Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_db/api.py", line 142, in wrapper Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 183, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource LOG.debug("Retry wrapper got retriable exception: %s", e) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 179, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*dup_args, **dup_kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 561, in _create Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource obj = do_create(body) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 542, in do_create Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource quota.QUOTAS.cancel_reservation( Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/api/v2/base.py", line 536, in do_create Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return obj_creator(request.context, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/services/l3_router/l3_router_plugin.py", line 186, in create_floatingip Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return super(L3RouterPlugin, self).create_floatingip( Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 217, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return method(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 139, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 135, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_db/api.py", line 154, in wrapper Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource ectxt.value = e.inner_exc Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_db/api.py", line 142, in wrapper Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 183, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource LOG.debug("Retry wrapper got retriable exception: %s", e) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 179, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*dup_args, **dup_kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/l3_dvr_db.py", line 1250, in create_floatingip Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource floating_ip = self._create_floatingip( Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/db/l3_db.py", line 1342, in _create_floatingip Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource external_port = plugin_utils.create_port( Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/plugins/utils.py", line 337, in create_port Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return core_plugin.create_port( Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/common/utils.py", line 687, in inner Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(self, context, *args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 217, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return method(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 139, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource setattr(e, '_RETRY_EXCEEDED', True) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 135, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_db/api.py", line 154, in wrapper Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource ectxt.value = e.inner_exc Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_db/api.py", line 142, in wrapper Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 183, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource LOG.debug("Retry wrapper got retriable exception: %s", e) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/api.py", line 179, in wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return f(*dup_args, **dup_kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/plugin.py", line 1445, in create_port Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource result, mech_context = self._create_port_db(context, port) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/opt/stack/neutron/neutron/plugins/ml2/plugin.py", line 1433, in _create_port_db Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource registry.notify( Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/callbacks/registry.py", line 56, in notify Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource _get_callback_manager().notify(resource, event, trigger, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/utils.py", line 110, in _wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise db_exc.RetryRequest(e) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 227, in __exit__ Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource self.force_reraise() Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise self.value Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/db/utils.py", line 105, in _wrapped Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource return function(*args, **kwargs) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource File "/usr/local/lib/python3.8/dist-packages/neutron_lib/callbacks/manager.py", line 177, in notify Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource raise exceptions.CallbackFailure(errors=errors) Mar 18 10:47:52 devstack-ubuntu-ovs neutron-server[117296]: ERROR neutron.api.v2.resource neutron_lib.callbacks.exceptions.CallbackFailure: Callback neutron.services.qos.qos_plugin.QoSPlugin._validate_create_port_callback-21625 failed with "'NoneType' object has no attribute 'qos_policy_id'" To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1920001/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

