axkibe/lsyncd — Issue #106: Better error handling on pipe write()
Author: brainstorm
Created: 2011-12-30 15:11:41+00:00
State: open

After a (long) while working properly, lsyncd logs the following log (error?) message:

Fri Dec 30 06:15:23 2011 Normal: immediatly broken pipe.

The apparently offending line:

https://github.com/axkibe/lsyncd/blob/master/lsyncd.c#L969

Attaching to the process with strace reveals no syscalls being issued by lsyncd. Furthermore, it increasingly consumes the memory on the machine (71,8 % and growing), swapping heavily too:

6122 hiseq 20 0 10.6g 5.5g 336 D 0.0 71.8 272:09.26 lsyncd

For now, restarting the daemon solves the issue:

killall -9 lsyncd

But printing the error code stored in "len" variable would help to debug and eventually handle future errors more gracefully.

Thanks @percyfal for the heads up and Axel for this software !
Roman

PD: Mind the typo too "immediately" ;)