You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Charith Wickramarachchi <ch...@gmail.com> on 2012/05/11 11:24:30 UTC
Qpid broker gives out a warning when polling messages from a Queue.
Hi,
I m using qpid java jms client to publish and consume messages from a queue
in Qpid java broker.
When my application polling messages from a queue. Broker gives out a
warning :
WARN
{org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
- MessageAccept received for message which has not been acquired (likely
client error)
And if continue this publish poll scenario for some time i can see
following log in the Broker logs.
{org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
thrown and no ProtocolEngine to handle it
org.apache.qpid.transport.ProtocolViolationException: Received frames for
an already dettached session
at
org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
at
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
at
org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
at
org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
at
org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
at
org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
at
org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
at org.apache.qpid.transport.Method.delegate(Method.java:163)
at
org.apache.qpid.transport.Connection.received(Connection.java:369)
at
org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
at
org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
at
org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
at
org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
at
org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
at org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
at
org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
at
org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
at
org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
at
org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
at
org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
at
org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
at
org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
at
org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
at java.lang.Thread.run(Thread.java:662)
My Polling message logic looks like :
Connection con = // create Connection
Session session = con.createSession(false,Session.AUTO_ACKNOWLEDGE);
Destination destination = context.lookup(name);
MessageConsumer consumer =session.createConsumer(destination);
Object msg = consumer.receive(1000);
Any idea on whats happening and how to overcome this issue is highly
appreciated.
thanks,
Charith
--
Charith Dhanushka Wickramarachchi
http://charithwiki.blogspot.com/
Re: Qpid broker gives out a warning when polling messages from a Queue.
Posted by Rob Godfrey <ro...@gmail.com>.
Hi Charith,
from the stack trace it doesn't appear that you are using the latest
client (the client no longer uses MINA)
-- Rob
On 14 May 2012 11:02, Charith Wickramarachchi
<ch...@gmail.com> wrote:
> Hi Rob ,
>
>
> I tried with the latest RC and issue persists. I stated doing some
> investigation before creating a jira as this might not be a bug and simply
> a user issue. I found that this issue comes only when JMS client trying to
> create a queue browser and trying to get enumeration.
>
>
> But when i created a separate client and try the scenario with the system
> property ClientProperties.AMQP_VERSION = "0-91" it worked. But it gives an
> exception when closing the session
>
> Broker side error :
> java.lang.RuntimeException: ERROR : Deleting queue 2failed
> at
> org.apache.qpid.server.queue.SimpleAMQQueue.unregisterSubscription(SimpleAMQQueue.java:496)
> at
> org.apache.qpid.server.AMQChannel.unsubscribeAllConsumers(AMQChannel.java:549)
> at org.apache.qpid.server.AMQChannel.close(AMQChannel.java:507)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.closeChannel(AMQProtocolEngine.java:639)
> at
> org.apache.qpid.server.handler.ChannelCloseHandler.methodReceived(ChannelCloseHandler.java:69)
> at
> org.apache.qpid.server.handler.ServerMethodDispatcherImpl.dispatchChannelClose(ServerMethodDispatcherImpl.java:228)
> at
> org.apache.qpid.framing.amqp_0_91.ChannelCloseBodyImpl.execute(ChannelCloseBodyImpl.java:140)
> at
> org.apache.qpid.server.state.AMQStateManager.methodReceived(AMQStateManager.java:205)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.methodFrameReceived(AMQProtocolEngine.java:390)
> at
> org.apache.qpid.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:93)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.frameReceived(AMQProtocolEngine.java:334)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.dataBlockReceived(AMQProtocolEngine.java:283)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine$1.run(AMQProtocolEngine.java:254)
> at org.apache.qpid.pool.Job.processAll(Job.java:110)
> at org.apache.qpid.pool.Job.run(Job.java:149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
>
>
> Client side error :
>
> ost: 127.0.0.1
> Port: 5673
> Virtual Host: carbon
> Client ID: clientID
> Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
> closed connection and reconnection not permitted.
> [2012-05-14 14:00:53,721] ERROR - AMQConnection Throwable Received but no
> listener set: org.apache.qpid.AMQDisconnectedException: Server closed
> connection and reconnection not permitted.
> [2012-05-14 14:00:53,729] ERROR - JMSMessageStore Error while cleaning up
> JMS session in the message store: JMSMS
> javax.jms.JMSException: Error closing session:
> org.apache.qpid.AMQException: Woken up due to class javax.jms.JMSException
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:748)
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:708)
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:567)
> at
> org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.cleanupJMSResources(JMSMessageStore.java:644)
> at
> org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.peek(JMSMessageStore.java:248)
> at
> org.apache.synapse.message.processors.forward.ForwardingJob.execute(ForwardingJob.java:92)
> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
> at
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
> Caused by: org.apache.qpid.AMQException: Woken up due to class
> javax.jms.JMSException
> at
> org.apache.qpid.client.util.BlockingWaiter.block(BlockingWaiter.java:207)
> at
> org.apache.qpid.client.protocol.BlockingMethodFrameListener.blockForFrame(BlockingMethodFrameListener.java:127)
> at
> org.apache.qpid.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:674)
> at
> org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:695)
> at
> org.apache.qpid.client.AMQSession_0_8.sendClose(AMQSession_0_8.java:164)
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:742)
> ... 7 more
> Caused by: javax.jms.JMSException: Exception thrown against AMQConnection:
> Host: 127.0.0.1
> Port: 5673
> Virtual Host: carbon
> Client ID: clientID
> Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
> closed connection and reconnection not permitted.
> at
> org.apache.qpid.client.AMQConnection.exceptionReceived(AMQConnection.java:1268)
> at
> org.apache.qpid.client.protocol.AMQProtocolHandler.closed(AMQProtocolHandler.java:276)
> at
> org.apache.qpid.transport.network.mina.MINANetworkDriver.sessionClosed(MINANetworkDriver.java:347)
> at
> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.sessionClosed(AbstractIoFilterChain.java:677)
> at
> org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
> at
> org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
> at
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
> at
> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:265)
> at
> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
> at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.qpid.AMQDisconnectedException: Server closed
> connection and reconnection not permitted.
> ... 11 more
>
>
> I started to debug the qpid code to identify whats going on. Any idea on
> how to resolve this is highly appreciated.
>
> And also i would like to know what does
> org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener
> do ?
> I tried searching for documentation on this but could not find it. are
> there any documentation which i can use to get Qpid architecture details
> and then dig in to the code using that.
>
> thanks,
> Charith
>
>
>
>
> On Fri, May 11, 2012 at
>
> I 3:28 PM, Charith Wickramarachchi <ch...@gmail.com> wrote:
>
>> Thanks Rob for the Quick response I'll check with the latest RC. In my
>> case i m using Qpid v 0.10
>>
>> regards,
>> Charith
>>
>>
>>
>> On Fri, May 11, 2012 at 3:02 PM, Rob Godfrey <ro...@gmail.com>wrote:
>>
>>> Hi Charith,
>>>
>>> can you confirm which release version of the Java Broker you are using
>>> (it's always worth trying the latest version - in this case I'd grab
>>> the latest 0.16 RC that Justin posted a couple of days ago - though
>>> I'm not aware of any bugs that would cause this error)?
>>>
>>> It would also help if you could send full broker log files that are
>>> generated when this occurs - the best way is to raise a JIRA and
>>> attach the log file there (stripped of any confidential information it
>>> might contain - obviously).
>>>
>>> Cheers,
>>> Rob
>>>
>>> On 11 May 2012 11:24, Charith Wickramarachchi
>>> <ch...@gmail.com> wrote:
>>> > Hi,
>>> >
>>> > I m using qpid java jms client to publish and consume messages from a
>>> queue
>>> > in Qpid java broker.
>>> > When my application polling messages from a queue. Broker gives out a
>>> > warning :
>>> >
>>> > WARN
>>> >
>>> {org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
>>> > - MessageAccept received for message which has not been acquired
>>> (likely
>>> > client error)
>>> >
>>> > And if continue this publish poll scenario for some time i can see
>>> > following log in the Broker logs.
>>> >
>>> > {org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
>>> > thrown and no ProtocolEngine to handle it
>>> > org.apache.qpid.transport.ProtocolViolationException: Received frames
>>> for
>>> > an already dettached session
>>> > at
>>> > org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
>>> >
>>> > at org.apache.qpid.transport.Method.delegate(Method.java:163)
>>> > at
>>> > org.apache.qpid.transport.Connection.received(Connection.java:369)
>>> > at
>>> >
>>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
>>> >
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
>>> > at
>>> org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
>>> > at
>>> >
>>> org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
>>> > at
>>> >
>>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>>> >
>>> > at
>>> >
>>> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
>>> >
>>> > at
>>> >
>>> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
>>> >
>>> > at
>>> >
>>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
>>> >
>>> > at
>>> >
>>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
>>> >
>>> > at java.lang.Thread.run(Thread.java:662)
>>> >
>>> >
>>> >
>>> > My Polling message logic looks like :
>>> >
>>> > Connection con = // create Connection
>>> > Session session =
>>> con.createSession(false,Session.AUTO_ACKNOWLEDGE);
>>> > Destination destination = context.lookup(name);
>>> > MessageConsumer consumer =session.createConsumer(destination);
>>> > Object msg = consumer.receive(1000);
>>> >
>>> >
>>> > Any idea on whats happening and how to overcome this issue is highly
>>> > appreciated.
>>> >
>>> >
>>> > thanks,
>>> > Charith
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> > Charith Dhanushka Wickramarachchi
>>> > http://charithwiki.blogspot.com/
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>>> For additional commands, e-mail: dev-help@qpid.apache.org
>>>
>>>
>>
>>
>> --
>> Charith Dhanushka Wickramarachchi
>> http://charithwiki.blogspot.com/
>>
>>
>
>
> --
> Charith Dhanushka Wickramarachchi
> http://charithwiki.blogspot.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org
Re: Qpid broker gives out a warning when polling messages from a Queue.
Posted by Rob Godfrey <ro...@gmail.com>.
Hi Charith,
from the stack trace it doesn't appear that you are using the latest
client (the client no longer uses MINA)
-- Rob
On 14 May 2012 11:02, Charith Wickramarachchi
<ch...@gmail.com> wrote:
> Hi Rob ,
>
>
> I tried with the latest RC and issue persists. I stated doing some
> investigation before creating a jira as this might not be a bug and simply
> a user issue. I found that this issue comes only when JMS client trying to
> create a queue browser and trying to get enumeration.
>
>
> But when i created a separate client and try the scenario with the system
> property ClientProperties.AMQP_VERSION = "0-91" it worked. But it gives an
> exception when closing the session
>
> Broker side error :
> java.lang.RuntimeException: ERROR : Deleting queue 2failed
> at
> org.apache.qpid.server.queue.SimpleAMQQueue.unregisterSubscription(SimpleAMQQueue.java:496)
> at
> org.apache.qpid.server.AMQChannel.unsubscribeAllConsumers(AMQChannel.java:549)
> at org.apache.qpid.server.AMQChannel.close(AMQChannel.java:507)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.closeChannel(AMQProtocolEngine.java:639)
> at
> org.apache.qpid.server.handler.ChannelCloseHandler.methodReceived(ChannelCloseHandler.java:69)
> at
> org.apache.qpid.server.handler.ServerMethodDispatcherImpl.dispatchChannelClose(ServerMethodDispatcherImpl.java:228)
> at
> org.apache.qpid.framing.amqp_0_91.ChannelCloseBodyImpl.execute(ChannelCloseBodyImpl.java:140)
> at
> org.apache.qpid.server.state.AMQStateManager.methodReceived(AMQStateManager.java:205)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.methodFrameReceived(AMQProtocolEngine.java:390)
> at
> org.apache.qpid.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:93)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.frameReceived(AMQProtocolEngine.java:334)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine.dataBlockReceived(AMQProtocolEngine.java:283)
> at
> org.apache.qpid.server.protocol.AMQProtocolEngine$1.run(AMQProtocolEngine.java:254)
> at org.apache.qpid.pool.Job.processAll(Job.java:110)
> at org.apache.qpid.pool.Job.run(Job.java:149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
>
>
> Client side error :
>
> ost: 127.0.0.1
> Port: 5673
> Virtual Host: carbon
> Client ID: clientID
> Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
> closed connection and reconnection not permitted.
> [2012-05-14 14:00:53,721] ERROR - AMQConnection Throwable Received but no
> listener set: org.apache.qpid.AMQDisconnectedException: Server closed
> connection and reconnection not permitted.
> [2012-05-14 14:00:53,729] ERROR - JMSMessageStore Error while cleaning up
> JMS session in the message store: JMSMS
> javax.jms.JMSException: Error closing session:
> org.apache.qpid.AMQException: Woken up due to class javax.jms.JMSException
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:748)
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:708)
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:567)
> at
> org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.cleanupJMSResources(JMSMessageStore.java:644)
> at
> org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.peek(JMSMessageStore.java:248)
> at
> org.apache.synapse.message.processors.forward.ForwardingJob.execute(ForwardingJob.java:92)
> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
> at
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
> Caused by: org.apache.qpid.AMQException: Woken up due to class
> javax.jms.JMSException
> at
> org.apache.qpid.client.util.BlockingWaiter.block(BlockingWaiter.java:207)
> at
> org.apache.qpid.client.protocol.BlockingMethodFrameListener.blockForFrame(BlockingMethodFrameListener.java:127)
> at
> org.apache.qpid.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:674)
> at
> org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:695)
> at
> org.apache.qpid.client.AMQSession_0_8.sendClose(AMQSession_0_8.java:164)
> at org.apache.qpid.client.AMQSession.close(AMQSession.java:742)
> ... 7 more
> Caused by: javax.jms.JMSException: Exception thrown against AMQConnection:
> Host: 127.0.0.1
> Port: 5673
> Virtual Host: carbon
> Client ID: clientID
> Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
> closed connection and reconnection not permitted.
> at
> org.apache.qpid.client.AMQConnection.exceptionReceived(AMQConnection.java:1268)
> at
> org.apache.qpid.client.protocol.AMQProtocolHandler.closed(AMQProtocolHandler.java:276)
> at
> org.apache.qpid.transport.network.mina.MINANetworkDriver.sessionClosed(MINANetworkDriver.java:347)
> at
> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.sessionClosed(AbstractIoFilterChain.java:677)
> at
> org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
> at
> org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
> at
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
> at
> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:265)
> at
> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
> at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.qpid.AMQDisconnectedException: Server closed
> connection and reconnection not permitted.
> ... 11 more
>
>
> I started to debug the qpid code to identify whats going on. Any idea on
> how to resolve this is highly appreciated.
>
> And also i would like to know what does
> org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener
> do ?
> I tried searching for documentation on this but could not find it. are
> there any documentation which i can use to get Qpid architecture details
> and then dig in to the code using that.
>
> thanks,
> Charith
>
>
>
>
> On Fri, May 11, 2012 at
>
> I 3:28 PM, Charith Wickramarachchi <ch...@gmail.com> wrote:
>
>> Thanks Rob for the Quick response I'll check with the latest RC. In my
>> case i m using Qpid v 0.10
>>
>> regards,
>> Charith
>>
>>
>>
>> On Fri, May 11, 2012 at 3:02 PM, Rob Godfrey <ro...@gmail.com>wrote:
>>
>>> Hi Charith,
>>>
>>> can you confirm which release version of the Java Broker you are using
>>> (it's always worth trying the latest version - in this case I'd grab
>>> the latest 0.16 RC that Justin posted a couple of days ago - though
>>> I'm not aware of any bugs that would cause this error)?
>>>
>>> It would also help if you could send full broker log files that are
>>> generated when this occurs - the best way is to raise a JIRA and
>>> attach the log file there (stripped of any confidential information it
>>> might contain - obviously).
>>>
>>> Cheers,
>>> Rob
>>>
>>> On 11 May 2012 11:24, Charith Wickramarachchi
>>> <ch...@gmail.com> wrote:
>>> > Hi,
>>> >
>>> > I m using qpid java jms client to publish and consume messages from a
>>> queue
>>> > in Qpid java broker.
>>> > When my application polling messages from a queue. Broker gives out a
>>> > warning :
>>> >
>>> > WARN
>>> >
>>> {org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
>>> > - MessageAccept received for message which has not been acquired
>>> (likely
>>> > client error)
>>> >
>>> > And if continue this publish poll scenario for some time i can see
>>> > following log in the Broker logs.
>>> >
>>> > {org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
>>> > thrown and no ProtocolEngine to handle it
>>> > org.apache.qpid.transport.ProtocolViolationException: Received frames
>>> for
>>> > an already dettached session
>>> > at
>>> > org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
>>> >
>>> > at org.apache.qpid.transport.Method.delegate(Method.java:163)
>>> > at
>>> > org.apache.qpid.transport.Connection.received(Connection.java:369)
>>> > at
>>> >
>>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
>>> >
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
>>> > at
>>> org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
>>> > at
>>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
>>> > at
>>> >
>>> org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
>>> > at
>>> >
>>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
>>> >
>>> > at
>>> >
>>> org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>>> >
>>> > at
>>> >
>>> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>>> >
>>> > at
>>> >
>>> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
>>> >
>>> > at
>>> >
>>> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
>>> >
>>> > at
>>> >
>>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
>>> >
>>> > at
>>> >
>>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
>>> >
>>> > at java.lang.Thread.run(Thread.java:662)
>>> >
>>> >
>>> >
>>> > My Polling message logic looks like :
>>> >
>>> > Connection con = // create Connection
>>> > Session session =
>>> con.createSession(false,Session.AUTO_ACKNOWLEDGE);
>>> > Destination destination = context.lookup(name);
>>> > MessageConsumer consumer =session.createConsumer(destination);
>>> > Object msg = consumer.receive(1000);
>>> >
>>> >
>>> > Any idea on whats happening and how to overcome this issue is highly
>>> > appreciated.
>>> >
>>> >
>>> > thanks,
>>> > Charith
>>> >
>>> >
>>> >
>>> >
>>> > --
>>> > Charith Dhanushka Wickramarachchi
>>> > http://charithwiki.blogspot.com/
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>>> For additional commands, e-mail: dev-help@qpid.apache.org
>>>
>>>
>>
>>
>> --
>> Charith Dhanushka Wickramarachchi
>> http://charithwiki.blogspot.com/
>>
>>
>
>
> --
> Charith Dhanushka Wickramarachchi
> http://charithwiki.blogspot.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org
Re: Qpid broker gives out a warning when polling messages from a Queue.
Posted by Charith Wickramarachchi <ch...@gmail.com>.
Hi Rob ,
I tried with the latest RC and issue persists. I stated doing some
investigation before creating a jira as this might not be a bug and simply
a user issue. I found that this issue comes only when JMS client trying to
create a queue browser and trying to get enumeration.
But when i created a separate client and try the scenario with the system
property ClientProperties.AMQP_VERSION = "0-91" it worked. But it gives an
exception when closing the session
Broker side error :
java.lang.RuntimeException: ERROR : Deleting queue 2failed
at
org.apache.qpid.server.queue.SimpleAMQQueue.unregisterSubscription(SimpleAMQQueue.java:496)
at
org.apache.qpid.server.AMQChannel.unsubscribeAllConsumers(AMQChannel.java:549)
at org.apache.qpid.server.AMQChannel.close(AMQChannel.java:507)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.closeChannel(AMQProtocolEngine.java:639)
at
org.apache.qpid.server.handler.ChannelCloseHandler.methodReceived(ChannelCloseHandler.java:69)
at
org.apache.qpid.server.handler.ServerMethodDispatcherImpl.dispatchChannelClose(ServerMethodDispatcherImpl.java:228)
at
org.apache.qpid.framing.amqp_0_91.ChannelCloseBodyImpl.execute(ChannelCloseBodyImpl.java:140)
at
org.apache.qpid.server.state.AMQStateManager.methodReceived(AMQStateManager.java:205)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.methodFrameReceived(AMQProtocolEngine.java:390)
at
org.apache.qpid.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:93)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.frameReceived(AMQProtocolEngine.java:334)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.dataBlockReceived(AMQProtocolEngine.java:283)
at
org.apache.qpid.server.protocol.AMQProtocolEngine$1.run(AMQProtocolEngine.java:254)
at org.apache.qpid.pool.Job.processAll(Job.java:110)
at org.apache.qpid.pool.Job.run(Job.java:149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Client side error :
ost: 127.0.0.1
Port: 5673
Virtual Host: carbon
Client ID: clientID
Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
closed connection and reconnection not permitted.
[2012-05-14 14:00:53,721] ERROR - AMQConnection Throwable Received but no
listener set: org.apache.qpid.AMQDisconnectedException: Server closed
connection and reconnection not permitted.
[2012-05-14 14:00:53,729] ERROR - JMSMessageStore Error while cleaning up
JMS session in the message store: JMSMS
javax.jms.JMSException: Error closing session:
org.apache.qpid.AMQException: Woken up due to class javax.jms.JMSException
at org.apache.qpid.client.AMQSession.close(AMQSession.java:748)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:708)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:567)
at
org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.cleanupJMSResources(JMSMessageStore.java:644)
at
org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.peek(JMSMessageStore.java:248)
at
org.apache.synapse.message.processors.forward.ForwardingJob.execute(ForwardingJob.java:92)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: org.apache.qpid.AMQException: Woken up due to class
javax.jms.JMSException
at
org.apache.qpid.client.util.BlockingWaiter.block(BlockingWaiter.java:207)
at
org.apache.qpid.client.protocol.BlockingMethodFrameListener.blockForFrame(BlockingMethodFrameListener.java:127)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:674)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:695)
at
org.apache.qpid.client.AMQSession_0_8.sendClose(AMQSession_0_8.java:164)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:742)
... 7 more
Caused by: javax.jms.JMSException: Exception thrown against AMQConnection:
Host: 127.0.0.1
Port: 5673
Virtual Host: carbon
Client ID: clientID
Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
closed connection and reconnection not permitted.
at
org.apache.qpid.client.AMQConnection.exceptionReceived(AMQConnection.java:1268)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.closed(AMQProtocolHandler.java:276)
at
org.apache.qpid.transport.network.mina.MINANetworkDriver.sessionClosed(MINANetworkDriver.java:347)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.sessionClosed(AbstractIoFilterChain.java:677)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:265)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.qpid.AMQDisconnectedException: Server closed
connection and reconnection not permitted.
... 11 more
I started to debug the qpid code to identify whats going on. Any idea on
how to resolve this is highly appreciated.
And also i would like to know what does
org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener
do ?
I tried searching for documentation on this but could not find it. are
there any documentation which i can use to get Qpid architecture details
and then dig in to the code using that.
thanks,
Charith
On Fri, May 11, 2012 at
I 3:28 PM, Charith Wickramarachchi <ch...@gmail.com> wrote:
> Thanks Rob for the Quick response I'll check with the latest RC. In my
> case i m using Qpid v 0.10
>
> regards,
> Charith
>
>
>
> On Fri, May 11, 2012 at 3:02 PM, Rob Godfrey <ro...@gmail.com>wrote:
>
>> Hi Charith,
>>
>> can you confirm which release version of the Java Broker you are using
>> (it's always worth trying the latest version - in this case I'd grab
>> the latest 0.16 RC that Justin posted a couple of days ago - though
>> I'm not aware of any bugs that would cause this error)?
>>
>> It would also help if you could send full broker log files that are
>> generated when this occurs - the best way is to raise a JIRA and
>> attach the log file there (stripped of any confidential information it
>> might contain - obviously).
>>
>> Cheers,
>> Rob
>>
>> On 11 May 2012 11:24, Charith Wickramarachchi
>> <ch...@gmail.com> wrote:
>> > Hi,
>> >
>> > I m using qpid java jms client to publish and consume messages from a
>> queue
>> > in Qpid java broker.
>> > When my application polling messages from a queue. Broker gives out a
>> > warning :
>> >
>> > WARN
>> >
>> {org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
>> > - MessageAccept received for message which has not been acquired
>> (likely
>> > client error)
>> >
>> > And if continue this publish poll scenario for some time i can see
>> > following log in the Broker logs.
>> >
>> > {org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
>> > thrown and no ProtocolEngine to handle it
>> > org.apache.qpid.transport.ProtocolViolationException: Received frames
>> for
>> > an already dettached session
>> > at
>> > org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
>> >
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
>> >
>> > at
>> >
>> org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
>> >
>> > at
>> >
>> org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
>> >
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
>> >
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
>> >
>> > at org.apache.qpid.transport.Method.delegate(Method.java:163)
>> > at
>> > org.apache.qpid.transport.Connection.received(Connection.java:369)
>> > at
>> >
>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
>> >
>> > at
>> >
>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
>> >
>> > at
>> > org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
>> > at
>> > org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
>> > at
>> > org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
>> > at
>> org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
>> > at
>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
>> > at
>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
>> > at
>> >
>> org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
>> > at
>> >
>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
>> >
>> > at
>> >
>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
>> >
>> > at
>> >
>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
>> >
>> > at
>> >
>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
>> >
>> > at
>> >
>> org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>> >
>> > at
>> >
>> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
>> >
>> > at
>> >
>> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
>> >
>> > at
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
>> >
>> > at
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
>> >
>> > at java.lang.Thread.run(Thread.java:662)
>> >
>> >
>> >
>> > My Polling message logic looks like :
>> >
>> > Connection con = // create Connection
>> > Session session =
>> con.createSession(false,Session.AUTO_ACKNOWLEDGE);
>> > Destination destination = context.lookup(name);
>> > MessageConsumer consumer =session.createConsumer(destination);
>> > Object msg = consumer.receive(1000);
>> >
>> >
>> > Any idea on whats happening and how to overcome this issue is highly
>> > appreciated.
>> >
>> >
>> > thanks,
>> > Charith
>> >
>> >
>> >
>> >
>> > --
>> > Charith Dhanushka Wickramarachchi
>> > http://charithwiki.blogspot.com/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>>
>>
>
>
> --
> Charith Dhanushka Wickramarachchi
> http://charithwiki.blogspot.com/
>
>
--
Charith Dhanushka Wickramarachchi
http://charithwiki.blogspot.com/
Re: Qpid broker gives out a warning when polling messages from a Queue.
Posted by Charith Wickramarachchi <ch...@gmail.com>.
Hi Rob ,
I tried with the latest RC and issue persists. I stated doing some
investigation before creating a jira as this might not be a bug and simply
a user issue. I found that this issue comes only when JMS client trying to
create a queue browser and trying to get enumeration.
But when i created a separate client and try the scenario with the system
property ClientProperties.AMQP_VERSION = "0-91" it worked. But it gives an
exception when closing the session
Broker side error :
java.lang.RuntimeException: ERROR : Deleting queue 2failed
at
org.apache.qpid.server.queue.SimpleAMQQueue.unregisterSubscription(SimpleAMQQueue.java:496)
at
org.apache.qpid.server.AMQChannel.unsubscribeAllConsumers(AMQChannel.java:549)
at org.apache.qpid.server.AMQChannel.close(AMQChannel.java:507)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.closeChannel(AMQProtocolEngine.java:639)
at
org.apache.qpid.server.handler.ChannelCloseHandler.methodReceived(ChannelCloseHandler.java:69)
at
org.apache.qpid.server.handler.ServerMethodDispatcherImpl.dispatchChannelClose(ServerMethodDispatcherImpl.java:228)
at
org.apache.qpid.framing.amqp_0_91.ChannelCloseBodyImpl.execute(ChannelCloseBodyImpl.java:140)
at
org.apache.qpid.server.state.AMQStateManager.methodReceived(AMQStateManager.java:205)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.methodFrameReceived(AMQProtocolEngine.java:390)
at
org.apache.qpid.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:93)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.frameReceived(AMQProtocolEngine.java:334)
at
org.apache.qpid.server.protocol.AMQProtocolEngine.dataBlockReceived(AMQProtocolEngine.java:283)
at
org.apache.qpid.server.protocol.AMQProtocolEngine$1.run(AMQProtocolEngine.java:254)
at org.apache.qpid.pool.Job.processAll(Job.java:110)
at org.apache.qpid.pool.Job.run(Job.java:149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Client side error :
ost: 127.0.0.1
Port: 5673
Virtual Host: carbon
Client ID: clientID
Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
closed connection and reconnection not permitted.
[2012-05-14 14:00:53,721] ERROR - AMQConnection Throwable Received but no
listener set: org.apache.qpid.AMQDisconnectedException: Server closed
connection and reconnection not permitted.
[2012-05-14 14:00:53,729] ERROR - JMSMessageStore Error while cleaning up
JMS session in the message store: JMSMS
javax.jms.JMSException: Error closing session:
org.apache.qpid.AMQException: Woken up due to class javax.jms.JMSException
at org.apache.qpid.client.AMQSession.close(AMQSession.java:748)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:708)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:567)
at
org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.cleanupJMSResources(JMSMessageStore.java:644)
at
org.wso2.carbon.message.store.persistence.jms.JMSMessageStore.peek(JMSMessageStore.java:248)
at
org.apache.synapse.message.processors.forward.ForwardingJob.execute(ForwardingJob.java:92)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: org.apache.qpid.AMQException: Woken up due to class
javax.jms.JMSException
at
org.apache.qpid.client.util.BlockingWaiter.block(BlockingWaiter.java:207)
at
org.apache.qpid.client.protocol.BlockingMethodFrameListener.blockForFrame(BlockingMethodFrameListener.java:127)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:674)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:695)
at
org.apache.qpid.client.AMQSession_0_8.sendClose(AMQSession_0_8.java:164)
at org.apache.qpid.client.AMQSession.close(AMQSession.java:742)
... 7 more
Caused by: javax.jms.JMSException: Exception thrown against AMQConnection:
Host: 127.0.0.1
Port: 5673
Virtual Host: carbon
Client ID: clientID
Active session count: 1: org.apache.qpid.AMQDisconnectedException: Server
closed connection and reconnection not permitted.
at
org.apache.qpid.client.AMQConnection.exceptionReceived(AMQConnection.java:1268)
at
org.apache.qpid.client.protocol.AMQProtocolHandler.closed(AMQProtocolHandler.java:276)
at
org.apache.qpid.transport.network.mina.MINANetworkDriver.sessionClosed(MINANetworkDriver.java:347)
at
org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.sessionClosed(AbstractIoFilterChain.java:677)
at
org.apache.mina.common.support.AbstractIoFilterChain.callNextSessionClosed(AbstractIoFilterChain.java:321)
at
org.apache.mina.common.support.AbstractIoFilterChain.access$900(AbstractIoFilterChain.java:54)
at
org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.sessionClosed(AbstractIoFilterChain.java:781)
at
org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:265)
at
org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.qpid.AMQDisconnectedException: Server closed
connection and reconnection not permitted.
... 11 more
I started to debug the qpid code to identify whats going on. Any idea on
how to resolve this is highly appreciated.
And also i would like to know what does
org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener
do ?
I tried searching for documentation on this but could not find it. are
there any documentation which i can use to get Qpid architecture details
and then dig in to the code using that.
thanks,
Charith
On Fri, May 11, 2012 at
I 3:28 PM, Charith Wickramarachchi <ch...@gmail.com> wrote:
> Thanks Rob for the Quick response I'll check with the latest RC. In my
> case i m using Qpid v 0.10
>
> regards,
> Charith
>
>
>
> On Fri, May 11, 2012 at 3:02 PM, Rob Godfrey <ro...@gmail.com>wrote:
>
>> Hi Charith,
>>
>> can you confirm which release version of the Java Broker you are using
>> (it's always worth trying the latest version - in this case I'd grab
>> the latest 0.16 RC that Justin posted a couple of days ago - though
>> I'm not aware of any bugs that would cause this error)?
>>
>> It would also help if you could send full broker log files that are
>> generated when this occurs - the best way is to raise a JIRA and
>> attach the log file there (stripped of any confidential information it
>> might contain - obviously).
>>
>> Cheers,
>> Rob
>>
>> On 11 May 2012 11:24, Charith Wickramarachchi
>> <ch...@gmail.com> wrote:
>> > Hi,
>> >
>> > I m using qpid java jms client to publish and consume messages from a
>> queue
>> > in Qpid java broker.
>> > When my application polling messages from a queue. Broker gives out a
>> > warning :
>> >
>> > WARN
>> >
>> {org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
>> > - MessageAccept received for message which has not been acquired
>> (likely
>> > client error)
>> >
>> > And if continue this publish poll scenario for some time i can see
>> > following log in the Broker logs.
>> >
>> > {org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
>> > thrown and no ProtocolEngine to handle it
>> > org.apache.qpid.transport.ProtocolViolationException: Received frames
>> for
>> > an already dettached session
>> > at
>> > org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
>> >
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
>> >
>> > at
>> >
>> org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
>> >
>> > at
>> >
>> org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
>> >
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
>> >
>> > at
>> >
>> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
>> >
>> > at org.apache.qpid.transport.Method.delegate(Method.java:163)
>> > at
>> > org.apache.qpid.transport.Connection.received(Connection.java:369)
>> > at
>> >
>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
>> >
>> > at
>> >
>> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
>> >
>> > at
>> > org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
>> > at
>> > org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
>> > at
>> > org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
>> > at
>> org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
>> > at
>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
>> > at
>> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
>> > at
>> >
>> org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
>> > at
>> >
>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
>> >
>> > at
>> >
>> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
>> >
>> > at
>> >
>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
>> >
>> > at
>> >
>> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
>> >
>> > at
>> >
>> org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>> >
>> > at
>> >
>> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>> >
>> > at
>> >
>> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
>> >
>> > at
>> >
>> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
>> >
>> > at
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
>> >
>> > at
>> >
>> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
>> >
>> > at java.lang.Thread.run(Thread.java:662)
>> >
>> >
>> >
>> > My Polling message logic looks like :
>> >
>> > Connection con = // create Connection
>> > Session session =
>> con.createSession(false,Session.AUTO_ACKNOWLEDGE);
>> > Destination destination = context.lookup(name);
>> > MessageConsumer consumer =session.createConsumer(destination);
>> > Object msg = consumer.receive(1000);
>> >
>> >
>> > Any idea on whats happening and how to overcome this issue is highly
>> > appreciated.
>> >
>> >
>> > thanks,
>> > Charith
>> >
>> >
>> >
>> >
>> > --
>> > Charith Dhanushka Wickramarachchi
>> > http://charithwiki.blogspot.com/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>>
>>
>
>
> --
> Charith Dhanushka Wickramarachchi
> http://charithwiki.blogspot.com/
>
>
--
Charith Dhanushka Wickramarachchi
http://charithwiki.blogspot.com/
Re: Qpid broker gives out a warning when polling messages from a Queue.
Posted by Charith Wickramarachchi <ch...@gmail.com>.
Thanks Rob for the Quick response I'll check with the latest RC. In my case
i m using Qpid v 0.10
regards,
Charith
On Fri, May 11, 2012 at 3:02 PM, Rob Godfrey <ro...@gmail.com>wrote:
> Hi Charith,
>
> can you confirm which release version of the Java Broker you are using
> (it's always worth trying the latest version - in this case I'd grab
> the latest 0.16 RC that Justin posted a couple of days ago - though
> I'm not aware of any bugs that would cause this error)?
>
> It would also help if you could send full broker log files that are
> generated when this occurs - the best way is to raise a JIRA and
> attach the log file there (stripped of any confidential information it
> might contain - obviously).
>
> Cheers,
> Rob
>
> On 11 May 2012 11:24, Charith Wickramarachchi
> <ch...@gmail.com> wrote:
> > Hi,
> >
> > I m using qpid java jms client to publish and consume messages from a
> queue
> > in Qpid java broker.
> > When my application polling messages from a queue. Broker gives out a
> > warning :
> >
> > WARN
> >
> {org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
> > - MessageAccept received for message which has not been acquired (likely
> > client error)
> >
> > And if continue this publish poll scenario for some time i can see
> > following log in the Broker logs.
> >
> > {org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
> > thrown and no ProtocolEngine to handle it
> > org.apache.qpid.transport.ProtocolViolationException: Received frames for
> > an already dettached session
> > at
> > org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
> > at
> >
> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
> >
> > at
> >
> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
> >
> > at
> >
> org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
> >
> > at
> >
> org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
> >
> > at
> >
> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
> >
> > at
> >
> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
> >
> > at org.apache.qpid.transport.Method.delegate(Method.java:163)
> > at
> > org.apache.qpid.transport.Connection.received(Connection.java:369)
> > at
> >
> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
> >
> > at
> >
> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
> >
> > at
> > org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
> > at
> > org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
> > at
> > org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
> > at
> org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
> > at
> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
> > at
> > org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
> > at
> >
> org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
> > at
> >
> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
> >
> > at
> >
> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
> >
> > at
> >
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
> >
> > at
> >
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
> >
> > at
> >
> org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
> >
> > at
> >
> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
> >
> > at
> >
> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
> >
> > at
> >
> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
> >
> > at
> >
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
> >
> > at
> >
> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
> >
> > at
> >
> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
> >
> > at
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
> >
> > at
> >
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
> >
> > at java.lang.Thread.run(Thread.java:662)
> >
> >
> >
> > My Polling message logic looks like :
> >
> > Connection con = // create Connection
> > Session session =
> con.createSession(false,Session.AUTO_ACKNOWLEDGE);
> > Destination destination = context.lookup(name);
> > MessageConsumer consumer =session.createConsumer(destination);
> > Object msg = consumer.receive(1000);
> >
> >
> > Any idea on whats happening and how to overcome this issue is highly
> > appreciated.
> >
> >
> > thanks,
> > Charith
> >
> >
> >
> >
> > --
> > Charith Dhanushka Wickramarachchi
> > http://charithwiki.blogspot.com/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>
>
--
Charith Dhanushka Wickramarachchi
http://charithwiki.blogspot.com/
Re: Qpid broker gives out a warning when polling messages from a Queue.
Posted by Rob Godfrey <ro...@gmail.com>.
Hi Charith,
can you confirm which release version of the Java Broker you are using
(it's always worth trying the latest version - in this case I'd grab
the latest 0.16 RC that Justin posted a couple of days ago - though
I'm not aware of any bugs that would cause this error)?
It would also help if you could send full broker log files that are
generated when this occurs - the best way is to raise a JIRA and
attach the log file there (stripped of any confidential information it
might contain - obviously).
Cheers,
Rob
On 11 May 2012 11:24, Charith Wickramarachchi
<ch...@gmail.com> wrote:
> Hi,
>
> I m using qpid java jms client to publish and consume messages from a queue
> in Qpid java broker.
> When my application polling messages from a queue. Broker gives out a
> warning :
>
> WARN
> {org.apache.qpid.server.subscription.ExplicitAcceptDispositionChangeListener}
> - MessageAccept received for message which has not been acquired (likely
> client error)
>
> And if continue this publish poll scenario for some time i can see
> following log in the Broker logs.
>
> {org.apache.qpid.transport.network.mina.MINANetworkDriver} - Exception
> thrown and no ProtocolEngine to handle it
> org.apache.qpid.transport.ProtocolViolationException: Received frames for
> an already dettached session
> at
> org.apache.qpid.transport.Connection.dispatch(Connection.java:408)
> at
> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:64)
>
> at
> org.apache.qpid.transport.ConnectionDelegate.handle(ConnectionDelegate.java:40)
>
> at
> org.apache.qpid.transport.MethodDelegate.sessionKnownCompleted(MethodDelegate.java:95)
>
> at
> org.apache.qpid.transport.SessionKnownCompleted.dispatch(SessionKnownCompleted.java:96)
>
> at
> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:49)
>
> at
> org.apache.qpid.transport.ConnectionDelegate.control(ConnectionDelegate.java:40)
>
> at org.apache.qpid.transport.Method.delegate(Method.java:163)
> at
> org.apache.qpid.transport.Connection.received(Connection.java:369)
> at
> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:196)
>
> at
> org.apache.qpid.server.transport.ServerConnection.received(ServerConnection.java:53)
>
> at
> org.apache.qpid.transport.network.Assembler.emit(Assembler.java:95)
> at
> org.apache.qpid.transport.network.Assembler.assemble(Assembler.java:181)
> at
> org.apache.qpid.transport.network.Assembler.frame(Assembler.java:129)
> at org.apache.qpid.transport.network.Frame.delegate(Frame.java:133)
> at
> org.apache.qpid.transport.network.Assembler.received(Assembler.java:100)
> at
> org.apache.qpid.transport.network.Assembler.received(Assembler.java:42)
> at
> org.apache.qpid.transport.network.InputHandler.next(InputHandler.java:187)
> at
> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:103)
>
> at
> org.apache.qpid.transport.network.InputHandler.received(InputHandler.java:42)
>
> at
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:102)
>
> at
> org.apache.qpid.server.protocol.MultiVersionProtocolEngine.received(MultiVersionProtocolEngine.java:36)
>
> at
> org.apache.qpid.transport.network.mina.MINANetworkDriver.messageReceived(MINANetworkDriver.java:337)
>
> at
> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
>
> at
> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
>
> at
> org.apache.mina.common.support.AbstractIoFilterChain.access$1200(AbstractIoFilterChain.java:54)
>
> at
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
>
> at
> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:243)
>
> at
> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:305)
>
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)
>
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)
>
> at java.lang.Thread.run(Thread.java:662)
>
>
>
> My Polling message logic looks like :
>
> Connection con = // create Connection
> Session session = con.createSession(false,Session.AUTO_ACKNOWLEDGE);
> Destination destination = context.lookup(name);
> MessageConsumer consumer =session.createConsumer(destination);
> Object msg = consumer.receive(1000);
>
>
> Any idea on whats happening and how to overcome this issue is highly
> appreciated.
>
>
> thanks,
> Charith
>
>
>
>
> --
> Charith Dhanushka Wickramarachchi
> http://charithwiki.blogspot.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org