[
https://issues.apache.org/jira/browse/QPID-6249?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14587742#comment-14587742
]
ASF subversion and git services commented on QPID-6249:
-------------------------------------------------------
Commit 1685745 from [~godfrer] in branch 'java/trunk'
[ https://svn.apache.org/r1685745 ]
QPID-6249 : Refactory NonBlockingConnection (work by Lorenz Quack and Rob
Godfrey)
> [AMQP 1.0] - JMS AMQP 1.0 Client not sending keep-alive
> -------------------------------------------------------
>
> Key: QPID-6249
> URL: https://issues.apache.org/jira/browse/QPID-6249
> Project: Qpid
> Issue Type: Bug
> Components: JMS AMQP 1.0 Client
> Reporter: Mathias Wiberg
> Assignee: Rob Godfrey
>
> I'm using the 0.32 version of the Qpid JMS framework to connect to a
> Microsoft Azure Service bus broker (version 2.1). When there is no traffic
> over the link I'm getting disconnected each XX minutes (depending on the
> timeout setting in Azure). So it seems like the client doesn't send
> keep-alive?
> Here is the stacktrace from the client:
> 2014-11-27 10:03:10,355 [QpidConnectionInputThread-0] WARN
> o.s.j.c.SingleConnectionFactory - Encountered a JMSException - resetting the
> underlying JMS Connectionorg.apache.qpid.amqp_1_0.jms.SessionException: null
> at
> org.apache.qpid.amqp_1_0.jms.impl.SessionImpl$1.remoteEnd(SessionImpl.java:124)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.transport.SessionEndpoint.receiveEnd(SessionEndpoint.java:219)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receiveEnd(ConnectionEndpoint.java:609)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at org.apache.qpid.amqp_1_0.type.transport.End.invoke(End.java:75)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receive(ConnectionEndpoint.java:802)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.framing.FrameHandler.parse(FrameHandler.java:241)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.framing.ConnectionHandler.parse(ConnectionHandler.java:75)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.client.TCPTransportProvier.doRead(TCPTransportProvier.java:217)
> [qpid-amqp-1-0-client-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.client.TCPTransportProvier.access$000(TCPTransportProvier.java:43)
> [qpid-amqp-1-0-client-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.client.TCPTransportProvier$1.run(TCPTransportProvier.java:158)
> [qpid-amqp-1-0-client-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_67]
> 2014-11-27 10:03:10,372 [Thread-261] WARN o.s.j.c.SingleConnectionFactory -
> Encountered a JMSException - resetting the underlying JMS Connection
> org.apache.qpid.amqp_1_0.jms.MessageConsumerException: Force detach the link
> because the session is remotely ended.
> at
> org.apache.qpid.amqp_1_0.jms.impl.MessageConsumerImpl$1.run(MessageConsumerImpl.java:141)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_67]
> 2014-11-27 10:03:10,372 [QpidConnectionInputThread-0] DEBUG
> o.s.j.c.SingleConnectionFactory - Closing shared JMS Connection:
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl@21d28252
> 2014-11-27 10:03:10,372
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-198] WARN
> o.s.j.l.DefaultMessageListenerContainer - Setup of JMS message listener
> invoker failed for destination
> 'org.apache.qpid.amqp_1_0.jms.impl.QueueImpl@e4f134ac' - trying to recover.
> Cause: Closed javax.jms.IllegalStateException: Closed
> at
> org.apache.qpid.amqp_1_0.jms.impl.SessionImpl.checkClosed(SessionImpl.java:326)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.jms.impl.SessionImpl.getTransacted(SessionImpl.java:222)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.springframework.jms.listener.AbstractMessageListenerContainer.commitIfNecessary(AbstractMessageListenerContainer.java:573)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:358)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1102)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1094)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:991)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_67]
> 2014-11-27 10:03:16,336 [QpidConnectionInputThread-0] DEBUG
> o.s.j.c.SingleConnectionFactory - Could not close shared JMS Connection
> javax.jms.JMSException: Error while closing connection: Timed out while
> waiting for connection closure
> at
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl.close(ConnectionImpl.java:483)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.springframework.jms.connection.SingleConnectionFactory.closeConnection(SingleConnectionFactory.java:435)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.connection.SingleConnectionFactory.resetConnection(SingleConnectionFactory.java:330)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.connection.SingleConnectionFactory.onException(SingleConnectionFactory.java:310)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.connection.ChainedExceptionListener.onException(ChainedExceptionListener.java:58)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.apache.qpid.amqp_1_0.jms.impl.SessionImpl$1.remoteEnd(SessionImpl.java:128)
> [qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.transport.SessionEndpoint.receiveEnd(SessionEndpoint.java:219)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receiveEnd(ConnectionEndpoint.java:609)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at org.apache.qpid.amqp_1_0.type.transport.End.invoke(End.java:75)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint.receive(ConnectionEndpoint.java:802)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.framing.FrameHandler.parse(FrameHandler.java:241)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.framing.ConnectionHandler.parse(ConnectionHandler.java:75)
> [qpid-amqp-1-0-common-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.client.TCPTransportProvier.doRead(TCPTransportProvier.java:217)
> [qpid-amqp-1-0-client-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.client.TCPTransportProvier.access$000(TCPTransportProvier.java:43)
> [qpid-amqp-1-0-client-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.client.TCPTransportProvier$1.run(TCPTransportProvier.java:158)
> [qpid-amqp-1-0-client-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_67]
> 2014-11-27 10:03:16,336
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-198] INFO
> o.s.j.c.SingleConnectionFactory - Established shared JMS Connection:
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl@3eee6cf0
> 2014-11-27 10:03:16,336 [Thread-261] DEBUG o.s.j.c.SingleConnectionFactory -
> Closing shared JMS Connection:
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl@3eee6cf0
> 2014-11-27 10:03:16,336
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-198]
> ERROR o.s.j.l.DefaultMessageListenerContainer - Could not refresh JMS
> Connection for destination
> 'org.apache.qpid.amqp_1_0.jms.impl.QueueImpl@e4f134ac' - retrying in 5000 ms.
> Cause: Closed javax.jms.IllegalStateException: Closed
> at
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl.checkClosed(ConnectionImpl.java:501)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl.start(ConnectionImpl.java:365)
> ~[qpid-amqp-1-0-client-jms-0.32-SNAPSHOT.jar:0.32-SNAPSHOT]
> at
> org.springframework.jms.connection.SingleConnectionFactory$SharedConnectionInvocationHandler.invoke(SingleConnectionFactory.java:525)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at com.sun.proxy.$Proxy72.start(Unknown Source) ~[na:na]
> at
> org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:400)
> ~[spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1013)
> [spring-jms-4.0.1.RELEASE.jar:4.0.1.RELEASE]
> at java.lang.Thread.run(Thread.java:745) [na:1.7.0_67]
> 2014-11-27 10:03:22,355
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-198] INFO
> o.s.j.c.SingleConnectionFactory - Established shared JMS Connection:
> org.apache.qpid.amqp_1_0.jms.impl.ConnectionImpl@743a3153
> 2014-11-27 10:03:22,412
> [org.springframework.jms.listener.DefaultMessageListenerContainer#0-198] INFO
> o.s.j.l.DefaultMessageListenerContainer - Successfully refreshed JMS
> Connection
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]