Opened 7 years ago

Last modified 7 years ago

#924 new enhancement

Improve sync performance

Reported by: Ian Hinder Owned by: Erik Schnetter
Priority: minor Milestone:
Component: SimFactory Version:
Keywords: Cc:


Running "sim sync" to a slow remote filesystem can take a long time due to having to check the time stamp and size of all the remote files. It would be good to speed this up.

One option would be to assume that files are only edited on the local machine, which is a common situation. Each invocation of sim sync to a given machine would record the time at which it completed, and subsequent syncs would only transfer those files which had changed on the local system since then.

A further optimisation would be to avoid statting all the local files by using a filesystem notification API such as fsevents or inotify to determine the required information. An advanced case would also use such a system on the remote side, so you wouldn't have to assume that the remote files were unchanged.

Attachments (0)

Change History (1)

comment:1 Changed 7 years ago by Erik Schnetter

To make the "record" idea safer, the target system could also (in addition to what Ian suggests above) record from where it was last synced, and when this happened. Only if both source and target have consistent information should this be used.

Of course, this cannot be the default, since the previous sync may have been aborted due to a transmission error, or the remote system may have deleted files, or the user may have modified files on the remote system.

Installing e.g. DropBox on both systems may be an easy solution.

Modify Ticket

Change Properties
Set your email in Preferences
as new The owner will remain Erik Schnetter.
Next status will be 'review'.
as The resolution will be set.
to The owner will be changed from Erik Schnetter to the specified user.
Next status will be 'confirmed'.
The owner will be changed from Erik Schnetter to anonymous.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.