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 <[email protected]> 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 <[email protected]> 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 <[email protected]>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 >>> <[email protected]> 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: [email protected] >>> For additional commands, e-mail: [email protected] >>> >>> >> >> >> -- >> Charith Dhanushka Wickramarachchi >> http://charithwiki.blogspot.com/ >> >> > > > -- > Charith Dhanushka Wickramarachchi > http://charithwiki.blogspot.com/ --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
