db: turn off autocommit

after testing using an assert for DML without a transaction,
we can now turn autocommit off.   enginefacade should be used
completely now

Change-Id: I2ee07c7e41ea43c2ab24a4a095550dd0b5fe47dd
This commit is contained in:
Mike Bayer 2024-03-28 17:59:24 -04:00
parent 0ce2857d0f
commit 505719a50a
3 changed files with 3 additions and 12 deletions

View File

@ -73,11 +73,10 @@ _DEFAULT_SQL_CONNECTION = 'sqlite://'
db_options.set_defaults(cfg.CONF, db_options.set_defaults(cfg.CONF,
connection=_DEFAULT_SQL_CONNECTION) connection=_DEFAULT_SQL_CONNECTION)
context_manager = enginefacade.transaction_context() context_manager = enginefacade.transaction_context()
# FIXME(stephenfin): we need to remove reliance on autocommit semantics ASAP context_manager.configure()
# since it's not compatible with SQLAlchemy 2.0
context_manager.configure(__autocommit=True)
def get_engine(): def get_engine():

View File

@ -28,11 +28,10 @@ class Query(orm.Query):
return super(Query, self).soft_delete(synchronize_session) return super(Query, self).soft_delete(synchronize_session)
def get_maker(engine, autocommit=True, expire_on_commit=False): def get_maker(engine, expire_on_commit=False):
"""Return a SQLAlchemy sessionmaker using the given engine.""" """Return a SQLAlchemy sessionmaker using the given engine."""
return sqlalchemy.orm.sessionmaker(bind=engine, return sqlalchemy.orm.sessionmaker(bind=engine,
class_=orm.Session, class_=orm.Session,
autocommit=autocommit,
expire_on_commit=expire_on_commit, expire_on_commit=expire_on_commit,
query_cls=Query) query_cls=Query)

View File

@ -186,13 +186,6 @@ class WarningsFixture(fixtures.Fixture):
category=sqla_exc.SADeprecationWarning, category=sqla_exc.SADeprecationWarning,
) )
warnings.filterwarnings(
'ignore',
module='manila',
message='The current statement is being autocommitted ',
category=sqla_exc.SADeprecationWarning,
)
warnings.filterwarnings( warnings.filterwarnings(
'ignore', 'ignore',
module='manila', module='manila',