From 2f0920e4fb57ebbe224b7f018f67b9f2170f5aa2 Mon Sep 17 00:00:00 2001 From: Milan V Date: Wed, 8 Nov 2017 14:43:15 +0100 Subject: [PATCH] Fix recorder stop on SQLite vacuuming error (#10405) * Fix recorder stop on SQLite vacuuming error * Move import to function --- homeassistant/components/recorder/purge.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/recorder/purge.py b/homeassistant/components/recorder/purge.py index 90a69f8f2a1..719f65abb47 100644 --- a/homeassistant/components/recorder/purge.py +++ b/homeassistant/components/recorder/purge.py @@ -28,5 +28,10 @@ def purge_old_data(instance, purge_days): # Execute sqlite vacuum command to free up space on disk _LOGGER.debug("DB engine driver: %s", instance.engine.driver) if instance.engine.driver == 'pysqlite': + from sqlalchemy import exc + _LOGGER.info("Vacuuming SQLite to free space") - instance.engine.execute("VACUUM") + try: + instance.engine.execute("VACUUM") + except exc.OperationalError as err: + _LOGGER.error("Error vacuuming SQLite: %s.", err)