hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chas W (JIRA)" <j...@apache.org>
Subject [jira] Created: (HTTPCORE-180) "I/O dispatch worker terminated abnormally" casued by NPE with extremely low timeout settings
Date Thu, 15 Jan 2009 00:32:59 GMT
"I/O dispatch worker terminated abnormally" casued by NPE with extremely low timeout settings

                 Key: HTTPCORE-180
                 URL: https://issues.apache.org/jira/browse/HTTPCORE-180
             Project: HttpComponents HttpCore
          Issue Type: Bug
          Components: HttpCore NIO
    Affects Versions: 4.0-beta3, 4.0-beta2
         Environment: java version "1.6.0_10"
Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
Java HotSpot(TM) Server VM (build 11.0-b15, mixed mode)

            Reporter: Chas W
            Priority: Minor

I'm running a high throughput nio http client (essentially a small webcrawler) through the
apache HttpCore NIO extensions -- my code is based largely off the sample client at http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/module-nio/src/examples/org/apache/http/examples/nio/NHttpClient.java.

    I've manually set both the 'connection timeout' and 'socket timeout' limits to 1ms, in
order to force timeouts to test a portion of my code.

    After doing so, I repeatedly get the following error: "I/O dispatch worker terminated
abnormally"; it's an IOException thrown from the 'ioReactor.execute' part of the sample code
mentioned above. I get it when requesting high volumes of URLs -- it sometimes occours very
quickly, or other times won't happen for up to 10 minutes or so.

    Here's the printStackTrack output for the 'getCause()' method on the IOexception:

        at org.apache.http.nio.protocol.AsyncNHttpClientHandler.closed(AsyncNHttpClientHandler.java:115)
        at org.apache.http.nio.protocol.BufferingHttpClientHandler.closed(BufferingHttpClientHandler.java:98)
        at org.apache.http.impl.nio.DefaultClientIOEventDispatch.disconnected(DefaultClientIOEventDispatch.java:93)
        at org.apache.http.impl.nio.reactor.BaseIOReactor.sessionClosed(BaseIOReactor.java:222)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.processClosedSessions(AbstractIOReactor.java:277)
        at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:150)
        at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:70)
        at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:362)
        at java.lang.Thread.run(Thread.java:619)

      Even though the error seems to stem from the httpcore library, I've commented out all
of my code to see if it fixes the problem -- it doesn't. I tried upgrading from the 4.0-beta2
to the 4.0-beta3 release -- this also does not solve the problem.

       Again, this problem only occours when connection timeout and socket timeout are set
extremely low (1ms), and does not seem to occour with normal timeout values.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org

View raw message