2 files changed, 10 insertions, 0 deletions
diff --git a/changelog.d/15306.bugfix b/changelog.d/15306.bugfix
new file mode 100644
index 0000000000..f5eb716f12
--- /dev/null
+++ b/changelog.d/15306.bugfix
@@ -0,0 +1,2 @@
+Add a check to [SQLite port_db script](https://matrix-org.github.io/synapse/latest/postgres.html#porting-from-sqlite)
+to ensure that the sqlite database passed to the script exists before trying to port from it.
diff --git a/synapse/_scripts/synapse_port_db.py b/synapse/_scripts/synapse_port_db.py
index 78d76d38ad..94b86c1d6f 100755
--- a/synapse/_scripts/synapse_port_db.py
+++ b/synapse/_scripts/synapse_port_db.py
@@ -18,6 +18,7 @@
import argparse
import curses
import logging
+import os
import sys
import time
import traceback
@@ -1326,6 +1327,13 @@ def main() -> None:
filename="port-synapse.log" if args.curses else None,
)
+ if not os.path.isfile(args.sqlite_database):
+ sys.stderr.write(
+ "The sqlite database you specified does not exist, please check that you have the"
+ "correct path."
+ )
+ sys.exit(1)
+
sqlite_config = {
"name": "sqlite3",
"args": {
|