I don't mean to be a bother, but do you have anything further on this, Bazsi? thanks, john -- John Morrissey _o /\ ---- __o jwm@horde.net _-< \_ / \ ---- < \, www.horde.net/ __(_)/_(_)________/ \_______(_) /_(_)__
On Mon, May 20, 2002 at 11:17:23AM -0400, John Morrissey wrote:
I don't mean to be a bother, but do you have anything further on this, Bazsi?
sorry no news. I wasn't able to reproduce the problem, and this makes it very difficult to hunt the bug. And I didn't have too much time lately. -- Bazsi PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1
On Wed, May 22, 2002 at 02:53:00PM +0200, Balazs Scheidler wrote:
On Mon, May 20, 2002 at 11:17:23AM -0400, John Morrissey wrote:
I don't mean to be a bother, but do you have anything further on this, Bazsi?
sorry no news. I wasn't able to reproduce the problem, and this makes it very difficult to hunt the bug. And I didn't have too much time lately.
Being unable to reproduce the problem, I tried to locate the problems: I made two patches, one against syslog-ng the other against libol, please check if these fixes your problems. /* this is against libol/src/io.c */ diff -u -r1.27 io.c --- io.c 21 Mar 2002 11:32:35 -0000 1.27 +++ io.c 27 May 2002 15:35:17 -0000 @@ -238,7 +238,9 @@ WRITE_FD(fd); else { verbose("io_iter(): POLLHUP on inactive fd!\n"); - close_fd(fd, CLOSE_EOF); + + /* we have no chance to flush if POLLHUP was received, therefore closekill immediately */ + closekill_fd(fd, CLOSE_EOF); } continue; } /* this against syslog-ng/src/afinet.c */ diff -u -r1.17 afinet.c --- src/afinet.c 26 Apr 2002 09:43:54 -0000 1.17 +++ src/afinet.c 27 May 2002 15:37:19 -0000 @@ -536,7 +536,8 @@ { CAST(afinet_dest, self, c); if (self->conn_fd) { - KILL_RESOURCE(&self->conn_fd->super.super); + /* KILL_RESOURCE(&self->conn_fd->super.super); */ + closekill_fd(self->conn_fd); self->conn_fd = NULL; } } -- Bazsi PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1
On Mon, May 27, 2002 at 05:38:00PM +0200, Balazs Scheidler wrote: % I made two patches, one against syslog-ng the other against libol, please % check if these fixes your problems. [snip] % --- src/afinet.c 26 Apr 2002 09:43:54 -0000 1.17 % +++ src/afinet.c 27 May 2002 15:37:19 -0000 % @@ -536,7 +536,8 @@ % { % CAST(afinet_dest, self, c); % if (self->conn_fd) { % - KILL_RESOURCE(&self->conn_fd->super.super); % + /* KILL_RESOURCE(&self->conn_fd->super.super); */ % + closekill_fd(self->conn_fd); When I built this, the compiler complained that closekill_fd() wants two args. I didn't bother checking and just assumed CLOSE_EOF was good enough for the second arg. :-) These patches seem to do it for me; I can't provoke syslog-ng into dying when the syslog hub goes away. Thanks a bunch for your work! Now, I hope I'm not asking too much, but should I expect a new release soon with this incorporated? I'll be rebuilding my local RPMs and deploying this to a few dozen machines and I'd like to update them to an "official" release. thanks again, john -- John Morrissey _o /\ ---- __o jwm@horde.net _-< \_ / \ ---- < \, www.horde.net/ __(_)/_(_)________/ \_______(_) /_(_)__
On Tue, 2002-05-28 at 21:26, John Morrissey wrote:
On Mon, May 27, 2002 at 05:38:00PM +0200, Balazs Scheidler wrote: % I made two patches, one against syslog-ng the other against libol, please % check if these fixes your problems. [snip] % --- src/afinet.c 26 Apr 2002 09:43:54 -0000 1.17 % +++ src/afinet.c 27 May 2002 15:37:19 -0000 % @@ -536,7 +536,8 @@ % { % CAST(afinet_dest, self, c); % if (self->conn_fd) { % - KILL_RESOURCE(&self->conn_fd->super.super); % + /* KILL_RESOURCE(&self->conn_fd->super.super); */ % + closekill_fd(self->conn_fd);
When I built this, the compiler complained that closekill_fd() wants two args. I didn't bother checking and just assumed CLOSE_EOF was good enough for the second arg. :-)
These patches seem to do it for me; I can't provoke syslog-ng into dying when the syslog hub goes away. Thanks a bunch for your work!
Now, I hope I'm not asking too much, but should I expect a new release soon with this incorporated? I'll be rebuilding my local RPMs and deploying this to a few dozen machines and I'd like to update them to an "official" release.
when I apply the patch to libol 0.2.3 the make then tries to validate the code using scsh - I end up getting the following messages: Warning: use of macro doesn't match definition (syntax-rules '() ((let-and (expr) clause clauses ...) (and expr (let-and clause clauses ...))) ((let-and (name expr) clause clauses ...) (let ((name expr)) (and name (let-and clause clauses ...)))) ((let-and expr) expr)) Error: attempt to call a non-procedure ('syntax-error '(#{Name let-and} ((pair? expr)) (op-matches (match # #)) (arg-matches (match # #)) (append op-matches arg-matches)) '#{Procedure 2489 (unnamed in make-name-generator in names)} '#{Procedure 2486 (unnamed in make-keyword-comparator in names)}) I'm using scsh 0.6.1 Is there a way to disable the scsh check in configure or maybe from the make? -sv
On Tue, Jun 04, 2002 at 03:39:20PM -0400, seth vidal wrote:
On Tue, 2002-05-28 at 21:26, John Morrissey wrote:
On Mon, May 27, 2002 at 05:38:00PM +0200, Balazs Scheidler wrote: % I made two patches, one against syslog-ng the other against libol, please % check if these fixes your problems. [snip] % --- src/afinet.c 26 Apr 2002 09:43:54 -0000 1.17 % +++ src/afinet.c 27 May 2002 15:37:19 -0000 % @@ -536,7 +536,8 @@ % { % CAST(afinet_dest, self, c); % if (self->conn_fd) { % - KILL_RESOURCE(&self->conn_fd->super.super); % + /* KILL_RESOURCE(&self->conn_fd->super.super); */ % + closekill_fd(self->conn_fd);
When I built this, the compiler complained that closekill_fd() wants two args. I didn't bother checking and just assumed CLOSE_EOF was good enough for the second arg. :-)
These patches seem to do it for me; I can't provoke syslog-ng into dying when the syslog hub goes away. Thanks a bunch for your work!
Now, I hope I'm not asking too much, but should I expect a new release soon with this incorporated? I'll be rebuilding my local RPMs and deploying this to a few dozen machines and I'd like to update them to an "official" release.
when I apply the patch to libol 0.2.3 the make then tries to validate the code using scsh - I end up getting the following messages:
Warning: use of macro doesn't match definition (syntax-rules '() ((let-and (expr) clause clauses ...) (and expr (let-and clause clauses ...))) ((let-and (name expr) clause clauses ...) (let ((name expr)) (and name (let-and clause clauses ...)))) ((let-and expr) expr))
Error: attempt to call a non-procedure ('syntax-error '(#{Name let-and} ((pair? expr)) (op-matches (match # #)) (arg-matches (match # #)) (append op-matches arg-matches)) '#{Procedure 2489 (unnamed in make-name-generator in names)} '#{Procedure 2486 (unnamed in make-keyword-comparator in names)})
I'm using scsh 0.6.1
Is there a way to disable the scsh check in configure or maybe from the make?
change line 22 of make_class.in from (syntax-rules '() to (syntax-rules () and it should work fine. I'll release a fixed version from libol 0.2.x and syslog-ng 1.4.x -- Bazsi PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1
participants (3)
-
Balazs Scheidler
-
John Morrissey
-
seth vidal