← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1216866] Re: Race condition in Neutron initialization (policy loading)

 

** Changed in: neutron
       Status: Fix Committed => 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/1216866

Title:
  Race condition in Neutron initialization (policy loading)

Status in OpenStack Neutron (virtual network service):
  Fix Released

Bug description:
  Depending on amount of initialization happening at startup, Neutron
  may load/initialize policy engine with incorrect data and then fail
  some requests.

  Some rules in policy depend on attributes defined in extensions. In
  case policy is loaded before extensions are loaded, those rules are
  initialized differently then they would be initialized after
  extensions are loaded.

  That result in policy check failure for some valid responses.

  The issue was discovered during gate-tempest-devstack-vm-neutron failure analysis for the review https://review.openstack.org/#/c/38120/
  In particular exercises/euca.sh test is failing, because nova can't fetch external network from neutron.
  Further analysis showed that external network exists and request for the network is correct, but the result fails policy check.
  Immediate cause is neutron/policy.py:FieldCheck.__init__ that depends on global attribute map that has to be updated during extension loading. Apparently for the code on review, policy initialization happens before extension loading and FieldCheck rules are not initilized properly.

  Also the issue is sensible to timing and external conditions (mq
  requests), so code in master also fails exercises/euca.sh test
  sometimes.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1216866/+subscriptions