axkibe/lsyncd — Issue #57: Data loss from failed rsync runs
Author: axkibe
Created: 2011-11-16 15:05:25+00:00
State: open

Originally filed by dev...@gmail.com on 2011-05-05T23:18:26

What steps will reproduce the problem?

1. Run lsyncd and have it sync FSs /a/b to /x/y
2. Fill /x/y FS to brim, until ENOSPC is returned.
3. Copy new stuff in /a/b from somewhere

What is the expected output? What do you see instead?

lsyncd should detect that rsync has failed to sync /a/b to /x/y because of ENOSPC and it should retry the events. And of course, a syslog should be issued in this case.

What happens is that when the space does become available after user finds /x/y full, /a/b and /x/y are still out of sync.

What version of the product are you using? On what operating system?
2.0.4.

Please provide any additional information below.

The easy workaround is to restart lsyncd. But that should not be needed. Many times this failure will go undetected and user will happily think that lsyncd is working its magic, and his files are mirrored. By the time user may find out about the FS full situation, it may be too late (changes in /a/b may be dead) and a severe data loss may occur.