Would you care to explain to me this fix, please? As I read it, it only kicks in in case write(2) returns with a 0. But this 0 doesn't mean 0 bytes have been written, but something else. I'm a bit confused. Keep in mind that I haven't read your code all too well yet ;).
check fd_write in libol/src/io.c, which handles EINTR and EAGAIN and returns 0 instead of -1 for those reasons.
I see, thanks for the pointer (I'm surprised EWOULDBLOCK is portable enough). Additional question: Have you or anyone else done any tests with O_SYNC or mounting the log partition with noatime? I'm asking because I'm trying to isolate a performance issue on a central loghost.
thanks for the report.
I should also like to ask you about the status of the template() patch [1] done by one of my team mates. He's not working on this project anymore and I've taken over. If I get around to fix your concerns mentioned in [2], would you still consider it for inclusion into 1.6.0? [1] https://lists.balabit.hu/pipermail/syslog-ng/2002-September/003839.html [2] https://lists.balabit.hu/pipermail/syslog-ng/2002-October/004047.html Best regards, Roberto Nibali, ratz -- echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc