I've seen this mentioned several times before in this list but I never saw a fix for it. I'm using libol 0.2.18 and syslog-ng 1.4.5 on a debian woody system doing TCP logging as well as local logging. Syslog will run for many hours just fine and then die like this. --------snip from strace log. opts (-ff -F -i -v -T -x -p 8096 -s 64)------- [400c0574] open("/var/log/heimdall/syslog", O_WRONLY|O_NONBLOCK|O_APPEND|O_CREAT|O_NOCTTY, 0640) = 16 <0.000044> [400c1598] chown("/var/log/heimdall/syslog", 0, 4) = 0 <0.000031> [400c0844] fcntl(16, F_GETFL) = 0xc01 (flags O_WRONLY|O_NONBLOCK|O_APPEND) <0.000019> [400c0844] fcntl(16, F_SETFL, O_WRONLY|O_NONBLOCK|O_APPEND) = 0 <0.000015> [400c0844] fcntl(16, F_SETFD, FD_CLOEXEC) = 0 <0.000015> [400a490d] time(NULL) = 965816705 <0.000017> [400a490d] time(NULL) = 965816705 <0.000015> [400c05ed] close(7) = 0 <0.000106> [400c0674] write(2, "syslog-ng: io.c:172: io_iter: Assertion `i < nfds\' failed.\n", 59) = 59 <0.000038> [4004e8b8] rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0 <0.000031> [400ad797] getpid() = 8076 <0.000014> [4004e931] kill(8076, SIGABRT) = 0 <0.000019> [4004e931] --- SIGABRT (Aborted) --- ----------end snip----------------------------------------------------------- The hex in brackets the print instruction pointer at time of syscall. If there's anything I can do to help you diagnose the problem let me know. William Cordis