On Wed, 2008-06-25 at 12:43, Nick Kew wrote: > On Wed, 25 Jun 2008 10:32:58 +0200 > Jimi Hullegård <[EMAIL PROTECTED]> wrote: > > > Hi, > > > > After we upgraded APR from 1.2.8 to 1.3.0 we get a strange error in > > tomcat's catalina.out that we have never seen before: > > > > Jun 24, 2008 11:42:09 AM > > org.apache.tomcat.util.net.AprEndpoint$Poller run SEVERE: Critical > > poller failure (restarting poller): [62] Timer expired > > Could this be related to > http://marc.info/?l=apr-dev&m=121347872322492&w=2 > > I had something similar with httpd+Event MPM on solaris. > Current workaround is to use Worker MPM.
OK, I've just tested APR variants with Event MPM. It is indeed that fix that breaks it. When I revert the fix, the problem goes away. The original patch posted to fix the same bug works fine. Can I suggest you apply the following patch to 1.3.x (should work on 1.3.0 or 1.3.2 too) and let us know if it fixes the problem you're seeing? Index: poll/unix/port.c =================================================================== --- poll/unix/port.c (revision 662044) +++ poll/unix/port.c (working copy) @@ -315,7 +315,15 @@ if (ret == -1) { (*num) = 0; - rv = apr_get_netos_error(); + if (errno == EINTR) { + rv = APR_EINTR; + } + else if (errno == ETIME) { + rv = APR_TIMEUP; + } + else { + rv = APR_EGENERAL; + } } else if (nget == 0) { rv = APR_TIMEUP; -- Nick Kew