Enable WAL for SQLite (#13897)

Signed-off-by: Lorenzo Manacorda <lorenzo@mailbox.org>
This commit is contained in:
asymmetric 2022-10-25 11:22:55 +02:00 committed by GitHub
parent 19c0e55ef7
commit 8c94dd3a27
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 0 deletions

View File

@ -0,0 +1 @@
Enable Write-Ahead Logging for SQLite installs. Contributed by [asymmetric](https://github.com/asymmetric).

View File

@ -88,6 +88,10 @@ class Sqlite3Engine(BaseDatabaseEngine[sqlite3.Connection, sqlite3.Cursor]):
db_conn.create_function("rank", 1, _rank) db_conn.create_function("rank", 1, _rank)
db_conn.execute("PRAGMA foreign_keys = ON;") db_conn.execute("PRAGMA foreign_keys = ON;")
# Enable WAL.
# see https://www.sqlite.org/wal.html
db_conn.execute("PRAGMA journal_mode = WAL;")
db_conn.commit() db_conn.commit()
def is_deadlock(self, error: Exception) -> bool: def is_deadlock(self, error: Exception) -> bool: