2081910d6d
The table "router_extra_attributes" is a child of "router" table. Each register contains extra information that completes the router description. When using ML2/OVS mechanism driver, the methods that create and populate the "router_extra_attributes" register are always called from the L3 DVR, L3 HA and availability zones extensions. When using ML2/OVN, those extensions are not loaded and therefore the "router_extra_attributes" register is not created. Despite this register is currently not used in ML2/OVN (it will be in future features), there are some project expecting the "router_extra_attributes" register to be always created (for example, neutron-dynamic-routing [1]). This patch enforces the child register creating always when a router is created. This register is populated with the default values. This new register does not affect any current operation related to ML2/OVN nor ML2/OVS. There is a 1:1 relationship between "routers" and "router_extra_attributes". The child register is deleted by the database engine when the "routers" register is deleted (ondelete="CASCADE"). [1]https://review.opendev.org/c/openstack/neutron-dynamic-routing/+/863713 Closes-Bug: #1995974 Change-Id: Ic546e40513402fa101c9687acce382cd6b84356c |
||
---|---|---|
.. | ||
db | ||
extensions | ||
logapi | ||
plugins | ||
port | ||
qos | ||
README.rst | ||
__init__.py | ||
address_group.py | ||
address_scope.py | ||
agent.py | ||
auto_allocate.py | ||
base.py | ||
conntrack_helper.py | ||
flavor.py | ||
floatingip.py | ||
ipam.py | ||
l3_hamode.py | ||
l3agent.py | ||
local_ip.py | ||
metering.py | ||
ndp_proxy.py | ||
network.py | ||
network_segment_range.py | ||
port_forwarding.py | ||
ports.py | ||
provisioning_blocks.py | ||
quota.py | ||
rbac.py | ||
rbac_db.py | ||
router.py | ||
securitygroup.py | ||
servicetype.py | ||
stdattrs.py | ||
subnet.py | ||
subnetpool.py | ||
tag.py | ||
trunk.py |
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).