neutron/neutron/objects
Rodolfo Alonso Hernandez ab56a5cd65 Randomize segmentation ID assignation
If plugin "network_segment_range" is not enabled and a new segment
is required, if no segmentation ID is provided in the request, the
segmentation ID assigned is randomly retrieved from the non
allocated segmentation IDs.

The goal is to improve the concurrent network (and segment) creation.
If several segments are created in parallel, this random query
will return a different segmentation ID to each one, avoiding the
database retry request.

Closes-Bug: #1920923

Conflicts:
    neutron/common/utils.py
    neutron/tests/unit/plugins/ml2/drivers/test_type_vlan.py

Change-Id: Id3f71611a00e69c4f22340ca4d05d95e4373cf69
(cherry picked from commit 6eaa6d83d7)
2021-09-10 11:22:53 +02: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 Randomize segmentation ID assignation 2021-09-10 11:22:53 +02:00
port [DVR] Send allowed address pairs info to the L3 agents 2021-05-24 08:51:53 +00:00
qos Bump pylint version to support python 3.8 2020-08-06 16:00:30 +02:00
README.rst Objects: Add README for neutron/objects directory tree 2016-10-07 15:12:20 +00:00
__init__.py Bump pylint version to support python 3.8 2020-08-06 16:00:30 +02:00
address_group.py Support Address Group CRUD as extensions 2020-08-12 13:59:31 -05:00
address_scope.py Allow sharing of subnet pools via RBAC mechanism 2020-04-09 19:02:47 +03: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 Remove "six" library 2020-07-28 16:55:52 +00: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 Add source_ip_prefix and destination_ip_prefix to metering label rules 2020-09-30 12:26:01 +00:00
network.py Remove redundant implementation of "get_projects" in NetworkRBAC 2020-04-17 08:48:15 +00:00
network_segment_range.py Make phynet paramter also is optional when network_segment_range enabled 2021-06-08 11:25:19 +00:00
port_forwarding.py Add description field to portforwarding NAT rules 2020-01-22 11:19:55 -03:00
ports.py Remove FIP agent's gw port when L3 agent is deleted 2021-06-24 06:53:10 +00:00
provisioning_blocks.py [OVO] Switch to use own registry 2017-11-22 17:44:22 +01:00
quota.py Fix invalid JSON generated by quota details 2021-03-19 15:03:07 +00:00
rbac.py Remove usage of six.add_metaclass 2020-05-21 14:41:18 -04:00
rbac_db.py Remove "six" library 2020-07-28 16:55:52 +00:00
router.py Get only FIP ID on network delete 2021-04-22 08:43:28 +00:00
securitygroup.py Merge "Support for stateless security groups" 2020-03-04 14:16:34 +00: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 [OVN] Allow IP allocation with different segments for OVN service ports 2020-07-22 07:38:49 +00:00
subnetpool.py Allow sharing of subnet pools via RBAC mechanism 2020-04-09 19:02:47 +03:00
tag.py Fix pep8 E128 warnings in non-test code 2019-03-12 21:22:33 +00:00
trunk.py Remove OVO unneeded compatibility conversions 2020-06-03 17:15:31 +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).