diff --git a/resources/lib/kodimonitor.py b/resources/lib/kodimonitor.py index 75496fa6..5e24f390 100644 --- a/resources/lib/kodimonitor.py +++ b/resources/lib/kodimonitor.py @@ -524,9 +524,13 @@ def _clean_file_table(): """ LOG.debug('Start cleaning Kodi files table') app.APP.monitor.waitForAbort(2) - with kodi_db.KodiVideoDB() as kodidb_1: - with kodi_db.KodiVideoDB() as kodidb_2: - for file_id in kodidb_1.obsolete_file_ids(): - LOG.debug('Removing obsolete Kodi file_id %s', file_id) - kodidb_2.remove_file(file_id, remove_orphans=False) - LOG.debug('Done cleaning up Kodi file table') + try: + with kodi_db.KodiVideoDB() as kodidb_1: + with kodi_db.KodiVideoDB() as kodidb_2: + for file_id in kodidb_1.obsolete_file_ids(): + LOG.debug('Removing obsolete Kodi file_id %s', file_id) + kodidb_2.remove_file(file_id, remove_orphans=False) + except utils.OperationalError: + LOG.debug('Database was locked, unable to clean file table') + else: + LOG.debug('Done cleaning up Kodi file table')