Public bug reported:
For stein/stable, routed network which enable placement client.
I could not find root cause though, but the current situation looks like this.
- neutron_lib.placement.get_inventory() called.
- since IPV4_RESOURCE_CLASS is not created yet, keystoneauth1 emit NotFound
exception.
- (weird) keystoneauth1 does sereilize error response from placement
- in keystoneauth1/exceptions/http.py, they assume that 'error' string in
body, but placement encode response like { 'errors': [...] }.
- I think placement way is right from the reference
(http://specs.openstack.org/openstack/api-wg/guidelines/errors.html) and
keystoneauth1 does not correctly follow the spec, but not sure.
- get_inventory() does not change NotFound exception to
PlacementResourceProviderNotFound exception since the exception does not have
'details'.
- final exception which user encounter is
2020-02-10 10:00:20.757 24507 DEBUG neutron.services.segments.plugin [-]
### exception argument of type 'NoneType' is not iterable
_update_nova_inventory
/opt/openstack/src/neutron/neutron/services/segments/plugin.py:219
I'm not sure how others use placement api in neutron bacause it occurs every
logics.
Thanks
** 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/1862565
Title:
placement in neutron_lib could not process keystone exceptions.
Status in neutron:
New
Bug description:
For stein/stable, routed network which enable placement client.
I could not find root cause though, but the current situation looks like this.
- neutron_lib.placement.get_inventory() called.
- since IPV4_RESOURCE_CLASS is not created yet, keystoneauth1 emit NotFound
exception.
- (weird) keystoneauth1 does sereilize error response from placement
- in keystoneauth1/exceptions/http.py, they assume that 'error' string in
body, but placement encode response like { 'errors': [...] }.
- I think placement way is right from the reference
(http://specs.openstack.org/openstack/api-wg/guidelines/errors.html) and
keystoneauth1 does not correctly follow the spec, but not sure.
- get_inventory() does not change NotFound exception to
PlacementResourceProviderNotFound exception since the exception does not have
'details'.
- final exception which user encounter is
2020-02-10 10:00:20.757 24507 DEBUG neutron.services.segments.plugin
[-] ### exception argument of type 'NoneType' is not iterable
_update_nova_inventory
/opt/openstack/src/neutron/neutron/services/segments/plugin.py:219
I'm not sure how others use placement api in neutron bacause it occurs every
logics.
Thanks
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1862565/+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