summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--changelog.d/15306.bugfix2
-rwxr-xr-xsynapse/_scripts/synapse_port_db.py8
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": {