[Bug 1987984] Re: List resource providers consistently fail with 500 error

Corey Bryant 1987984 at bugs.launchpad.net
Mon Aug 29 17:04:35 UTC 2022


I'm going to triage this as invalid at this point since the package is
generating the policy.yaml based on what is documented by upstream
placement. If you have new information please share it on this bug and
move the bug back to New status.

** Changed in: placement (Ubuntu)
       Status: New => Invalid

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to placement in Ubuntu.
https://bugs.launchpad.net/bugs/1987984

Title:
  List resource providers consistently fail with 500 error

Status in placement package in Ubuntu:
  Invalid

Bug description:
  I initially reported this in
  https://storyboard.openstack.org/#!/story/2010108 but it seems the
  issue is specific to Ubuntu packages so I'm reporting this bug for the
  packaging side as well.

  This issue was found in puppet integration job in ubuntu focal + yoga.
  placement 1:7.0.0-0ubuntu1~cloud0
  python3 3.8.2-0ubuntu2
  python3-oslo.policy 3.11.0-0ubuntu1~cloud0

  List resource providers API consistently returns 500 error, and nova-compute can't start because of that API error.
  Looking at placement api log, the following traceback is found.

  ```
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap [req-b2bf439f-9e22-4d16-8cd2-a191b0070e19 acf1133c873a4427b4ca8b3d026af72f 77a64ffe39e340b480fdb3c45adb5273 - default default] Placement API unexpected error: unsupported callable: TypeError: unsupported callable
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap Traceback (most recent call last):
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/inspect.py", line 1135, in getfullargspec
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     sig = _signature_from_callable(func,
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/inspect.py", line 2233, in _signature_from_callable
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     sig = _signature_from_callable(
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/inspect.py", line 2304, in _signature_from_callable
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return _signature_from_function(sigcls, obj,
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/inspect.py", line 2168, in _signature_from_function
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     parameters.append(Parameter(name, annotation=annotation,
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/inspect.py", line 2491, in __init__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     self._kind = _ParameterKind(kind)
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/enum.py", line 339, in __call__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return cls.__new__(cls, value)
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3.8/enum.py", line 635, in __new__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     if type(value) is cls:
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap RecursionError: maximum recursion depth exceeded while calling a Python object
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap 
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap The above exception was the direct cause of the following exception:
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap 
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap Traceback (most recent call last):
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/placement/fault_wrap.py", line 39, in __call__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return self.application(environ, start_response)
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/webob/dec.py", line 129, in __call__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     resp = self.call_func(req, *args, **kw)
  ...
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/placement/handlers/allocation.py", line 299, in list_for_resource_provider
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     context.can(policies.RP_ALLOC_LIST)
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/placement/context.py", line 56, in can
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return policy.authorize(self, action, target)
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/placement/policy.py", line 115, in authorize
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     LOG.debug('Policy check for %(action)s failed with credentials '
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_utils/excutils.py", line 227, in __exit__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     self.force_reraise()
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_utils/excutils.py", line 200, in force_reraise
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     raise self.value
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/placement/policy.py", line 104, in authorize
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return _ENFORCER.authorize(
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/policy.py", line 1173, in authorize
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return self.enforce(
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/policy.py", line 1071, in enforce
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     result = _checks._check(
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 80, in _check
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return rule(*rule_args)
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 257, in __call__
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return _check(
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 80, in _check
  2022-06-23 23:32:46.277 26465 ERROR placement.fault_wrap     return rule(*rule_args)
  ...
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 80, in _check
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     return rule(*rule_args)
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 213, in __call__
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     if _check(rule, target, cred, enforcer, current_rule):
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 80, in _check
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     return rule(*rule_args)
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 257, in __call__
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     return _check(
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 80, in _check
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     return rule(*rule_args)
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 257, in __call__
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     return _check(
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3/dist-packages/oslo_policy/_checks.py", line 75, in _check
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     argspec = inspect.getfullargspec(rule.__call__)
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap   File "/usr/lib/python3.8/inspect.py", line 1144, in getfullargspec
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap     raise TypeError('unsupported callable') from ex
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap TypeError: unsupported callable
  2022-06-23 23:32:46.311 26466 ERROR placement.fault_wrap 
  ```

  The same issue is observed in stable/xena job as well.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/placement/+bug/1987984/+subscriptions




More information about the Ubuntu-openstack-bugs mailing list