neutron/neutron/objects
Kevin Benton 72ac25c929 Stop using nested transactions in OVO get/delete
Nested transactions have unnecessary overhead of starting
new transactions in the database and the only place we need
them are where we expect duplicate violations during create/update.

This gets rid of them for get_objects and delete_objects so we
don't adopt additional unnecessary overhead in OVO adoption. Before
this patch, update_port calls were resulting in several independent
nested transactions that each require multiple round trips to the
database.

Change-Id: Icbfe678b6f6ebcdcd7f7ca71f6ac5febb64bdaa3
Partially-Implements: blueprint adopt-oslo-versioned-objects-for-db
2017-06-13 04:17:41 -07:00
..
db objects: added update_objects to OVO framework 2017-05-24 20:28:11 +00:00
extensions objects: exclude revision_number from updatable fields 2017-06-08 18:42:10 +00:00
plugins OVO for FlatAllocation 2016-12-22 13:25:50 +00:00
port objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
qos Add "default" behaviour to QoS policies 2017-05-26 23:31:36 +00:00
README.rst Objects: Add README for neutron/objects directory tree 2016-10-07 15:12:20 +00:00
__init__.py Use dirname in object recursive import 2017-04-20 04:35:10 -07:00
address_scope.py Use project_id instead of tenant_id in objects 2017-01-13 14:31:26 +00:00
agent.py [OVO] Integration of RouterL3AgentBinding 2017-05-26 13:17:58 -07:00
auto_allocate.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
base.py Stop using nested transactions in OVO get/delete 2017-06-13 04:17:41 -07:00
common_types.py Merge "Fixes to allow OVO deserializion of ports/networks" 2017-02-01 09:38:30 +00:00
exceptions.py Move OVO exceptions to neutron/objects/exceptions 2016-11-10 10:25:06 -07:00
flavor.py Flavor and Service Profile to OVO 2017-01-05 16:59:36 -06:00
floatingip.py Make UUIDField actually validate UUIDs 2016-12-07 15:11:43 +00:00
ipam.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
l3agent.py [OVO] Integration of RouterL3AgentBinding 2017-05-26 13:17:58 -07:00
metering.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
network.py Checks if net_dns is None and returns so that we don't attempt to load 2017-06-09 11:50:15 +10:00
ports.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
provisioning_blocks.py OVO for Provisioning Block DB Model 2016-11-22 19:15:51 +00:00
quota.py OVO for Quotas and Reservation 2017-03-24 15:52:34 +00:00
rbac_db.py use neutron-lib callbacks 2017-04-26 12:12:53 -06:00
router.py Integration of Router Extra Attributes OVO 2017-04-16 15:28:50 +00:00
securitygroup.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
servicetype.py Make UUIDField actually validate UUIDs 2016-12-07 15:11:43 +00:00
subnet.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
subnetpool.py objects: added update_objects to OVO framework 2017-05-24 20:28:11 +00:00
tag.py OVO for Tag 2017-03-07 23:06:00 +00:00
trunk.py objects: update fields_no_update to reflect models 2017-05-24 20:28:04 +00:00
utils.py objects: introduce a util function to handle tenant_id filter 2016-08-03 08:42:38 +00:00

README.rst

Neutron Objects

Directory

This directory is designed to contain all modules which have objects definitions shipped with core Neutron. The files and directories located inside of this directory should follow the guidelines below.

Structure

The Neutron objects tree should have the following structure:

  • The expected directory structure is flat, except for the ML2 plugins. All ML2 plugin objects should fall under the plugins subdirectory (i.e. plugins/ml2/gre_allocation).
  • Module names should use singular forms for nouns (network.py, not networks.py).