Future RSYNC enhancement/improvement suggestions

Jan Rafaj rafaj at cedric.vabo.cz
Fri Apr 19 03:25:01 EST 2002


Hello,

Recently while working with rsync as the way to mirror large (several
GB) archive on a regular basis, I came across several problems,
and also got the ideas about their possible solutions
- please could you investigate & consider implementing the features,
described below, to future RSYNC releases ?

- when the checksumming (consider very large archive, several GB)
  stage of rsync runs slow (~3 and more minutes), which is the
  case of either slower CPU machines or machines with older HDDs
  that dont have UDMA or have just UDMA33 transfer modes, one can
  often observe that the network connection to the master site
  shuts down and the mirroring fails (in subsequent mirroring
  attempts, when, f.e., the archive is already transferred from about
  90%). The reason why I think this happens, is the fact, that the
  bidirectionally-open connection is just reset by either client
  or server, becouse rsync does not do any transfer while
  the checksumming runs (I might be wrong, but this is what
  I observed), and the tcp connection is reset becouse of stall
  (I dont have clue by what means, becouse I'm no TCP/IP expert,
  but I suspect it might be just TCP/IP).
  How about adding a feature to keep the checksums in a berkeley-style
  database somewhere on the HDD separately, and with subsequent
  mirroring attempts, look to it just for the checksums, so that
  the rsync does not need to do checksumming of whole target
  (already mirrored) file tree ? I think implementing this could
  take some time, but it would certainly improve rsync's responsivenes
  and ease use with slow CPUs & HDDs

- make output of error & status messages from rsync uniformed,
  so that it could be easily parsed by scripts (it is not right
  now - rsync 2.5.5)

- perhaps if the network connection between rsync client and server
  stalls for some reason, implement something like 'tcp keepalive'
  feature ?

I know these are suggestions only; I dont have enough power nor knowledges
to implement them to rsync by myself (but I feel plagued myself with
the problems described), so I'm sending these solution ideas to you
in the hope they will be useful and could be implemented in the future.

Please let me know your opinion about this.

Thanks & regards,

Jan






More information about the rsync mailing list