From: Alan J. Pippin Date: Sat, 17 Jan 2009 04:44:40 +0000 (-0700) Subject: Added code to destroy backup markers on local machine if replicate aborts X-Git-Url: http://git.pippins.net/embedvideo/.git/?a=commitdiff_plain;h=ecd17901ea99621f02c6531d1cdd146666f30ce8;p=zfs-ubuntu%2F.git Added code to destroy backup markers on local machine if replicate aborts --- diff --git a/zfs-replicate b/zfs-replicate index a082ce3..c7e7c2f 100755 --- a/zfs-replicate +++ b/zfs-replicate @@ -36,9 +36,24 @@ cleanup() { } fatal_and_exit() { echo -e 2>&1 "$1" + # Destroy the backup markers on the local filesystem if they exist + if [[ -n "$current_backup_marker" ]]; then + zfs list -t snapshot ${local_pool}/${current_backup_marker} > /dev/null 2>&1 + if [ $? == 0 ]; then + $zfs destroy ${local_pool}/${current_backup_marker} + fi + fi + if [[ -n "$previous_backup_marker" ]]; then + zfs list -t snapshot ${local_pool}/${previous_backup_marker} > /dev/null 2>&1 + if [ $? == 0 ]; then + $zfs destroy ${local_pool}/${previous_backup_marker} + fi + fi + # send email notification if [[ -n "$2" ]]; then echo -e "$1" | $mailx -s "zfs replicate on $hostname failed" "$2" fi + # exit exit 1 } trap fatal_and_exit INT