ML2 plugin needs to override bulk operations

Bug #1193861 reported by Andre Pech on 2013-06-23
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Medium
Mohammad Banikazemi

Bug Description

Bulk operations on the ML2 plugin will simply call each action sequentially within one transaction. This means that errors raised by a mechanism driver in a _postcommit action will cause all transactions to be undone.

The ML2 plugin should override these bulk operations to:
    * make all pretransaction commit calls (ie call the appropriate _precommit methods on all registered mechansim drivers)
    * commit the transaction
    * make all post-transaction commit calls (ie call the appropriate _postcommit methods on all registered mechanism drivers)

If an error occurs after committing the transaction, we'll need to decide how to appropriately undo the operations that have been taken so far.

Tags: ml2 Edit Tag help
tags: added: ml2
Changed in quantum:
importance: Undecided → Medium
status: New → Triaged
Andre Pech (apech-o) on 2013-07-10
Changed in neutron:
assignee: nobody → Andre Pech (apech-o)
Shiv Haris (shh) on 2014-06-25
Changed in neutron:
milestone: none → juno-3
Shiv Haris (shh) on 2014-06-25
Changed in neutron:
assignee: Andre Pech (apech-o) → Mohammad Banikazemi (mb-s)
Changed in neutron:
status: Triaged → In Progress
Thierry Carrez (ttx) on 2014-09-03
Changed in neutron:
milestone: juno-3 → juno-rc1
Kyle Mestery (mestery) wrote :

Moving medium priority bug out of Juno-RC1.

Changed in neutron:
milestone: juno-rc1 → kilo-1
Kyle Mestery (mestery) wrote :

Per my own confusion, moving back to Juno-RC1.

Changed in neutron:
milestone: kilo-1 → juno-rc1
Kyle Mestery (mestery) wrote :

Adding a -1 because we're likely to cut RC1 on Monday and this won't make it. We can consider for RC2 if we have to cut an RC2.

Changed in neutron:
milestone: juno-rc1 → kilo-1

Change abandoned by Salvatore Orlando (<email address hidden>) on branch: master
Review: https://review.openstack.org/113999
Reason: This patch has been inactive long enough that I think it's safe to abandon.
The author can resurrect it if needed.

Changed in neutron:
status: In Progress → Confirmed
Changed in neutron:
status: Confirmed → In Progress
Kyle Mestery (mestery) on 2014-12-16
Changed in neutron:
milestone: kilo-1 → none
Changed in neutron:
milestone: none → kilo-2

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

commit 2ee08c3464c53abaf9bc5493132ad7958611e3b8
Author: Mohammad Banikazemi <email address hidden>
Date: Sat Sep 6 10:24:01 2014 -0400

    Move postcommit ops out of transaction for bulk

    Currently, the bulk create operations in ML2 are executed in
    a transaction. This means all precommit and postcommit operations
    for such operations are in a transaction. Postcommit operations
    are expected to be executed outside of transactions as they may
    communicate with a backend and introduce substantial delays. This
    fix removes the postcommit operations from the transaction for
    bulk create network/subnet/port operations.

    Change-Id: I9a9683058088e50d9443040223232bf5e1396ccf
    Closes-Bug: #1193861

Changed in neutron:
status: In Progress → Fix Committed
Thierry Carrez (ttx) on 2015-02-05
Changed in neutron:
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2015-04-30
Changed in neutron:
milestone: kilo-2 → 2015.1.0

Change abandoned by stephen-ma (<email address hidden>) on branch: stable/juno
Review: https://review.openstack.org/188992

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers