Hi All,
Can anyone tell me how can I shutdown activemq 3.2 broker gracefully ? I am getting database
corruption in case of durable subscription and shutting down broker with Ctrl-C.
Regards,
Ulhas Bhole
> -----Original Message-----
> From: Bhole, Ulhas
> Sent: 14 February 2006 11:09
> To: activemq-dev@geronimo.apache.org; activemq-users-owner@geronimo.apache.org
> Cc: user@activemq.codehaus.org; dev@activemq.codehaus.org
> Subject: FW: [celtix-dev] RE: [activemq-user] Strange blocking createDurableSubscriber()
call in ActiveMQ 3.2
>
>
> Hi all,
>
> Does anyone know what may be wrong from the stack trace? I also seeing Broker startup
failure once in a while after the following problem with the stack trace attached because
of the size restricition. The only option I have here is to cleanup var directory and start
over clean.
>
> Any help is appriciated.
>
> Regards,
>
> Ulhas Bhole.
>
>
>
>
> -----Original Message-----
> From: Bhole, Ulhas
> Sent: Tue 07/02/2006 18:03
> To: user@activemq.codehaus.org
> Cc: celtix-dev@objectweb.com
> Subject: [activemq-user] Strange blocking createDurableSubscriber() call in ActiveMQ
3.2
>
> Hi,
>
> I am trying to use ActiveMQ 3.2 Durable Topic Subscrition in one of the ObjectWeb Celtix
ESB samples. I am working on Redhat Linux 9 but saw similar problem on Windows also. I am
getting problem using the durable subscription in a way that It is blocking on createDurableSubscriber()
call.
> The problem occures after some repeated shutdown and restart of JMS Broker and my Client/Server
(producer/receivers).
>
> I tried to reproduce the problem with the pure JMS client(producer) and server(receiver)
but was unable to produce it. However, once I get the problem with the my Celtix demo. my
Pure Server(receiver) which also would block in the same call with similar stack trace.
>
> Here is a stack trace of the blocking call from Pure Server(receiver).
>
>
> "JmsSessionDispatcher: 1" prio=1 tid=0x083f4380 nid=0x271a in Object.wait() [0xbe7ff000..0xbe7ff5dc]
> at java.lang.Object.wait(Native Method)
> at org.activemq.io.util.MemoryBoundedQueue.dequeue(MemoryBoundedQueue.java:242)
> - locked <0x659e0060> (a java.lang.Object)
> at org.activemq.ActiveMQSessionExecutor.run(ActiveMQSessionExecutor.java:93)
> at java.lang.Thread.run(Thread.java:595)
>
> "TcpTransportChannel: Socket[addr=localhost/127.0.0.1,port=61616,localport=33917]" prio=1
tid=0x083b0340 nid=0x2717 runnable [0xbe9ff000..0xbe9ff75c]
> at java.net.SocketInputStream.socketRead0(Native Method)
> at java.net.SocketInputStream.read(SocketInputStream.java:129)
> at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
> at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
> - locked <0x65ef9f38> (a java.io.BufferedInputStream)
> at java.io.DataInputStream.readByte(DataInputStream.java:241)
> at org.activemq.io.AbstractWireFormat.readPacket(AbstractWireFormat.java:230)
> at org.activemq.transport.tcp.TcpTransportChannel.run(TcpTransportChannel.java:313)
> at java.lang.Thread.run(Thread.java:595)
>
> "Low Memory Detector" daemon prio=1 tid=0x080a50f0 nid=0x2714 runnable [0x00000000..0x00000000]
>
> "CompilerThread0" daemon prio=1 tid=0x080a3c70 nid=0x2713 waiting on condition [0x00000000..0xbefff1c4]
>
> "Signal Dispatcher" daemon prio=1 tid=0x080a2be0 nid=0x2712 waiting on condition [0x00000000..0x00000000]
>
> "Finalizer" daemon prio=1 tid=0x0809bf38 nid=0x2711 in Object.wait() [0xbf3ff000..0xbf3ff4dc]
> at java.lang.Object.wait(Native Method)
> - waiting on <0x65e5ac20> (a java.lang.ref.ReferenceQueue$Lock)
> at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
> - locked <0x65e5ac20> (a java.lang.ref.ReferenceQueue$Lock)
> at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)>
> at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
>
> "Reference Handler" daemon prio=1 tid=0x0809b240 nid=0x2710 in Object.wait() [0xbf5ff000..0xbf5ff65c]
> at java.lang.Object.wait(Native Method)
> - waiting on <0x65e5aca0> (a java.lang.ref.Reference$Lock)
> at java.lang.Object.wait(Object.java:474)
> at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
> - locked <0x65e5aca0> (a java.lang.ref.Reference$Lock)
>
> "main" prio=1 tid=0x0805bce0 nid=0x270d in Object.wait() [0xbfffc000..0xbfffce78]
> at java.lang.Object.wait(Native Method)
> - waiting on <0x6598dde0> (a java.lang.Object)
> at org.activemq.message.ReceiptHolder.getReceipt(ReceiptHolder.java:68)
> - locked <0x6598dde0> (a java.lang.Object)
> at org.activemq.transport.TransportChannelSupport.send(TransportChannelSupport.java:146)
> at org.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1377)
> at org.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1362)
> at org.activemq.ActiveMQSession.addConsumer(ActiveMQSession.java:1198)
> at org.activemq.ActiveMQMessageConsumer.<init>(ActiveMQMessageConsumer.java:145)
> at org.activemq.ActiveMQTopicSubscriber.<init>(ActiveMQTopicSubscriber.java:116)
> at org.activemq.ActiveMQSession.createDurableSubscriber(ActiveMQSession.java:793)
> at org.activemq.ActiveMQTopicSession.createDurableSubscriber(ActiveMQTopicSession.java:156)
> at DurableSubscriberServer.run(DurableSubscriberServer.java:45)
> at DurableSubscriberServer.main(DurableSubscriberServer.java:24)
>
> "VM Thread" prio=1 tid=0x080967e0 nid=0x270f runnable
>
> "VM Periodic Task Thread" prio=1 tid=0x080c7df8 nid=0x2715 waiting on condition
>
>
> Can anyone help me in telling what the problem might be?
>
> If required I have the state of the ActiveMQ Journal and Database on which this problem
is occuring. One more thing that I observed is after coming at this state If I Ctrl-C the
JMS Broker It shuts down TCP transport Adapter and hangs in Shutdown Hook.
>
> Regards,
>
> Ulhas Bhole
>
>
>
>
>
>
>
>
> << File: broker-failure-stack.txt >>
|