localtreeFilename="${3}"# filename to output tree (will be prefixed with $replicaType)
localconflictFileName="{4}"
__CheckArguments 4$#"$@"#__WITH_PARANOIA_DEBUG
local retval
local escapedReplicaPath
local rsyncCmd
#_getCtimeMtime
#compare
}
# rsync does sync with mtime, but file attribute modifications only change ctime.
# Hence, detect newer ctime on the replica that gets updated first with CONFLICT_PREVALANCE and update all newer file attributes on this replica before real update
function syncAttrs {
@ -1335,10 +1351,11 @@ function deletionPropagation {
######
###### Step 0a & 0b: Create current file list of replicas
###### Step 1a & 1b: Create deleted file list of replicas
###### Step 2a & 2b: Create conflict file list of replicas
###### Step 3: Update file attributes
###### Step 3a & 3b: Update replicas
###### Step 4a & 4b: Propagate deletions on replicas
###### Step 5a & 5b: Create after run file list of replicas
###### Step 4a & 4b: Update replicas
###### Step 5a & 5b: Propagate deletions on replicas
###### Step 6a & 6b: Create after run file list of replicas
function Sync {
__CheckArguments 0$#"$@"#__WITH_PARANOIA_DEBUG
@ -2022,9 +2039,13 @@ function Init {
TARGET_BACKUP=""
fi
#WIP: change resume numbers when new conflict function will be done
#WIP: conflict list is not mandatory, but is still needed for acl resolution
#WIP: syncAttrs must move the file list to sub function, which checks which kind of file list to use