← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1424593] Re: ObjectDeleted error when network already removed during rescheduling

 

Changing back to high as it was discovered another condition which could
lead autorescheduling loop to fail

** Changed in: neutron
       Status: Fix Released => In Progress

** Changed in: neutron
   Importance: Medium => High

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1424593

Title:
  ObjectDeleted error when network already removed during rescheduling

Status in OpenStack Neutron (virtual network service):
  In Progress

Bug description:
  In some cases when concurrent rescheduling occurs, the following trace
  is observed:

  ERROR neutron.openstack.common.loopingcall [-] in fixed duration looping call
  TRACE neutron.openstack.common.loopingcall Traceback (most recent call last):
  TRACE neutron.openstack.common.loopingcall   File "/usr/lib/python2.7/dist-packages/neutron/openstack/common/loopingcall.py", line 76, in _inner
  TRACE neutron.openstack.common.loopingcall     self.f(*self.args, **self.kw)
  TRACE neutron.openstack.common.loopingcall   File "/usr/lib/python2.7/dist-packages/neutron/db/agentschedulers_db.py", line 269, in remove_networks_from_down_agents
  TRACE neutron.openstack.common.loopingcall     {'net': binding.network_id,
  TRACE neutron.openstack.common.loopingcall   File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/attributes.py", line 239, in __get__
  TRACE neutron.openstack.common.loopingcall     return self.impl.get(instance_state(instance), dict_)
  TRACE neutron.openstack.common.loopingcall   File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/attributes.py", line 589, in get
  TRACE neutron.openstack.common.loopingcall     value = callable_(state, passive)
  TRACE neutron.openstack.common.loopingcall   File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/state.py", line 424, in __call__
  TRACE neutron.openstack.common.loopingcall     self.manager.deferred_scalar_loader(self, toload)
  TRACE neutron.openstack.common.loopingcall   File "/usr/lib/python2.7/dist-packages/sqlalchemy/orm/loading.py", line 614, in load_scalar_attributes
  TRACE neutron.openstack.common.loopingcall     raise orm_exc.ObjectDeletedError(state)
  TRACE neutron.openstack.common.loopingcall ObjectDeletedError: Instance '<NetworkDhcpAgentBinding at 0x52b1850>' has been deleted, or its row is otherwise not present.

  Need to avoid accessing db object after it has been deleted from db as attribute access may trigger this exception.
  This issue terminates periodic task of rescheduling networks.

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


References