MatrixSynapse/synapse/storage/engines
Sean Quah 6d14fdc271
Make sqlite database migrations transactional again, part two (#14926)
#14910 fixed the regression introduced by #13873 where sqlite database
migrations would no longer run inside a transaction. However, it
committed the transaction before Synapse updated its bookkeeping of
which migrations have been run, which means that migrations may be run
again after they have completed successfully.

Leave the transaction open at the end of `executescript`, to restore the
old, correct behaviour. Also make the PostgreSQL behaviour consistent
with SQLite.

Fixes #14909.

Signed-off-by: Sean Quah <seanq@matrix.org>
2023-01-31 11:03:55 +00:00
..
__init__.py Use dummy fallback engines if imports fail (#12979) 2022-06-07 17:33:55 +01:00
_base.py Make sqlite database migrations transactional again, part two (#14926) 2023-01-31 11:03:55 +00:00
postgres.py Make sqlite database migrations transactional again, part two (#14926) 2023-01-31 11:03:55 +00:00
sqlite.py Make sqlite database migrations transactional again, part two (#14926) 2023-01-31 11:03:55 +00:00