Run sync after timeout in inotify mode even when no changes detected.

pull/12/head
onovy 9 years ago
parent b531479414
commit 52f63f2e12

@ -1993,11 +1993,21 @@ function SyncOnChanges
fi
Log "#### Monitoring now."
inotifywait --exclude $OSYNC_DIR $RSYNC_EXCLUDE -qq -r -e create -e modify -e delete -e move -e attrib "$MASTER_SYNC_DIR" &
inotifywait --exclude $OSYNC_DIR $RSYNC_EXCLUDE -qq -r -e create -e modify -e delete -e move -e attrib --timeout "$MAX_WAIT" "$MASTER_SYNC_DIR" &
sub_pid=$!
wait $sub_pid
Log "#### Changes detected, waiting $MIN_WAIT seconds before running next sync."
sleep $MIN_WAIT
retval=$?
if [ $retval == 0 ]
then
Log "#### Changes detected, waiting $MIN_WAIT seconds before running next sync."
sleep $MIN_WAIT
elif [ $retval == 2 ]
then
Log "#### $MAX_WAIT timeout reached, running sync."
else
LogError "#### inotify error detected, waiting $MIN_WAIT seconds before running next sync."
sleep $MIN_WAIT
fi
done
}

@ -87,6 +87,10 @@ HARD_MAX_EXEC_TIME=10600
## Minimum time (in seconds) in file monitor /daemon mode between modification detection and sync task in order to let copy operations finish.
MIN_WAIT=60
## Maximum time (in seconds) waiting in file monitor / daemon mode. After this time, sync is run.
## Use 0 to wait indefinitely.
MAX_WAIT=300
## ---------- BACKUP AND DELETION OPTIONS
## Enabling this option will keep a backup of a file on the target replica if it gets updated from the source replica. Backups will be made to .osync_workdir/backups

Loading…
Cancel
Save