Skip to content
Snippets Groups Projects
Commit 7f075c1e authored by rhatto's avatar rhatto
Browse files

Fixing lockfile checks for rsync handler

parent 9fe6ebf3
No related branches found
No related tags found
No related merge requests found
...@@ -847,7 +847,13 @@ function test_connect { ...@@ -847,7 +847,13 @@ function test_connect {
function set_lockfile { function set_lockfile {
if [ ! -z "$lockfile" ]; then if [ ! -z "$lockfile" ]; then
$touch $lockfile || warning "Could not create lockfile $lockfile" mkdir -p `dirname $lockfile`
if ( set -o noclobber; echo "$$" > "$lockfile" ) &> /dev/null; then
trap 'rm -f "$lockfile"' INT TERM EXIT
else
info "Could not create lockfile $lockfile, exiting"
exit
fi
fi fi
} }
...@@ -860,6 +866,23 @@ function unset_lockfile { ...@@ -860,6 +866,23 @@ function unset_lockfile {
} }
function check_lockfile {
local pid
if [ ! -z "$lockfile" ] && [ -f "$lockfile" ]; then
pid="`cat $lockfile`"
if ps $pid &> /dev/null; then
info "Another backup is running for $lockfile, skipping run"
exit
else
info "Found old lockfile $lockfile, removing it"
unset_lockfile
fi
fi
}
function set_filelist { function set_filelist {
filelist_flag="" filelist_flag=""
...@@ -1045,6 +1068,7 @@ function end_mux { ...@@ -1045,6 +1068,7 @@ function end_mux {
# the backup procedure # the backup procedure
eval_config eval_config
check_lockfile
set_lockfile set_lockfile
set_rsync_options set_rsync_options
start_mux start_mux
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment