On Thu, Sep 04, 2003 at 11:02:20AM -0700, Hamer, Corie J. wrote:
> DBI::ProxyServer server failed to accept: No buffer space available
> 
> According to some HPUX documentation, this error really shouldn't be causing the 
> dbi::proxy server to crash. This error is probably just a client that aborts a 
> connection just after it has initiated the connection. Quote:
> 
> "If the application aborts with this error situation, it should be re-written so 
> that it will retry accept (1) system call. ENOBUFS is usually indicating transient 
> error. So, aborting the application just by seeing this error once should not be 
> proper action. The application should be modified so that it gets more robustness."
> HP Article WTECKBRC00005581
> 
> In the HPUX documentation, when it says "the application" I assume it must mean the 
> Net::Deamon or PlRPC, RPC::PlClient applications that are the underlying support for 
> the DBI::ProxyServer. However, this is only a shot in the dark.

Yes, the accept code in the Bind method of Net::Deamon needs enhancing
to deal sensibly with transient errors like ENOBUFS. Probably similar
to how it handles EINTR, so should be simple.

> Will an upgrade to DBI::proxy (or the other modules) fix this problem? Is there any 
> other workaround? (Currently I have a cron job that checks every 5 minutes to see if 
> dbi::proxy has stopped and then restart it. This shouldn't be necessary.)

Try patching the Net::Deamon code. If you do, and it works, please
post the patch (diff -u oldfile newfile).

Tim.

p.s. To all: I _think_ Jochen, the author of Net::Deamon and the PlRPC
modules is interested in finding someone willing and able to take
over their maintenance. Anyone interested should contact Jochen [CC'd].


Reply via email to