neutron/neutron/objects
Slawek Kaplonski 93d9d6bbba Ensure there is always at most 1 dvr fip gw port per agent and network
In patch [1] there was introduced simple lock for creation of
DVR agent's floating IP gateway ports for network to avoid races
and creation of duplicated ports for one agent and one network.

This fix from [1] works in simple examples with only one neutron-server,
so it helped e.g. in CI but it wasn't proper fix for production
deployments which are much bigger and have more neutron server api
workers.

So this patch introduces constraint on database level so this works even
across cluster with multiple neutron-server api workers.

[1] https://review.opendev.org/#/c/673331/

Change-Id: Id55b8a21d6ecf5e029d1ca267b2cbd2ed91cca4c
Closes-Bug: #1830763
2020-02-07 08:32:33 +00:00
..
db remove the neutron.db._model_query module 2019-01-25 08:55:25 -07:00
extensions use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
logapi use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
plugins use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
port use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
qos use objects common_types from neutron-lib 2019-11-26 15:34:18 +01: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 objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
agent.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
auto_allocate.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
base.py use object standardattributes from neutron-lib 2019-06-12 13:57:00 -06:00
conntrack_helper.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
flavor.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
floatingip.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
ipam.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
l3_hamode.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
l3agent.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
metering.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
network.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
network_segment_range.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
port_forwarding.py Add description field to portforwarding NAT rules 2020-01-22 11:19:55 -03:00
ports.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
provisioning_blocks.py [OVO] Switch to use own registry 2017-11-22 17:44:22 +01:00
quota.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
rbac.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
rbac_db.py Fix list security groups performance with RBAC 2019-07-07 17:44:56 -05:00
router.py Ensure there is always at most 1 dvr fip gw port per agent and network 2020-02-07 08:32:33 +00:00
securitygroup.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
servicetype.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
stdattrs.py use object standardattributes from neutron-lib 2019-06-12 13:57:00 -06:00
subnet.py Allow to select subnets to publish DNS records 2019-12-14 13:36:09 +00:00
subnetpool.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01:00
tag.py Fix pep8 E128 warnings in non-test code 2019-03-12 21:22:33 +00:00
trunk.py use objects common_types from neutron-lib 2019-11-26 15:34:18 +01: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).