Use the new enginefacade from oslo_db
[Existing problem]
The oslo.db.
Most intuitive issue is that oslo will report warning at [2]
[Proposal]
Use the new oslo_db.
[Benefits]
A clean, less problem, higher performance db transaction.
[1] Oslo db spec: http://
[2] https:/
Also see the related RFE bug.
Blueprint information
- Status:
- Complete
- Approver:
- Kevin Benton
- Priority:
- High
- Drafter:
- Ann Taraday
- Direction:
- Approved
- Assignee:
- Miguel Lavalle
- Definition:
- Approved
- Series goal:
- Accepted for victoria
- Implementation:
- Implemented
- Milestone target:
- wallaby-2
- Started by
- Henry Gessau
- Completed by
- Slawek Kaplonski
Related branches
Sprints
Whiteboard
Dec-01-2016(armax): Ann actively working on patches:
https:/
Implementation Patches:
New engine facade from oslo_db: Step 1 (Import new enginefacade)
https:/
New engine facade from oslo_db: Step 2 (Get rid of lazy init for engine facade)
https:/
New engine facade from oslo_db: Step 3 (Apply read/writer)
https:/
In the drivers meeting on August 11 [1] we decided to forego the reader/writer decorators for existing methods and instead replace transaction contexts with the reader/writer context manager.
Related patches:
Add check that factory started in dispose
https:/
Get rid of get_engine() in db/api.py
https:/
Refactor setting OSprofiler for db calls
https:/
[oslo.db] Add a hook to process newly created engines
https:/
Gerrit topic: https:/
Addressed by: https:/
Always start transactions in quota cleanup methods
Gerrit topic: https:/
Addressed by: https:/
Usage of new enginefacade for flavor db
Gerrit topic: https:/
Addressed by: https:/
[WIP]Usage new enginefacade for quota db
Addressed by: https:/
[WIP]Use new enginefacade for address_scope_db
Addressed by: https:/
[WIP] Use new enginefacade metering db
Addressed by: https:/
[WIP] Use new enginefacade for qos
Gerrit topic: https:/
Addressed by: https:/
Fix ML2, base db plugin update_subnet for transactions
Addressed by: https:/
Separate floating IP port creation from transaction
Addressed by: https:/
[WIP]: Use callbacks to create DVR floating GW port
Addressed by: https:/
[WIP] Use new enginefacade for servicetype_db
Addressed by: https:/
[WIP] Use new enginefacade for agent db
Addressed by: https:/
[WIP] Use new enginefacade for tag
Addressed by: https:/
[WIP] Use new enginefacade for schedulers
Gerrit topic: https:/
Addressed by: https:/
[WIP] Use new enginefacade for provisioning_blocks
Addressed by: https:/
[WIP] Use new enginefacade for segments
Addressed by: https:/
Move DVR fip agent gw port create out of transaction
Addressed by: https:/
[WIP]Change passing session to context in segments db functions
Addressed by: https:/
OVO for FlatAllocation
Addressed by: https:/
[WIP]New enginefacade for networks, subnets, rbac
Addressed by: https:/
[WIP]Use new enginefacade for rbac
Addressed by: https:/
[WIP] Use new enginefacade for dvr mac db
Addressed by: https:/
[WIP] Refactor ml2_db to pass context
Addressed by: https:/
[WIP] New enginefacade for ports
Addressed by: https:/
Change passing session to context in segments db functions
Addressed by: https:/
Integrate NetworkSegment OVO
Gerrit topic: https:/
Addressed by: https:/
[WIP]
Addressed by: https:/
[WIP] Stop using legacy facade
Gerrit topic: https:/
Gerrit topic: https:/
Addressed by: https:/
[WIP] Use reader and writer for security groups
Addressed by: https:/
Use writer for trunk database operations
Addressed by: https:/
[WIP] New enginefacade for objects
Addressed by: https:/
Use new enginefacade for routers
Gerrit topic: https:/
Gerrit topic: https:/
Addressed by: https:/
Use same session object for ml2 dict extend functions
Addressed by: https:/
Flavors: move dict extend out of txn
Addressed by: https:/
Load all relationships on object init
Gerrit topic: https:/
Addressed by: https:/
LOG.exception for mech dict extend failure
Addressed by: https:/
Fix relationship event handler for flushes and nested
Addressed by: https:/
Make RBAC entry removal enginefacade friendly
Gerrit topic: https:/
Addressed by: https:/
Add flush_on_
Addressed by: https:/
Fix SQL fixture to preserve engine facade settings
Addressed by: https:/
move make_port_dict back out of txn
Addressed by: https:/
ml2: Remove no longer necessary subtransaction workaround
Addressed by: https:/
[WIP] Use reader and writer for agents
Addressed by: https:/
Use Neutron new engine-facade
Gerrit topic: https:/
Addressed by: https:/
Revert "Use writer for trunk database operations"
Addressed by: https:/
Change from new engine facade to old nested transaction for OVO
Addressed by: https:/
Conclude adoption of new enginefacade in Neutron
Addressed by: https:/
WIP objects: automatically detect whether engine facade is used
Addressed by: https:/
Automatically expire obsolete relationships
Addressed by: https:/
tests: fixed NoSuchGroupError in TestNovaSegment
Addressed by: https:/
Renamed subnet_
Addressed by: https:/
tests: don't configure plugin for tests that don't need it
Addressed by: https:/
Revert "Automatically expire obsolete relationships"
Addressed by: https:/
Revert "Revert "Automatically expire obsolete relationships""
Addressed by: https:/
Remove context guard of Agent OVO
Addressed by: https:/
Revert "Switch to new engine facade in neutron/
Gerrit topic: https:/
Addressed by: https:/
Switch to new engine facade in test_bgp_
Gerrit topic: https:/
Addressed by: https:/
Switch to new engine facade for Subnet object
Addressed by: https:/
Switch to new engine facade for L3RpcCallback
Addressed by: https:/
Conclude adoption of new enginefacade in Neutron
Addressed by: https:/
Switch to new engine facade for QoS
Addressed by: https:/
Switch DB _utils to new engine facade
Addressed by: https:/
Switch to new engine facade for Schedulers
Addressed by: https:/
Switch to new engine facade for ExtraRoute_
Addressed by: https:/
Switch to new engine facade for StandardAttribute objects
Addressed by: https:/
Switch to new engine facade for Route objects
Addressed by: https:/
Switch to new engine facade for IpamPluggableBa
Addressed by: https:/
Switch to new engine facade for L3_HA_NAT_db_mixin
Addressed by: https:/
Switch to new engine facade for Route objects
Addressed by: https:/
Switch to new engine facade for Route objects
Addressed by: https:/
Switch to new engine facade for Route objects
Addressed by: https:/
Switch to new engine facade for DriverController
Addressed by: https:/
Switch to new engine facade for TrunkPlugin and TrunkSkeleton
Addressed by: https:/
Switch to new engine facade for BaseResourceFilter
Gerrit topic: https:/
Addressed by: https:/
objects: automatically detect whether engine facade is used
Addressed by: https:/
Switch to new enginefacade in l3_hascheduler_db module
Addressed by: https:/
Switch to new engine facade in l3_gwmode_db module
Addressed by: https:/
Switch to new engine facade in test_allowedadd
Addressed by: https:/
Finish migration to new engine facade in test_db_
Addressed by: https:/
Switch to new engine facade in test_data_
Addressed by: https:/
Switch to new engine facade in ML2 unit tests modules
Addressed by: https:/
Switch to new engine facade in revision plugin's UT
Addressed by: https:/
Use new engine facade in L3 DB code
Addressed by: https:/
Switch to new engine facade in ovn_revision_
Addressed by: https:/
Switch to new engine facade in L3 router's driver_controller module
Addressed by: https:/
Switch to new engine facade in OVN trunk driver module
Addressed by: https:/
Switch to new enginefacade in uplink_
Addressed by: https:/
Remove "autonested_
Addressed by: https:/
Remove Context.session check with new engine facade