c24e9da2f82676d9b9d8c28018bf49c8a294121b

Current BEFORE_CREATE/DELETE/UPDATE event is outside of the DB transaction. Unlike the precommit primitive in ML2 mech drivers, they don't work in the same DB transaction of resource, so if we want to operate the DB in mech driver related to security group, there would be more unsync issues if we use BEFORE_XXX event directly. Moving the BEFORE_XXX event inside may also break some current codes, as maybe RPC call included. This patch adds new PRECOMMIT_CREATE/DELETE/UPDATE event type for callback function, and use it in the securitygroup/rules DB transaction. PRECOMMIT_XXX is in the DB transaction and only purpose is to do DB operations in its callback. A CallbackFailure will be triggered when exception comes from the callback of the new event. Change-Id: Icd2849bd84dab6733a572e8c85f242afcefc6c78 Closes-Bug: #1522172
Welcome!
You have come across a cloud computing network fabric controller. It has identified itself as "Neutron." It aims to tame your (cloud) networking!
External Resources:
The homepage for Neutron is: http://launchpad.net/neutron. Use this site for asking for help, and filing bugs. Code is available on git.openstack.org at <http://git.openstack.org/cgit/openstack/neutron>.
The latest and most in-depth documentation on how to use Neutron is available at: <http://docs.openstack.org>. This includes:
- Neutron Administrator Guide
- Networking Guide
- Neutron API Reference:
-
http://docs.openstack.org/api/openstack-network/2.0/content/
- Current Neutron developer documentation is available at:
For help on usage and hacking of Neutron, please send mail to <mailto:openstack-dev@lists.openstack.org>.
For information on how to contribute to Neutron, please see the contents of the CONTRIBUTING.rst file.
Description
Languages
Python
99.7%
Shell
0.3%