- /usr/local/bin/postgres-make-one-base-backup "$host" "$port" "$username" "$cluster" "$version"
- rc=$?
- [ "$rc" = 0 ] && touch "$flagfilesuccess"
+ exec 201< "$flagfile"
+ if flock -w 0 -e 201; then
+ log "Running $host:$port $version/$cluster."
+ /usr/local/bin/postgres-make-one-base-backup "$host" "$port" "$username" "$cluster" "$version"
+ rc=$?
+ log "Base backup for $host:$port $version/$cluster exited with rc $rc."
+ [ "$rc" = 0 ] && touch "$flagfilesuccess"
+ flock -u 201
+ else
+ log "Cannot acquire lock on $flagfile, skipping $host:$port $version/$cluster."
+ fi