[ 
https://issues.apache.org/jira/browse/QPIDJMS-516?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sai Pothuraju updated QPIDJMS-516:
----------------------------------
    Description: 
We notice a behavior where once we are able to connect and receive messages, at 
some point, the consumer stops sending acknowledgements. After 60 seconds, we 
get hit the drain timeout exception even though the messages are being sent. 

Reproducible using one of the examples provided 
[https://github.com/apache/qpid-jms/blob/master/qpid-jms-examples/src/main/java/org/apache/qpid/jms/example/Receiver.java]

org.apache.qpid.jms.JmsOperationTimedOutException: Remote did not respond to a 
drain request in timeorg.apache.qpid.jms.JmsOperationTimedOutException: Remote 
did not respond to a drain request in time at 
org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException.toJMSException(ProviderOperationTimedOutException.java:39)
 at 
org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException.toJMSException(ProviderOperationTimedOutException.java:25)
 at 
org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:80)
 at 
org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:112)
 at org.apache.qpid.jms.JmsConnection.pull(JmsConnection.java:915) at 
org.apache.qpid.jms.JmsConnection.pull(JmsConnection.java:899) at 
org.apache.qpid.jms.JmsMessageConsumer.performPullIfRequired(JmsMessageConsumer.java:732)
 at org.apache.qpid.jms.JmsMessageConsumer.dequeue(JmsMessageConsumer.java:332) 
at org.apache.qpid.jms.JmsMessageConsumer.receive(JmsMessageConsumer.java:213) 
at com.aireon.amqp.App.main(App.java:85)Caused by: 
org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException: 
Remote did not respond to a drain request in time at 
org.apache.qpid.jms.provider.amqp.AmqpConsumer.lambda$stop$1(AmqpConsumer.java:184)
 at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98) at 
io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:170) 
at 
io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
 at 
io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
 at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) at 
io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
 at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
at java.base/java.lang.Thread.run(Thread.java:832)

  was:
We've used one of the receiver example 
(https://github.com/apache/qpid-jms/blob/master/qpid-jms-examples/src/main/java/org/apache/qpid/jms/example/Receiver.java)
 to test out this lib.

We notice a behavior where once we are able to connect and receive messages, at 
some point, the consumer stops sending acknowledgements for 60 seconds and we 
get hit the drain timeout exception even though the messages are being sent by 
the broker. 

 

org.apache.qpid.jms.JmsOperationTimedOutException: Remote did not respond to a 
drain request in timeorg.apache.qpid.jms.JmsOperationTimedOutException: Remote 
did not respond to a drain request in time at 
org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException.toJMSException(ProviderOperationTimedOutException.java:39)
 at 
org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException.toJMSException(ProviderOperationTimedOutException.java:25)
 at 
org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:80)
 at 
org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:112)
 at org.apache.qpid.jms.JmsConnection.pull(JmsConnection.java:915) at 
org.apache.qpid.jms.JmsConnection.pull(JmsConnection.java:899) at 
org.apache.qpid.jms.JmsMessageConsumer.performPullIfRequired(JmsMessageConsumer.java:732)
 at org.apache.qpid.jms.JmsMessageConsumer.dequeue(JmsMessageConsumer.java:332) 
at org.apache.qpid.jms.JmsMessageConsumer.receive(JmsMessageConsumer.java:213) 
at com.aireon.amqp.App.main(App.java:85)Caused by: 
org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException: 
Remote did not respond to a drain request in time at 
org.apache.qpid.jms.provider.amqp.AmqpConsumer.lambda$stop$1(AmqpConsumer.java:184)
 at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98) at 
io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:170) 
at 
io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
 at 
io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
 at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) at 
io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
 at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
at java.base/java.lang.Thread.run(Thread.java:832)


> Constantly receiving drain request timeouts
> -------------------------------------------
>
>                 Key: QPIDJMS-516
>                 URL: https://issues.apache.org/jira/browse/QPIDJMS-516
>             Project: Qpid JMS
>          Issue Type: Bug
>          Components: qpid-jms-client
>    Affects Versions: 0.54.0
>            Reporter: Sai Pothuraju
>            Priority: Major
>
> We notice a behavior where once we are able to connect and receive messages, 
> at some point, the consumer stops sending acknowledgements. After 60 seconds, 
> we get hit the drain timeout exception even though the messages are being 
> sent. 
> Reproducible using one of the examples provided 
> [https://github.com/apache/qpid-jms/blob/master/qpid-jms-examples/src/main/java/org/apache/qpid/jms/example/Receiver.java]
> org.apache.qpid.jms.JmsOperationTimedOutException: Remote did not respond to 
> a drain request in timeorg.apache.qpid.jms.JmsOperationTimedOutException: 
> Remote did not respond to a drain request in time at 
> org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException.toJMSException(ProviderOperationTimedOutException.java:39)
>  at 
> org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException.toJMSException(ProviderOperationTimedOutException.java:25)
>  at 
> org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:80)
>  at 
> org.apache.qpid.jms.exceptions.JmsExceptionSupport.create(JmsExceptionSupport.java:112)
>  at org.apache.qpid.jms.JmsConnection.pull(JmsConnection.java:915) at 
> org.apache.qpid.jms.JmsConnection.pull(JmsConnection.java:899) at 
> org.apache.qpid.jms.JmsMessageConsumer.performPullIfRequired(JmsMessageConsumer.java:732)
>  at 
> org.apache.qpid.jms.JmsMessageConsumer.dequeue(JmsMessageConsumer.java:332) 
> at 
> org.apache.qpid.jms.JmsMessageConsumer.receive(JmsMessageConsumer.java:213) 
> at com.aireon.amqp.App.main(App.java:85)Caused by: 
> org.apache.qpid.jms.provider.exceptions.ProviderOperationTimedOutException: 
> Remote did not respond to a drain request in time at 
> org.apache.qpid.jms.provider.amqp.AmqpConsumer.lambda$stop$1(AmqpConsumer.java:184)
>  at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98) at 
> io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:170)
>  at 
> io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
>  at 
> io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
>  at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) at 
> io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
>  at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) 
> at java.base/java.lang.Thread.run(Thread.java:832)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to