neutron/neutron/tests/unit/db
Rodolfo Alonso Hernandez 2081910d6d Always create a "router_extra_attributes" register per router
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
2022-11-18 08:51:43 +00:00
..
metering [test][unit]creating resources support set project_id 2022-03-28 05:41:48 +00:00
quota Implement specific tracked resource count method per quota driver 2022-07-28 06:01:18 +02:00
__init__.py Empty files should not contain copyright or license 2014-10-20 00:50:32 +00:00
test__utils.py ``Session.autocommit`` parameter is removed 2022-08-10 17:15:04 +02:00
test_agents_db.py Set process name for agents 2020-07-01 12:28:29 +02:00
test_agentschedulers_db.py Handle properly ObjectNotFound while deleting network from DHCP agent 2022-05-02 12:27:08 +02:00
test_allowedaddresspairs_db.py Switch to new engine facade in test_allowedaddresspairs_db module 2020-03-20 02:18:04 +01:00
test_db_base_plugin_common.py Replace to_dict() calls with a function decorator 2015-08-03 11:42:25 +03:00
test_db_base_plugin_v2.py Fix remaining typos in comments and tests 2022-07-06 21:20:27 +05:30
test_dvr_mac_db.py Replace assertItemsEqual with assertCountEqual 2020-11-30 10:21:57 +01:00
test_extraroute_db.py Use payloads for ROUTER AFTER_ callbacks 2021-08-09 14:13:28 +00:00
test_ipam_backend_mixin.py Remove "PortBindingMixin" class and related DB table 2022-01-08 14:53:21 +00:00
test_ipam_pluggable_backend.py Allow to pass EUI64 IP address as fixed ip for the port 2022-10-01 22:13:37 +02:00
test_l3_db.py Always create a "router_extra_attributes" register per router 2022-11-18 08:51:43 +00:00
test_l3_dvr_db.py Improve Router callback system's publish events 2021-12-05 04:36:36 +00:00
test_l3_hamode_db.py ``Session.autocommit`` parameter is removed 2022-08-10 17:15:04 +02:00
test_migration.py Replace "Inspector.from_engine()" with "sqlalchemy.inspect()" 2021-09-23 13:41:50 +00:00
test_ovn_hash_ring_db.py Revert "Move the "ovn_hash_ring" clean up to maintenance worker" 2022-09-23 14:09:26 +00:00
test_ovn_revision_numbers_db.py Remove import of 'imp' module 2022-07-11 14:19:54 -04:00
test_portsecurity_db.py Remove the dependency on the "mock" package 2020-04-28 18:05:37 -04:00
test_portsecurity_db_common.py Remove the dependency on the "mock" package 2020-04-28 18:05:37 -04:00
test_provisioning_blocks.py Remove the dependency on the "mock" package 2020-04-28 18:05:37 -04:00
test_rbac_db_mixin.py Replace "target_tenant" with "target_project" in RBAC OVOs and models 2021-12-03 10:48:57 +00:00
test_securitygroups_db.py Do not allow a tenant to create a default SG for another one 2022-09-02 10:57:33 -04:00
test_segments_db.py Remove the dependency on the "mock" package 2020-04-28 18:05:37 -04:00