Deletion Protocol

The search for an easy method to delete files across TIR mirror sets.

TIR data is stored in a master data set on a central server and a local mirror data set on each client platform. Operations (create, modify, delete) on files in the dataset should be supported on the central server and all clients, and operation results propagated to the master and all mirror data sets.

Assume single user who operates on only one mirror set or the master set at one time.

The cavenet synchronization script (based on rsync) provides adequate support for file creation and modification. (Weaknesses include lack of support for simultaneous modifications to the same file on different mirror sets.) However, deletions must be performed and repeated manually on the server and all clients to be effective.

Basic function of rsync is to compare source and target data sets and copy from source to target files that are older or non-existent in the target data set. The --delete option causes rsync to delete files from the target data set that do not exist in the source.

The difficulty arises in that when a file exits in one mirror set and not in another the cases of a file having been deleted from the set where it doesn't exist and of a file having been newly created in the set where exists are indistiguishable, but call for very different synchronization processing. (Deletion of obsolete file in the former case and copying of the new file in the latter.)

Alternatives: