← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1551958] Re: ML2 delete_network can loop infinitely if called in transaction

 

Reviewed:  https://review.openstack.org/286920
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=d1c501cd1d31ed3f859975b40c01cb7aaa06d26d
Submitter: Jenkins
Branch:    master

commit d1c501cd1d31ed3f859975b40c01cb7aaa06d26d
Author: Kevin Benton <kevin@xxxxxxxxxx>
Date:   Tue Mar 1 13:49:48 2016 -0800

    L3HA: Do not wrap create/delete in transaction
    
    This is unsafe when calling ML2 because ML2 assumes that its
    functions will not be called inside of a transaction. This is
    not only an issue for drivers that try to do DB lookups using
    a different session in the post commit operation, but it's a
    big issue for the delete methods.
    
    The delete subnet and network methods in ML2 have 'while True'
    loops that catch concurrency errors and retry the operation after
    looking up info. If these are called inside a transaction, the
    lookups will contain stale information and it can lead to the
    while True loop never terminating!
    
    Closes-Bug: #1551958
    Change-Id: I33dc084ed15e5491fdda19da712a746ca87fbc8c


** 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/1551958

Title:
  ML2 delete_network can loop infinitely if called in transaction

Status in neutron:
  Fix Released

Bug description:
  Both delete_network and delete_subnet in ML2 use a while True to
  continuously attempt to delete a network or subnet. This logic is fine
  assuming its DB lookups are fresh on each iteration to get the latest
  state. However, it fails when these functions are called inside of
  another transaction because its lookups will get stale data and
  continue to loop over that data forever.

  Thanks to Armando who spotted it:
  http://paste.openstack.org/show/488834/

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


References