From a8698594910bffd401956c7f577886673e57b299 Mon Sep 17 00:00:00 2001 From: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com> Date: Sat, 2 May 2020 23:14:17 -0700 Subject: [PATCH] Improve validating database before import --- plexpy/database.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/plexpy/database.py b/plexpy/database.py index 6dffbe03..8ff1d07e 100644 --- a/plexpy/database.py +++ b/plexpy/database.py @@ -39,10 +39,17 @@ db_lock = threading.Lock() def validate_database(database=None): try: connection = sqlite3.connect(database, timeout=20) - except sqlite3.OperationalError as e: + except (sqlite3.OperationalError, sqlite3.DatabaseError, ValueError) as e: logger.error("Tautulli Database :: Invalid database specified: %s", e) return 'Invalid database specified' - except ValueError as e: + except Exception as e: + logger.error("Tautulli Database :: Uncaught exception: %s", e) + return 'Uncaught exception' + + try: + connection.execute('SELECT started from session_history') + connection.close() + except (sqlite3.OperationalError, sqlite3.DatabaseError, ValueError) as e: logger.error("Tautulli Database :: Invalid database specified: %s", e) return 'Invalid database specified' except Exception as e: