synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ruwan Linton <ruwan.lin...@gmail.com>
Subject Re: Synapse with IBM JDK 1.5 over httpcore-nio
Date Mon, 05 Oct 2009 02:22:23 GMT
Hi Oleg,

I didn't have time to look into this and finally found that this is a
regression, which occurs even with the SUN JDK.

If you change the synapse-nhttp modules dependency of the httpcore to
4.1-alpha1 and build synapse nhttp transport test cases are failing and also
when you got the build skipping the tests it is forwarding the request to
the server and delivers the response back to the client but, after 30
seconds (socket timeout) I see a looping stacktrace of the IOReactor as
follows;

Probably this is because the socket is not being closed. Any clue on what
goes wrong here.


2009-10-05 07:43:52,899 [-] [http-Sender I/O dispatcher-1]  WARN
HttpCoreNIOSender System may be unstable: IOReactor encountered a runtime
exception : null
java.lang.NullPointerException
    at
org.apache.synapse.transport.nhttp.ClientHandler.timeout(ClientHandler.java:265)
    at
org.apache.http.impl.nio.DefaultClientIOEventDispatch.timeout(DefaultClientIOEventDispatch.java:160)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.timeoutCheck(BaseIOReactor.java:263)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.validate(BaseIOReactor.java:211)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:279)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
    at
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
    at java.lang.Thread.run(Thread.java:619)
2009-10-05 07:43:53,894 [-] [http-Sender I/O dispatcher-1]  WARN
HttpCoreNIOSender System may be unstable: IOReactor encountered a runtime
exception : null
java.lang.NullPointerException
    at
org.apache.http.impl.nio.DefaultClientIOEventDispatch.inputReady(DefaultClientIOEventDispatch.java:148)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:161)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:339)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
    at
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
    at java.lang.Thread.run(Thread.java:619)
2009-10-05 07:43:53,895 [-] [http-Sender I/O dispatcher-1]  WARN
HttpCoreNIOSender System may be unstable: IOReactor encountered a runtime
exception : null
java.lang.NullPointerException
    at
org.apache.http.impl.nio.DefaultClientIOEventDispatch.inputReady(DefaultClientIOEventDispatch.java:148)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:161)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:339)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:319)
    at
org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:275)
    at
org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
    at
org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:528)
    at java.lang.Thread.run(Thread.java:619)


Thanks,
Ruwan

On Sat, Sep 26, 2009 at 7:18 AM, Ruwan Linton <ruwan.linton@gmail.com>wrote:

> Oleg, I am trying to reproduce this, but it is not consistent so I was not
> been able to get the exact logs, even though I got it couple of times when I
> was trying it yesterday :-(
>
> Will get back to you once I get some useful data.
>
> Thanks a lot for your help.
>
> Thanks,
> Ruwan
>
>
> On Sat, Sep 26, 2009 at 4:47 AM, Oleg Kalnichevski <olegk@apache.org>wrote:
>
>> Ruwan Linton wrote:
>>
>>> Hi Oleg,
>>>
>>> Thanks, Yes this does solve most part of the problem, may be we can make
>>> it a configuration as well apart from the automatic tuning that you are
>>> planing to do, so in case if the autodetection fails for enabling that users
>>> can do it manually using the nhttp.properties file.
>>>
>>> But, it still brings IOReactor down on high loads, where SUN JDK has no
>>> issue at all in serving. I will dig more into the issue and share any
>>> information if I could find the issue.
>>>
>>>
>> How exactly does that happen? Are you seeing any exceptions?
>>
>> Oleg
>>
>>
>>  Thanks,
>>> Ruwan
>>>
>>> On Fri, Sep 25, 2009 at 1:29 PM, Oleg Kalnichevski <olegk@apache.org<mailto:
>>> olegk@apache.org>> wrote:
>>>
>>>    On Fri, Sep 25, 2009 at 01:07:00PM +0530, Ruwan Linton wrote:
>>>     > Has any one tried to run synapse on IBM JDK 1.5?? I have tried
>>>    this but
>>>     > having some issue with the HTTP NIO transport :-(
>>>     >
>>>     > Oleg, I had a look at the issue [1] and tried synapse with the
>>>    4.1-alpha1
>>>     > release of the httpcore, but still the issue persists. It seems
>>>    it is taking
>>>     > a long time to send the request out from synapse to the actual
>>>    service. Any
>>>     > clue on this?? Was not being able to capture the thread dump as
>>> well,
>>>     > because when I tried to kill -3 synapse IO reactor sent on to a
>>> loop.
>>>     >
>>>     > Please note that this is IBM JDK 1.5.
>>>     >
>>>     > Thanks,
>>>     > Ruwan
>>>     >
>>>     > [1] - https://issues.apache.org/jira/browse/HTTPCORE-155
>>>     >
>>>     > --
>>>     > Ruwan Linton
>>>     > Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
>>>     > WSO2 Inc.; http://wso2.org
>>>     > email: ruwan@wso2.com <mailto:ruwan@wso2.com>; cell: +94 77 341
>>> 3097
>>>     > blog: http://ruwansblog.blogspot.com
>>>
>>>    Ruwan,
>>>
>>>    The IBM JRE compatibility mode needs to be activated using this
>>>    parameter:
>>>
>>>
>>> http://hc.apache.org/httpcomponents-core/httpcore-nio/apidocs/org/apache/http/nio/params/NIOReactorPNames.html#INTEREST_OPS_QUEUEING
>>>
>>>    Per default HttpCore assumes the underlying JRE has a sane
>>>    implementation of
>>>    SelectionKey.
>>>
>>>    I will be out of contract as of next week and will have lots of
>>>    spare time on
>>>    my hands. I am planning to contribute a piece of code to Synapse
>>>    that turns on
>>>    interest op queueing depending on the JRE and as well as some other
>>>    minor
>>>    imrovements.
>>>
>>>    Cheers
>>>
>>>    Oleg
>>>
>>>    ---------------------------------------------------------------------
>>>    To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
>>>    <mailto:dev-unsubscribe@synapse.apache.org>
>>>    For additional commands, e-mail: dev-help@synapse.apache.org
>>>    <mailto:dev-help@synapse.apache.org>
>>>
>>>
>>>
>>>
>>> --
>>> Ruwan Linton
>>> Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
>>> WSO2 Inc.; http://wso2.org
>>> email: ruwan@wso2.com <mailto:ruwan@wso2.com>; cell: +94 77 341 3097
>>> blog: http://ruwansblog.blogspot.com
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
>> For additional commands, e-mail: dev-help@synapse.apache.org
>>
>>
>
>
> --
> Ruwan Linton
> Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
> WSO2 Inc.; http://wso2.org
> email: ruwan@wso2.com; cell: +94 77 341 3097
>
> blog: http://ruwansblog.blogspot.com
>



-- 
Ruwan Linton
Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: ruwan@wso2.com; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com

Mime
View raw message