Replace usage of get_legacy_facade() with get_engine()
We've been seeing warnings emitted to the python 3 unit tests: OsloDBDeprecationWarning: EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade which stem from our use of the get_legacy_facade() oslo.db method. This replaces the get_legacy_facade() usage with the get_engine() method from the transaction context manager. Closes-Bug: #1795078 Change-Id: If1e355d6174f15a1880e97115a2cf3f9f4be837e
This commit is contained in:
parent
99bf62e427
commit
020651ad3d
|
@ -134,11 +134,13 @@ def get_engine(use_slave=False, context=None):
|
|||
:param context: The request context that can contain a context manager
|
||||
"""
|
||||
ctxt_mgr = get_context_manager(context)
|
||||
return ctxt_mgr.get_legacy_facade().get_engine(use_slave=use_slave)
|
||||
if use_slave:
|
||||
return ctxt_mgr.reader.get_engine()
|
||||
return ctxt_mgr.writer.get_engine()
|
||||
|
||||
|
||||
def get_api_engine():
|
||||
return api_context_manager.get_legacy_facade().get_engine()
|
||||
return api_context_manager.writer.get_engine()
|
||||
|
||||
|
||||
_SHADOW_TABLE_PREFIX = 'shadow_'
|
||||
|
|
|
@ -426,7 +426,7 @@ class CellDatabases(fixtures.Fixture):
|
|||
global DB_SCHEMA
|
||||
if not DB_SCHEMA['main']:
|
||||
ctxt_mgr = self._ctxt_mgrs[connection_str]
|
||||
engine = ctxt_mgr.get_legacy_facade().get_engine()
|
||||
engine = ctxt_mgr.writer.get_engine()
|
||||
conn = engine.connect()
|
||||
migration.db_sync(database='main')
|
||||
DB_SCHEMA['main'] = "".join(line for line
|
||||
|
@ -535,7 +535,7 @@ class CellDatabases(fixtures.Fixture):
|
|||
'nova.db.sqlalchemy.api.get_context_manager',
|
||||
get_context_manager):
|
||||
self._cache_schema(connection_str)
|
||||
engine = ctxt_mgr.get_legacy_facade().get_engine()
|
||||
engine = ctxt_mgr.writer.get_engine()
|
||||
engine.dispose()
|
||||
conn = engine.connect()
|
||||
conn.connection.executescript(DB_SCHEMA['main'])
|
||||
|
@ -567,7 +567,7 @@ class CellDatabases(fixtures.Fixture):
|
|||
|
||||
def cleanup(self):
|
||||
for ctxt_mgr in self._ctxt_mgrs.values():
|
||||
engine = ctxt_mgr.get_legacy_facade().get_engine()
|
||||
engine = ctxt_mgr.writer.get_engine()
|
||||
engine.dispose()
|
||||
|
||||
|
||||
|
@ -591,8 +591,7 @@ class Database(fixtures.Fixture):
|
|||
if connection is not None:
|
||||
ctxt_mgr = session.create_context_manager(
|
||||
connection=connection)
|
||||
facade = ctxt_mgr.get_legacy_facade()
|
||||
self.get_engine = facade.get_engine
|
||||
self.get_engine = ctxt_mgr.writer.get_engine
|
||||
else:
|
||||
self.get_engine = session.get_engine
|
||||
elif database == 'api':
|
||||
|
|
|
@ -682,15 +682,15 @@ class SqlAlchemyDbApiNoDbTestCase(test.NoDBTestCase):
|
|||
self.assertEqual('|', filter('|'))
|
||||
self.assertEqual('LIKE', op)
|
||||
|
||||
@mock.patch.object(sqlalchemy_api.main_context_manager._factory,
|
||||
'get_legacy_facade')
|
||||
def test_get_engine(self, mock_create_facade):
|
||||
mock_facade = mock.MagicMock()
|
||||
mock_create_facade.return_value = mock_facade
|
||||
|
||||
@mock.patch.object(sqlalchemy_api, 'main_context_manager')
|
||||
def test_get_engine(self, mock_ctxt_mgr):
|
||||
sqlalchemy_api.get_engine()
|
||||
mock_create_facade.assert_called_once_with()
|
||||
mock_facade.get_engine.assert_called_once_with(use_slave=False)
|
||||
mock_ctxt_mgr.writer.get_engine.assert_called_once_with()
|
||||
|
||||
@mock.patch.object(sqlalchemy_api, 'main_context_manager')
|
||||
def test_get_engine_use_slave(self, mock_ctxt_mgr):
|
||||
sqlalchemy_api.get_engine(use_slave=True)
|
||||
mock_ctxt_mgr.reader.get_engine.assert_called_once_with()
|
||||
|
||||
def test_get_db_conf_with_connection(self):
|
||||
mock_conf_group = mock.MagicMock()
|
||||
|
@ -699,15 +699,10 @@ class SqlAlchemyDbApiNoDbTestCase(test.NoDBTestCase):
|
|||
connection='fake://')
|
||||
self.assertEqual('fake://', db_conf['connection'])
|
||||
|
||||
@mock.patch.object(sqlalchemy_api.api_context_manager._factory,
|
||||
'get_legacy_facade')
|
||||
def test_get_api_engine(self, mock_create_facade):
|
||||
mock_facade = mock.MagicMock()
|
||||
mock_create_facade.return_value = mock_facade
|
||||
|
||||
@mock.patch.object(sqlalchemy_api, 'api_context_manager')
|
||||
def test_get_api_engine(self, mock_ctxt_mgr):
|
||||
sqlalchemy_api.get_api_engine()
|
||||
mock_create_facade.assert_called_once_with()
|
||||
mock_facade.get_engine.assert_called_once_with()
|
||||
mock_ctxt_mgr.writer.get_engine.assert_called_once_with()
|
||||
|
||||
@mock.patch.object(sqlalchemy_api, '_instance_get_by_uuid')
|
||||
@mock.patch.object(sqlalchemy_api, '_instances_fill_metadata')
|
||||
|
|
Loading…
Reference in New Issue