From: Roman Bazalevsky Date: Fri, 16 Nov 2018 10:52:23 +0000 (+0300) Subject: Добавлено разумности при определении состояния временной базы данных (теперь нужен... X-Git-Url: https://git.rvb.name/weathermon.git/commitdiff_plain/05cb9d0f8e4f223fba410bd8a65f7504fc71fb64 Добавлено разумности при определении состояния временной базы данных (теперь нужен не просто файл, а файл с читаемой таблицей внутри, иначе восстанавливаемся из бэкапа, если таковой есть). --- diff --git a/init.d/weathermon b/init.d/weathermon index 802529e..b57d620 100755 --- a/init.d/weathermon +++ b/init.d/weathermon @@ -18,14 +18,26 @@ start_service() { mkdir -p "$WORK_DIR" - if [ ! -z "$BACKLOGDB" ] && [ ! -f "$BACKLOGDB" ]; then - BACKLOG_BASE=$(basename "$BACKLOGDB") - cp "$BACKUP_DIR/$BACKLOG_BASE" "$BACKLOGDB" + if [ ! -z "$BACKLOGDB" ]; then + + sqlite3 $BACKLOGDB "select * from queue limit 1" > /dev/null + + if [ "$?" != "0" ]; then + BACKLOG_BASE=$(basename "$BACKLOGDB") + cp "$BACKUP_DIR/$BACKLOG_BASE" "$BACKLOGDB" + fi + fi - if [ ! -z "$LOGDB" ] && [ ! -f "$LOGDB" ]; then - LOG_BASE=$(basename "$LOGDB") - cp "$BACKUP_DIR/$LOG_BASE" "$LOGDB" + if [ ! -z "$LOGDB" ]; then + + sqlite3 $LOGDB "select * from log limit 1" > /dev/null + + if [ "$?" != "0" ]; then + LOG_BASE=$(basename "$LOGDB") + cp "$BACKUP_DIR/$LOG_BASE" "$LOGDB" + fi + fi procd_open_instance