Latest typos fixed... works again.
This commit is contained in:
parent
6ba32c0e08
commit
a918d89752
|
@ -8,9 +8,8 @@ RECENT CHANGES
|
||||||
|
|
||||||
- Added (much) more verbose debugging (and possibility to remove debug code to gain speed)
|
- Added (much) more verbose debugging (and possibility to remove debug code to gain speed)
|
||||||
- Force tree function to overwrite earlier tree files
|
- Force tree function to overwrite earlier tree files
|
||||||
! Check existing dirs before checking for state dirs
|
|
||||||
! Add Logger DEBUG to all eval statements
|
! Add Logger DEBUG to all eval statements
|
||||||
! Replace child_pid by $? directly
|
- Replace child_pid by $? directly, add a better sub process killer in TrapQuit
|
||||||
- Refactor [local master, local slave, remote slave] code to [local, remote][initiator, target]code
|
- Refactor [local master, local slave, remote slave] code to [local, remote][initiator, target]code
|
||||||
- Added some automatic typo checks in code, for _DEBUG mode (and _PARANOIA_DEBUG now)
|
- Added some automatic typo checks in code, for _DEBUG mode (and _PARANOIA_DEBUG now)
|
||||||
- Improved Logging
|
- Improved Logging
|
||||||
|
|
26
osync.sh
26
osync.sh
|
@ -4,7 +4,7 @@ PROGRAM="Osync" # Rsync based two way sync engine with fault tolerance
|
||||||
AUTHOR="(L) 2013-2015 by Orsiris \"Ozy\" de Jong"
|
AUTHOR="(L) 2013-2015 by Orsiris \"Ozy\" de Jong"
|
||||||
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr"
|
||||||
PROGRAM_VERSION=1.1-unstable
|
PROGRAM_VERSION=1.1-unstable
|
||||||
PROGRAM_BUILD=2015091209
|
PROGRAM_BUILD=2015091301
|
||||||
|
|
||||||
## type doesn't work on platforms other than linux (bash). If if doesn't work, always assume output is not a zero exitcode
|
## type doesn't work on platforms other than linux (bash). If if doesn't work, always assume output is not a zero exitcode
|
||||||
if ! type -p "$BASH" > /dev/null; then
|
if ! type -p "$BASH" > /dev/null; then
|
||||||
|
@ -125,7 +125,7 @@ function TrapStop {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $soft_stop -eq 1 ]; then
|
if [ $soft_stop -eq 1 ]; then
|
||||||
Logger " /!\ WARNING: CTRL+C hit twice. Quitting osync. Please wait..." "WARN"
|
Logger " /!\ WARNING: CTRL+C hit twice. Exiting osync. Please wait while replicas get unlocked..." "WARN"
|
||||||
soft_stop=2
|
soft_stop=2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -794,7 +794,7 @@ function CreateStateDirs {
|
||||||
__CheckArguments 0 $# $FUNCNAME "$*" #__WITH_PARANOIA_DEBUG
|
__CheckArguments 0 $# $FUNCNAME "$*" #__WITH_PARANOIA_DEBUG
|
||||||
|
|
||||||
_CreateStateDirsLocal "$INITIATOR_STATE_DIR"
|
_CreateStateDirsLocal "$INITIATOR_STATE_DIR"
|
||||||
if [ "$REMOTE_SYNC" == "no" ]; then
|
if [ "$REMOTE_SYNC" != "yes" ]; then
|
||||||
_CreateStateDirsLocal "$TARGET_STATE_DIR"
|
_CreateStateDirsLocal "$TARGET_STATE_DIR"
|
||||||
else
|
else
|
||||||
_CreateStateDirsRemote "$TARGET_STATE_DIR"
|
_CreateStateDirsRemote "$TARGET_STATE_DIR"
|
||||||
|
@ -866,7 +866,7 @@ function CheckReplicaPaths {
|
||||||
#fi
|
#fi
|
||||||
|
|
||||||
_CheckReplicaPathsLocal "$INITIATOR_SYNC_DIR"
|
_CheckReplicaPathsLocal "$INITIATOR_SYNC_DIR"
|
||||||
if [ "$REMOTE_SYNC" == "no" ]; then
|
if [ "$REMOTE_SYNC" != "yes" ]; then
|
||||||
_CheckReplicaPathsLocal "$TARGET_SYNC_DIR"
|
_CheckReplicaPathsLocal "$TARGET_SYNC_DIR"
|
||||||
else
|
else
|
||||||
_CheckReplicaPathsRemote "$TARGET_SYNC_DIR"
|
_CheckReplicaPathsRemote "$TARGET_SYNC_DIR"
|
||||||
|
@ -912,7 +912,7 @@ function CheckDiskSpace {
|
||||||
__CheckArguments 0 $# $FUNCNAME "$*" #__WITH_PARANOIA_DEBUG
|
__CheckArguments 0 $# $FUNCNAME "$*" #__WITH_PARANOIA_DEBUG
|
||||||
|
|
||||||
_CheckDiskSpaceLocal "$INITIATOR_SYNC_DIR"
|
_CheckDiskSpaceLocal "$INITIATOR_SYNC_DIR"
|
||||||
if [ "$REMOTE_SYNC" == "no" ]; then
|
if [ "$REMOTE_SYNC" != "yes" ]; then
|
||||||
_CheckDiskSpaceLocal "$TARGET_SYNC_DIR"
|
_CheckDiskSpaceLocal "$TARGET_SYNC_DIR"
|
||||||
else
|
else
|
||||||
_CheckDiskSpaceRemote "$TARGET_SYNC_DIR"
|
_CheckDiskSpaceRemote "$TARGET_SYNC_DIR"
|
||||||
|
@ -983,7 +983,7 @@ function _WriteLockFilesRemote {
|
||||||
|
|
||||||
cmd="$SSH_CMD \"echo $SCRIPT_PID@$SYNC_ID | $COMMAND_SUDO tee \\\"$lockfile\\\" > /dev/null \" &"
|
cmd="$SSH_CMD \"echo $SCRIPT_PID@$SYNC_ID | $COMMAND_SUDO tee \\\"$lockfile\\\" > /dev/null \" &"
|
||||||
eval $cmd
|
eval $cmd
|
||||||
WaitForTaskCompletion $? 0 1800 $FUNCNAME
|
WaitForTaskCompletion $! 0 1800 $FUNCNAME
|
||||||
if [ $? != 0 ]; then
|
if [ $? != 0 ]; then
|
||||||
Logger "Could not set lock on remote target replica." "CRITICAL"
|
Logger "Could not set lock on remote target replica." "CRITICAL"
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -1031,17 +1031,15 @@ function _CheckLocksRemote { #TODO: Rewrite this a bit more beautiful
|
||||||
|
|
||||||
cmd="$SSH_CMD \"if [ -f \\\"$lockfile\\\" ]; then cat \\\"$lockfile\\\"; fi\" > $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID &"
|
cmd="$SSH_CMD \"if [ -f \\\"$lockfile\\\" ]; then cat \\\"$lockfile\\\"; fi\" > $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID &"
|
||||||
eval $cmd
|
eval $cmd
|
||||||
WaitForTaskCompletion $? 0 1800 $FUNCNAME
|
WaitForTaskCompletion $! 0 1800 $FUNCNAME
|
||||||
if [ $? != 0 ]; then
|
if [ $? != 0 ]; then
|
||||||
if [ -f $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID ]; then
|
if [ -f $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID ]; then
|
||||||
local lockfile_content=$(cat $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID)
|
local lockfile_content=$(cat $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID)
|
||||||
else
|
|
||||||
Logger "No remote lockfile found." "NOTICE"
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
Logger "Cannot get remote lockfile." "CRITICAL"
|
Logger "Cannot get remote lockfile." "CRITICAL"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
local lock_pid=${lockfile_content%@*}
|
local lock_pid=${lockfile_content%@*}
|
||||||
local lock_sync_id=${lockfile_content#*@}
|
local lock_sync_id=${lockfile_content#*@}
|
||||||
|
@ -1113,9 +1111,9 @@ function _UnlockReplicasRemote {
|
||||||
CheckConnectivity3rdPartyHosts
|
CheckConnectivity3rdPartyHosts
|
||||||
CheckConnectivityRemoteHost
|
CheckConnectivityRemoteHost
|
||||||
|
|
||||||
cmd="$SSH_CMD \"if [ -f \\\"$localfile\\\" ]; then $COMMAND_SUDO rm \\\"$lockfile\\\"; fi 2>&1\" > $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID &"
|
cmd="$SSH_CMD \"if [ -f \\\"$lockfile\\\" ]; then $COMMAND_SUDO rm -f \\\"$lockfile\\\"; fi 2>&1\" > $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID &"
|
||||||
eval $cmd
|
eval $cmd
|
||||||
WaitForTaskCompletion $? 0 1800 $FUNCNAME
|
WaitForTaskCompletion $! 0 1800 $FUNCNAME
|
||||||
if [ $? != 0 ]; then
|
if [ $? != 0 ]; then
|
||||||
Logger "Could not unlock remote replica." "ERROR"
|
Logger "Could not unlock remote replica." "ERROR"
|
||||||
Logger "Command Output:\n$(cat $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID)" "NOTICE"
|
Logger "Command Output:\n$(cat $RUN_DIR/osync_$FUNCNAME_$SCRIPT_PID)" "NOTICE"
|
||||||
|
@ -1720,7 +1718,7 @@ function _SoftDeleteLocal {
|
||||||
else
|
else
|
||||||
Dummy &
|
Dummy &
|
||||||
fi
|
fi
|
||||||
WaitForCompletion $? $SOFT_MAX_EXEC_TIME $HARD_MAX_EXEC_TIME $FUNCNAME
|
WaitForCompletion $! $SOFT_MAX_EXEC_TIME $HARD_MAX_EXEC_TIME $FUNCNAME
|
||||||
retval=$?
|
retval=$?
|
||||||
if [ $retval -ne 0 ]; then
|
if [ $retval -ne 0 ]; then
|
||||||
Logger "Error while executing cleanup on [$replica_type] replica." "ERROR"
|
Logger "Error while executing cleanup on [$replica_type] replica." "ERROR"
|
||||||
|
@ -1759,7 +1757,7 @@ function _SoftDeleteRemote {
|
||||||
else
|
else
|
||||||
Dummy &
|
Dummy &
|
||||||
fi
|
fi
|
||||||
WaitForCompletion $? $SOFT_MAX_EXEC_TIME $HARD_MAX_EXEC_TIME $FUNCNAME
|
WaitForCompletion $! $SOFT_MAX_EXEC_TIME $HARD_MAX_EXEC_TIME $FUNCNAME
|
||||||
retval=$?
|
retval=$?
|
||||||
if [ $retval -ne 0 ]; then
|
if [ $retval -ne 0 ]; then
|
||||||
Logger "Error while executing cleanup on remote target replica." "ERROR"
|
Logger "Error while executing cleanup on remote target replica." "ERROR"
|
||||||
|
|
Loading…
Reference in New Issue