You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org> on 2011/04/04 10:43:05 UTC

[jira] [Created] (SMXCOMP-866) HTTP Consumer timeout handling is incorrect

HTTP Consumer timeout handling is incorrect
-------------------------------------------

                 Key: SMXCOMP-866
                 URL: https://issues.apache.org/jira/browse/SMXCOMP-866
             Project: ServiceMix Components
          Issue Type: Bug
          Components: servicemix-http
    Affects Versions: 2011.01, 2010.02
            Reporter: Jean-Baptiste Onofré
             Fix For: 2011.02


The HTTP component is not able to handle async correctly:

2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
2011-03-24 10:31:14,600 | ERROR | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  537 | Error processing exchange InOut[
  id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
  status: Active
  role: consumer
  service: {http://my}content-based-router5
  endpoint: content-based-router5
  operation: {http://my]operation
  in: <?xml version="1.0" encoding="UTF-8"?><ns1...
]
java.lang.Exception: HTTP request has timed out
        at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:98)
        at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:598)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
        at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
        at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:632)
        at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:185)
        at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
        at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (SMXCOMP-866) HTTP Consumer timeout handling is incorrect

Posted by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SMXCOMP-866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Baptiste Onofré resolved SMXCOMP-866.
------------------------------------------

    Resolution: Cannot Reproduce
      Assignee: Jean-Baptiste Onofré

I have reproduced the issue with stress tests.

But in fact, it's not really an issue. It's simply that the target endpoint takes time to process on load.
By default the HTTP endpoint has a timeout of 60 seconds.

By increasing this timeout in HTTP endpoint xbean.xml, I didn't have any HTTP timeout.

I can't see any special test cases where the behavior is not correct (raising a timeout whereas it's not the case).

> HTTP Consumer timeout handling is incorrect
> -------------------------------------------
>
>                 Key: SMXCOMP-866
>                 URL: https://issues.apache.org/jira/browse/SMXCOMP-866
>             Project: ServiceMix Components
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: 2010.02, 2011.01
>            Reporter: Jean-Baptiste Onofré
>            Assignee: Jean-Baptiste Onofré
>            Priority: Blocker
>             Fix For: 2011.02
>
>
> The HTTP component is not able to handle async correctly:
> 2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
> 2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
> 2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
> 2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
> 2011-03-24 10:31:14,600 | ERROR | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  537 | Error processing exchange InOut[
>   id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
>   status: Active
>   role: consumer
>   service: {http://my}content-based-router5
>   endpoint: content-based-router5
>   operation: {http://my]operation
>   in: <?xml version="1.0" encoding="UTF-8"?><ns1...
> ]
> java.lang.Exception: HTTP request has timed out
>         at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:98)
>         at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:598)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
>         at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
>         at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:632)
>         at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:185)
>         at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
>         at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>         at java.lang.Thread.run(Thread.java:595)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (SMXCOMP-866) HTTP Consumer timeout handling is incorrect

Posted by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SMXCOMP-866?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Baptiste Onofré updated SMXCOMP-866:
-----------------------------------------

    Priority: Blocker  (was: Major)

> HTTP Consumer timeout handling is incorrect
> -------------------------------------------
>
>                 Key: SMXCOMP-866
>                 URL: https://issues.apache.org/jira/browse/SMXCOMP-866
>             Project: ServiceMix Components
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: 2010.02, 2011.01
>            Reporter: Jean-Baptiste Onofré
>            Priority: Blocker
>             Fix For: 2011.02
>
>
> The HTTP component is not able to handle async correctly:
> 2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
> 2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
> 2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
> 2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
> 2011-03-24 10:31:14,600 | ERROR | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  537 | Error processing exchange InOut[
>   id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
>   status: Active
>   role: consumer
>   service: {http://my}content-based-router5
>   endpoint: content-based-router5
>   operation: {http://my]operation
>   in: <?xml version="1.0" encoding="UTF-8"?><ns1...
> ]
> java.lang.Exception: HTTP request has timed out
>         at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:98)
>         at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:598)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
>         at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
>         at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:632)
>         at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:185)
>         at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
>         at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>         at java.lang.Thread.run(Thread.java:595)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (SMXCOMP-866) HTTP Consumer timeout handling is incorrect

Posted by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SMXCOMP-866?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13015316#comment-13015316 ] 

Jean-Baptiste Onofré commented on SMXCOMP-866:
----------------------------------------------

This issue is already registered at Fuse:
http://fusesource.com/issues/browse/ESB-1397

> HTTP Consumer timeout handling is incorrect
> -------------------------------------------
>
>                 Key: SMXCOMP-866
>                 URL: https://issues.apache.org/jira/browse/SMXCOMP-866
>             Project: ServiceMix Components
>          Issue Type: Bug
>          Components: servicemix-http
>    Affects Versions: 2010.02, 2011.01
>            Reporter: Jean-Baptiste Onofré
>             Fix For: 2011.02
>
>
> The HTTP component is not able to handle async correctly:
> 2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
> 2011-03-24 10:31:14,598 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  561 | Received exchange: status: Active, role: consumer
> 2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
> 2011-03-24 10:31:14,599 | DEBUG | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  623 | Retrieved correlation id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
> 2011-03-24 10:31:14,600 | ERROR | pool-flow.seda.servicemix-eip-thread-32 | HttpComponent            | emix.common.AsyncBaseLifeCycle  537 | Error processing exchange InOut[
>   id: ID:XX.XX.XX.XX-12ee4f371b6-11:559
>   status: Active
>   role: consumer
>   service: {http://my}content-based-router5
>   endpoint: content-based-router5
>   operation: {http://my]operation
>   in: <?xml version="1.0" encoding="UTF-8"?><ns1...
> ]
> java.lang.Exception: HTTP request has timed out
>         at org.apache.servicemix.http.processors.ConsumerProcessor.process(ConsumerProcessor.java:98)
>         at org.apache.servicemix.soap.SoapEndpoint.process(SoapEndpoint.java:400)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:627)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:598)
>         at org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:535)
>         at org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
>         at org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:632)
>         at org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:185)
>         at org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
>         at org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>         at java.lang.Thread.run(Thread.java:595)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira