You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by drvillo <f....@gmail.com> on 2007/01/30 18:12:43 UTC
Re: Cannot shutdown cleanly [still]
Hi
after more than a month I haven't been able to solve this...
I'm currently destroying jencks' JCAConnectors and JCAContainer,
which also stop ActiveMQResourceAdapter as a side effect.
Then I stop the broker via stop(), followed by the
applicationcontext.stop().
Nevertheless I always get the trace below. IMHO the problem is that the
ActiveMQConnection tries to send
asyncSendPacket(new ShutdownInfo());
but the broker has already shut down the Transport...
Is there anyone out there that manages to stop a context cleanly after
having exchanged some messages?If I start and stop the broker without
any message being sent it just stops fine...
FIY I'm using the tcp transport.
I hope to get some feedback on this, it's quite hard to present a service
that exit with 100s lines of exceptions...
Thanks a lot!
Francesco
[.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
Connection failed: javax.jms.JMSException: java.io.EOFException
[.0.1:61617] WARN
org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
connectionErrorOccurred called with null
javax.jms.JMSException: java.io.EOFException
at
org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
at
org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
at
org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
at
org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
at
org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
at
org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
at
org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
at
org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
at
org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
at
org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
at
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.io.EOFException
at java.io.DataInputStream.readInt(DataInputStream.java:358)
at
org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
at
org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
at
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
... 1 more
[.0.1:61617] INFO org.apache.activemq.ra.ActiveMQManagedConnection - Error
occured during close of a JMS connection.
javax.jms.JMSException: The transport is not running.
at
org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
at
org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
at
org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
at
org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
at
org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
at
org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
at
org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
at
org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
at
org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
at
org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
at
org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
at
org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
at
org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
at
org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
at
org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
at
org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:613)
Caused by: java.io.IOException: The transport is not running.
at
org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
at
org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
at
org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
at
org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
at
org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
at
org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
at
org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
... 17 more
[.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
Connection failed: javax.jms.JMSException: java.io.EOFException
drvillo wrote:
>
> Hi all
>
> using AMQ head, with jencks 1.3, and running and embedded broker:
>
> I can't find a way of shutting the service down, meaning the broker and
> the spring context
> without exceptions.
>
> Since I've read that I'm supposed to stop all the clients before shutting
> down the broker
> actually I'm doing this:
>
>
>
> public void onTearDown() throws Exception {
>
> JCAConnector con = (JCAConnector)
> testSupport.getBean("inboundConnectorStage1");
>
> con.destroy();
> con = (JCAConnector)
> testSupport.getBean("mockInboundConnectorStage2");
> con.destroy();
> JCAContainer cont = (JCAContainer)
> testSupport.getBean("jencksJCAContainer");
> cont.destroy();
>
> XBeanBrokerService broker = (XBeanBrokerService)
> testSupport.getBean("broker");
> broker.stop();
> }
>
> followed by an
> applicationContext.close();
>
> The two JCAConnectors above are the only ones started.
>
> Nevertheless the logs show that a ServerSession is requested after
> destroying them:
>
> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> consumer: ID:obimac.local-49248-1166791529603-3:1:-1:2
> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> consumer: ID:obimac.local-49248-1166791529603-3:1:-1:1
> DEBUG org.apache.activemq.broker.TransportConnection - Stopping
> connection: /127.0.0.1:49250
> DEBUG org.apache.activemq.broker.TransportConnection - Stopped connection:
> /127.0.0.1:49250
> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> consumer: ID:obimac.local-49248-1166791529603-3:0:-1:2
> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> consumer: ID:obimac.local-49248-1166791529603-3:0:-1:1
> DEBUG org.apache.activemq.broker.TransportConnection - Stopping
> connection: /127.0.0.1:49251
> DEBUG org.apache.activemq.broker.TransportConnection - Stopped connection:
> /127.0.0.1:49251
> DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
> requested.
> DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
> requested.
> INFO org.apache.activemq.broker.BrokerService - ActiveMQ Message Broker
> (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0) is shutting
> down
> DEBUG org.apache.activemq.broker.TransportConnection - Stopping
> connection: /127.0.0.1:49252
> DEBUG org.apache.activemq.broker.TransportConnection - Stopped connection:
> /127.0.0.1:49252
> INFO org.apache.activemq.broker.TransportConnector - Connector tcp
> Stopped
> WARN org.apache.activemq.ra.ActiveMQManagedConnection - Connection
> failed: javax.jms.JMSException: java.io.EOFException
> DEBUG org.apache.activemq.ra.ActiveMQManagedConnection - Cause:
> javax.jms.JMSException: java.io.EOFException
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
> at
> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
> at
> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
> at
> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
> at
> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.EOFException
> at java.io.DataInputStream.readInt(DataInputStream.java:358)
> at
> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
> at
> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
> ... 1 more
> INFO org.apache.activemq.broker.BrokerService - ActiveMQ JMS Message
> Broker (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0) stopped
> WARN
> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
> connectionErrorOccurred called with null
> javax.jms.JMSException: java.io.EOFException
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
> at
> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
> at
> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
> at
> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
> at
> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.EOFException
> at java.io.DataInputStream.readInt(DataInputStream.java:358)
> at
> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
> at
> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
> ... 1 more
> INFO org.springframework.context.support.ClassPathXmlApplicationContext -
> Closing application context
> [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406]
> DEBUG
> org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor -
> returning connectionnull
> INFO org.springframework.beans.factory.support.DefaultListableBeanFactory
> - Destroying singletons in
> {org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans
> [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
> root of BeanFactory hierarchy}
> INFO org.apache.activemq.ra.ActiveMQManagedConnection - Error occured
> during close of a JMS connection.
> javax.jms.JMSException: The transport is not running.
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
> at
> org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
> at
> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
> at
> org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
> at
> org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
> at
> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
> at
> org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
> at
> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
> at
> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
> at
> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
> at
> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
> at
> org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.IOException: The transport is not running.
> at
> org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
> at
> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
> at
> org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
> at
> org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
> at
> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
> at
> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
> ... 17 more
> INFO org.apache.xbean.spring.context.ResourceXmlApplicationContext -
> Closing application context
> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]
> DEBUG org.apache.xbean.spring.context.ResourceXmlApplicationContext -
> Publishing event in context
> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]:
> org.springframework.context.event.ContextClosedEvent[source=org.apache.xbean.spring.context.ResourceXmlApplicationContext:
> display name
> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611];
> startup date [Fri Dec 22 13:45:28 CET 2006]; child of
> [org.springframework.context.support.ClassPathXmlApplicationContext:
> display name
> [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406];
> startup date [Fri Dec 22 13:45:27 CET 2006]; root of context hierarchy]]
> INFO org.springframework.beans.factory.support.DefaultListableBeanFactory
> - Destroying singletons in
> {org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans [org.apache.activemq.xbean.XBeanBrokerService]; parent:
> org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans
> [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
> root of BeanFactory hierarchy}
>
>
>
>
> Is there any way of having a clean shutdown?
> With the vm transport a useShutdownHook=true would do the job, but with
> tcp I can't get any further...
>
> Thanks for any suggestion,
> Francesco
>
--
View this message in context: http://www.nabble.com/Cannot-shutdown-cleanly-tf2870519.html#a8713472
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: [Spam: 5.0] Cannot shutdown cleanly [still]
Posted by drvillo <f....@gmail.com>.
Hi James
attached you will find the execution log and the traces taken after the ^C
As you see from the thread dump, some threads are busy doing some
work (within an onMessage) but the operations they perform are guarded by
a timeout that should be well expired at the moment I kill the process.
Actually I don't know how this is supposed to work, but it seems that spring
doesn't manage to destroy the singletons when there are active sessions.
Moreover I don't know why despite the
-Dactivemq.broker.disable-clean-shutdown=true
the shutdown hook still gets called, I thought the option served to disable
it.
In a general sense, I'm supposed to disable the hooks (for both spring
and AMQ) to be able to stop the process? I had read here somewhere to
do so...
Thanks a lot for your help, I greatly appreciate it...
http://www.nabble.com/file/6813/traces.zip traces.zip
James.Strachan wrote:
>
> On 2/27/07, drvillo <f....@gmail.com> wrote:
>>
>> Hi James
>>
>> I'm fine with the traces, but the problem is that they
>> don't stop...there's something AMQ is still busy doing,
>> and I can't figure out how to stop it. the
>> Active Sessions = X
>> actually decreases with time, but when that reaches 1 it
>> stays like that forever (forever is ~minutes )
>>
>> I'm using -Dactivemq.broker.disable-clean-shutdown=true
>> but it seems not to make any difference if I remove it...
>>
>>
>> Do you have an idea of which threads are actually still busy?
>
> Am not sure - any chance you could create a few stack dumps so we can
> see whats going on in your environment?
>
>> BTW: trunk now has got rid of the messages, I guess you already
>> patched the log level for these messages.
>
> Yeah
>
> --
>
> James
> -------
> http://radio.weblogs.com/0112098/
>
>
--
View this message in context: http://www.nabble.com/Cannot-shutdown-cleanly-tf2870519s2354.html#a9180424
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: [Spam: 5.0] Cannot shutdown cleanly [still]
Posted by James Strachan <ja...@gmail.com>.
On 2/27/07, drvillo <f....@gmail.com> wrote:
>
> Hi James
>
> I'm fine with the traces, but the problem is that they
> don't stop...there's something AMQ is still busy doing,
> and I can't figure out how to stop it. the
> Active Sessions = X
> actually decreases with time, but when that reaches 1 it
> stays like that forever (forever is ~minutes )
>
> I'm using -Dactivemq.broker.disable-clean-shutdown=true
> but it seems not to make any difference if I remove it...
>
>
> Do you have an idea of which threads are actually still busy?
Am not sure - any chance you could create a few stack dumps so we can
see whats going on in your environment?
> BTW: trunk now has got rid of the messages, I guess you already
> patched the log level for these messages.
Yeah
--
James
-------
http://radio.weblogs.com/0112098/
Re: [Spam: 5.0] Cannot shutdown cleanly [still]
Posted by drvillo <f....@gmail.com>.
Hi James
I'm fine with the traces, but the problem is that they
don't stop...there's something AMQ is still busy doing,
and I can't figure out how to stop it. the
Active Sessions = X
actually decreases with time, but when that reaches 1 it
stays like that forever (forever is ~minutes )
I'm using -Dactivemq.broker.disable-clean-shutdown=true
but it seems not to make any difference if I remove it...
Do you have an idea of which threads are actually still busy?
BTW: trunk now has got rid of the messages, I guess you already
patched the log level for these messages.
Thanks a lot
Francesco
James.Strachan wrote:
>
> On 1/30/07, drvillo <f....@gmail.com> wrote:
>> Hi
>>
>> after more than a month I haven't been able to solve this...
>> I'm currently destroying jencks' JCAConnectors and JCAContainer,
>> which also stop ActiveMQResourceAdapter as a side effect.
>> Then I stop the broker via stop(), followed by the
>> applicationcontext.stop().
>>
>> Nevertheless I always get the trace below.
>
> The trace below is just an information warning that a stream closed.
> You could always patch the code to log EOFException messages at DEBUG
> level?
>
> James
>
>
>> IMHO the problem is that the
>> ActiveMQConnection tries to send
>>
>> asyncSendPacket(new ShutdownInfo());
>>
>> but the broker has already shut down the Transport...
>> Is there anyone out there that manages to stop a context cleanly after
>> having exchanged some messages?If I start and stop the broker without
>> any message being sent it just stops fine...
>>
>> FIY I'm using the tcp transport.
>> I hope to get some feedback on this, it's quite hard to present a service
>> that exit with 100s lines of exceptions...
>>
>> Thanks a lot!
>> Francesco
>>
>> [.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
>> Connection failed: javax.jms.JMSException: java.io.EOFException
>> [.0.1:61617] WARN
>> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
>> connectionErrorOccurred called with null
>> javax.jms.JMSException: java.io.EOFException
>> at
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
>> at
>> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
>> at
>> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
>> at
>> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
>> at
>> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
>> at java.lang.Thread.run(Thread.java:613)
>> Caused by: java.io.EOFException
>> at java.io.DataInputStream.readInt(DataInputStream.java:358)
>> at
>> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
>> ... 1 more
>> [.0.1:61617] INFO org.apache.activemq.ra.ActiveMQManagedConnection -
>> Error
>> occured during close of a JMS connection.
>> javax.jms.JMSException: The transport is not running.
>> at
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
>> at
>> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
>> at
>> org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
>> at
>> org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
>> at
>> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
>> at
>> org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
>> at
>> org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
>> at
>> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
>> at
>> org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
>> at
>> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
>> at
>> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
>> at
>> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
>> at
>> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
>> at
>> org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
>> at
>> org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
>> at
>> org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>> at java.lang.Thread.run(Thread.java:613)
>> Caused by: java.io.IOException: The transport is not running.
>> at
>> org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
>> at
>> org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
>> at
>> org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
>> at
>> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
>> at
>> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
>> at
>> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
>> at
>> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
>> ... 17 more
>> [.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
>> Connection failed: javax.jms.JMSException: java.io.EOFException
>>
>>
>>
>>
>>
>> drvillo wrote:
>> >
>> > Hi all
>> >
>> > using AMQ head, with jencks 1.3, and running and embedded broker:
>> >
>> > I can't find a way of shutting the service down, meaning the broker and
>> > the spring context
>> > without exceptions.
>> >
>> > Since I've read that I'm supposed to stop all the clients before
>> shutting
>> > down the broker
>> > actually I'm doing this:
>> >
>> >
>> >
>> > public void onTearDown() throws Exception {
>> >
>> > JCAConnector con = (JCAConnector)
>> > testSupport.getBean("inboundConnectorStage1");
>> >
>> > con.destroy();
>> > con = (JCAConnector)
>> > testSupport.getBean("mockInboundConnectorStage2");
>> > con.destroy();
>> > JCAContainer cont = (JCAContainer)
>> > testSupport.getBean("jencksJCAContainer");
>> > cont.destroy();
>> >
>> > XBeanBrokerService broker = (XBeanBrokerService)
>> > testSupport.getBean("broker");
>> > broker.stop();
>> > }
>> >
>> > followed by an
>> > applicationContext.close();
>> >
>> > The two JCAConnectors above are the only ones started.
>> >
>> > Nevertheless the logs show that a ServerSession is requested after
>> > destroying them:
>> >
>> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> > consumer: ID:obimac.local-49248-1166791529603-3:1:-1:2
>> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> > consumer: ID:obimac.local-49248-1166791529603-3:1:-1:1
>> > DEBUG org.apache.activemq.broker.TransportConnection - Stopping
>> > connection: /127.0.0.1:49250
>> > DEBUG org.apache.activemq.broker.TransportConnection - Stopped
>> connection:
>> > /127.0.0.1:49250
>> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> > consumer: ID:obimac.local-49248-1166791529603-3:0:-1:2
>> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> > consumer: ID:obimac.local-49248-1166791529603-3:0:-1:1
>> > DEBUG org.apache.activemq.broker.TransportConnection - Stopping
>> > connection: /127.0.0.1:49251
>> > DEBUG org.apache.activemq.broker.TransportConnection - Stopped
>> connection:
>> > /127.0.0.1:49251
>> > DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
>> > requested.
>> > DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
>> > requested.
>> > INFO org.apache.activemq.broker.BrokerService - ActiveMQ Message
>> Broker
>> > (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0) is shutting
>> > down
>> > DEBUG org.apache.activemq.broker.TransportConnection - Stopping
>> > connection: /127.0.0.1:49252
>> > DEBUG org.apache.activemq.broker.TransportConnection - Stopped
>> connection:
>> > /127.0.0.1:49252
>> > INFO org.apache.activemq.broker.TransportConnector - Connector tcp
>> > Stopped
>> > WARN org.apache.activemq.ra.ActiveMQManagedConnection - Connection
>> > failed: javax.jms.JMSException: java.io.EOFException
>> > DEBUG org.apache.activemq.ra.ActiveMQManagedConnection - Cause:
>> > javax.jms.JMSException: java.io.EOFException
>> > at
>> >
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> > at
>> >
>> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> > at
>> >
>> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
>> > at
>> >
>> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
>> > at
>> >
>> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
>> > at java.lang.Thread.run(Thread.java:613)
>> > Caused by: java.io.EOFException
>> > at java.io.DataInputStream.readInt(DataInputStream.java:358)
>> > at
>> >
>> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
>> > ... 1 more
>> > INFO org.apache.activemq.broker.BrokerService - ActiveMQ JMS Message
>> > Broker (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0)
>> stopped
>> > WARN
>> > org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener
>> -
>> > connectionErrorOccurred called with null
>> > javax.jms.JMSException: java.io.EOFException
>> > at
>> >
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> > at
>> >
>> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> > at
>> >
>> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
>> > at
>> >
>> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
>> > at
>> >
>> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
>> > at java.lang.Thread.run(Thread.java:613)
>> > Caused by: java.io.EOFException
>> > at java.io.DataInputStream.readInt(DataInputStream.java:358)
>> > at
>> >
>> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
>> > ... 1 more
>> > INFO
>> org.springframework.context.support.ClassPathXmlApplicationContext -
>> > Closing application context
>> >
>> [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406]
>> > DEBUG
>> > org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor
>> -
>> > returning connectionnull
>> > INFO
>> org.springframework.beans.factory.support.DefaultListableBeanFactory
>> > - Destroying singletons in
>> > {org.springframework.beans.factory.support.DefaultListableBeanFactory
>> > defining beans
>> >
>> [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
>> > root of BeanFactory hierarchy}
>> > INFO org.apache.activemq.ra.ActiveMQManagedConnection - Error occured
>> > during close of a JMS connection.
>> > javax.jms.JMSException: The transport is not running.
>> > at
>> >
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
>> > at
>> >
>> org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
>> > at
>> >
>> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
>> > at
>> >
>> org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
>> > at
>> >
>> org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
>> > at
>> >
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>> > at
>> >
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>> > at java.lang.Thread.run(Thread.java:613)
>> > Caused by: java.io.IOException: The transport is not running.
>> > at
>> >
>> org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
>> > at
>> >
>> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
>> > at
>> >
>> org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
>> > at
>> >
>> org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
>> > at
>> >
>> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
>> > at
>> >
>> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
>> > at
>> >
>> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
>> > at
>> >
>> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
>> > ... 17 more
>> > INFO org.apache.xbean.spring.context.ResourceXmlApplicationContext -
>> > Closing application context
>> >
>> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]
>> > DEBUG org.apache.xbean.spring.context.ResourceXmlApplicationContext -
>> > Publishing event in context
>> >
>> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]:
>> >
>> org.springframework.context.event.ContextClosedEvent[source=org.apache.xbean.spring.context.ResourceXmlApplicationContext:
>> > display name
>> >
>> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611];
>> > startup date [Fri Dec 22 13:45:28 CET 2006]; child of
>> > [org.springframework.context.support.ClassPathXmlApplicationContext:
>> > display name
>> >
>> [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406];
>> > startup date [Fri Dec 22 13:45:27 CET 2006]; root of context
>> hierarchy]]
>> > INFO
>> org.springframework.beans.factory.support.DefaultListableBeanFactory
>> > - Destroying singletons in
>> > {org.springframework.beans.factory.support.DefaultListableBeanFactory
>> > defining beans [org.apache.activemq.xbean.XBeanBrokerService]; parent:
>> > org.springframework.beans.factory.support.DefaultListableBeanFactory
>> > defining beans
>> >
>> [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
>> > root of BeanFactory hierarchy}
>> >
>> >
>> >
>> >
>> > Is there any way of having a clean shutdown?
>> > With the vm transport a useShutdownHook=true would do the job, but with
>> > tcp I can't get any further...
>> >
>> > Thanks for any suggestion,
>> > Francesco
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Cannot-shutdown-cleanly-tf2870519.html#a8713472
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>>
>
>
> --
>
> James
> -------
> http://radio.weblogs.com/0112098/
>
>
--
View this message in context: http://www.nabble.com/Cannot-shutdown-cleanly-tf2870519s2354.html#a9178620
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: Cannot shutdown cleanly [still]
Posted by James Strachan <ja...@gmail.com>.
On 1/30/07, drvillo <f....@gmail.com> wrote:
> Hi
>
> after more than a month I haven't been able to solve this...
> I'm currently destroying jencks' JCAConnectors and JCAContainer,
> which also stop ActiveMQResourceAdapter as a side effect.
> Then I stop the broker via stop(), followed by the
> applicationcontext.stop().
>
> Nevertheless I always get the trace below.
The trace below is just an information warning that a stream closed.
You could always patch the code to log EOFException messages at DEBUG
level?
James
> IMHO the problem is that the
> ActiveMQConnection tries to send
>
> asyncSendPacket(new ShutdownInfo());
>
> but the broker has already shut down the Transport...
> Is there anyone out there that manages to stop a context cleanly after
> having exchanged some messages?If I start and stop the broker without
> any message being sent it just stops fine...
>
> FIY I'm using the tcp transport.
> I hope to get some feedback on this, it's quite hard to present a service
> that exit with 100s lines of exceptions...
>
> Thanks a lot!
> Francesco
>
> [.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
> Connection failed: javax.jms.JMSException: java.io.EOFException
> [.0.1:61617] WARN
> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
> connectionErrorOccurred called with null
> javax.jms.JMSException: java.io.EOFException
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
> at
> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
> at
> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
> at
> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
> at
> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.EOFException
> at java.io.DataInputStream.readInt(DataInputStream.java:358)
> at
> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
> at
> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
> ... 1 more
> [.0.1:61617] INFO org.apache.activemq.ra.ActiveMQManagedConnection - Error
> occured during close of a JMS connection.
> javax.jms.JMSException: The transport is not running.
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
> at
> org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
> at
> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
> at
> org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
> at
> org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
> at
> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
> at
> org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
> at
> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
> at
> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
> at
> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
> at
> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
> at
> org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.IOException: The transport is not running.
> at
> org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
> at
> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
> at
> org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
> at
> org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
> at
> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
> at
> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
> ... 17 more
> [.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
> Connection failed: javax.jms.JMSException: java.io.EOFException
>
>
>
>
>
> drvillo wrote:
> >
> > Hi all
> >
> > using AMQ head, with jencks 1.3, and running and embedded broker:
> >
> > I can't find a way of shutting the service down, meaning the broker and
> > the spring context
> > without exceptions.
> >
> > Since I've read that I'm supposed to stop all the clients before shutting
> > down the broker
> > actually I'm doing this:
> >
> >
> >
> > public void onTearDown() throws Exception {
> >
> > JCAConnector con = (JCAConnector)
> > testSupport.getBean("inboundConnectorStage1");
> >
> > con.destroy();
> > con = (JCAConnector)
> > testSupport.getBean("mockInboundConnectorStage2");
> > con.destroy();
> > JCAContainer cont = (JCAContainer)
> > testSupport.getBean("jencksJCAContainer");
> > cont.destroy();
> >
> > XBeanBrokerService broker = (XBeanBrokerService)
> > testSupport.getBean("broker");
> > broker.stop();
> > }
> >
> > followed by an
> > applicationContext.close();
> >
> > The two JCAConnectors above are the only ones started.
> >
> > Nevertheless the logs show that a ServerSession is requested after
> > destroying them:
> >
> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> > consumer: ID:obimac.local-49248-1166791529603-3:1:-1:2
> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> > consumer: ID:obimac.local-49248-1166791529603-3:1:-1:1
> > DEBUG org.apache.activemq.broker.TransportConnection - Stopping
> > connection: /127.0.0.1:49250
> > DEBUG org.apache.activemq.broker.TransportConnection - Stopped connection:
> > /127.0.0.1:49250
> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> > consumer: ID:obimac.local-49248-1166791529603-3:0:-1:2
> > DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
> > consumer: ID:obimac.local-49248-1166791529603-3:0:-1:1
> > DEBUG org.apache.activemq.broker.TransportConnection - Stopping
> > connection: /127.0.0.1:49251
> > DEBUG org.apache.activemq.broker.TransportConnection - Stopped connection:
> > /127.0.0.1:49251
> > DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
> > requested.
> > DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
> > requested.
> > INFO org.apache.activemq.broker.BrokerService - ActiveMQ Message Broker
> > (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0) is shutting
> > down
> > DEBUG org.apache.activemq.broker.TransportConnection - Stopping
> > connection: /127.0.0.1:49252
> > DEBUG org.apache.activemq.broker.TransportConnection - Stopped connection:
> > /127.0.0.1:49252
> > INFO org.apache.activemq.broker.TransportConnector - Connector tcp
> > Stopped
> > WARN org.apache.activemq.ra.ActiveMQManagedConnection - Connection
> > failed: javax.jms.JMSException: java.io.EOFException
> > DEBUG org.apache.activemq.ra.ActiveMQManagedConnection - Cause:
> > javax.jms.JMSException: java.io.EOFException
> > at
> > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
> > at
> > org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
> > at
> > org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
> > at
> > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> > at
> > org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> > at
> > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> > at
> > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> > at
> > org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
> > at
> > org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
> > at
> > org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
> > at java.lang.Thread.run(Thread.java:613)
> > Caused by: java.io.EOFException
> > at java.io.DataInputStream.readInt(DataInputStream.java:358)
> > at
> > org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
> > ... 1 more
> > INFO org.apache.activemq.broker.BrokerService - ActiveMQ JMS Message
> > Broker (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0) stopped
> > WARN
> > org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
> > connectionErrorOccurred called with null
> > javax.jms.JMSException: java.io.EOFException
> > at
> > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
> > at
> > org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
> > at
> > org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
> > at
> > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> > at
> > org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> > at
> > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> > at
> > org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> > at
> > org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
> > at
> > org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
> > at
> > org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
> > at java.lang.Thread.run(Thread.java:613)
> > Caused by: java.io.EOFException
> > at java.io.DataInputStream.readInt(DataInputStream.java:358)
> > at
> > org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
> > ... 1 more
> > INFO org.springframework.context.support.ClassPathXmlApplicationContext -
> > Closing application context
> > [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406]
> > DEBUG
> > org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor -
> > returning connectionnull
> > INFO org.springframework.beans.factory.support.DefaultListableBeanFactory
> > - Destroying singletons in
> > {org.springframework.beans.factory.support.DefaultListableBeanFactory
> > defining beans
> > [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
> > root of BeanFactory hierarchy}
> > INFO org.apache.activemq.ra.ActiveMQManagedConnection - Error occured
> > during close of a JMS connection.
> > javax.jms.JMSException: The transport is not running.
> > at
> > org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
> > at
> > org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
> > at
> > org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
> > at
> > org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
> > at
> > org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
> > at
> > org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
> > at
> > org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
> > at
> > org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
> > at
> > org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
> > at
> > org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
> > at
> > org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
> > at
> > org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
> > at
> > org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
> > at
> > org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
> > at
> > org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
> > at
> > org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
> > at
> > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> > at
> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> > at java.lang.Thread.run(Thread.java:613)
> > Caused by: java.io.IOException: The transport is not running.
> > at
> > org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
> > at
> > org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
> > at
> > org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
> > at
> > org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
> > at
> > org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
> > at
> > org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
> > at
> > org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
> > at
> > org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
> > ... 17 more
> > INFO org.apache.xbean.spring.context.ResourceXmlApplicationContext -
> > Closing application context
> > [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]
> > DEBUG org.apache.xbean.spring.context.ResourceXmlApplicationContext -
> > Publishing event in context
> > [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]:
> > org.springframework.context.event.ContextClosedEvent[source=org.apache.xbean.spring.context.ResourceXmlApplicationContext:
> > display name
> > [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611];
> > startup date [Fri Dec 22 13:45:28 CET 2006]; child of
> > [org.springframework.context.support.ClassPathXmlApplicationContext:
> > display name
> > [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406];
> > startup date [Fri Dec 22 13:45:27 CET 2006]; root of context hierarchy]]
> > INFO org.springframework.beans.factory.support.DefaultListableBeanFactory
> > - Destroying singletons in
> > {org.springframework.beans.factory.support.DefaultListableBeanFactory
> > defining beans [org.apache.activemq.xbean.XBeanBrokerService]; parent:
> > org.springframework.beans.factory.support.DefaultListableBeanFactory
> > defining beans
> > [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
> > root of BeanFactory hierarchy}
> >
> >
> >
> >
> > Is there any way of having a clean shutdown?
> > With the vm transport a useShutdownHook=true would do the job, but with
> > tcp I can't get any further...
> >
> > Thanks for any suggestion,
> > Francesco
> >
>
> --
> View this message in context: http://www.nabble.com/Cannot-shutdown-cleanly-tf2870519.html#a8713472
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>
--
James
-------
http://radio.weblogs.com/0112098/
Re: [Spam: 5.0] Cannot shutdown cleanly [still]
Posted by drvillo <f....@gmail.com>.
Hi
this task is starting to get at the top of the pile...
We're almost ready to ship and still, if ctrl-c the process
(which runs the embedded broker) I don't manage
to have it exiting. After having destroyed the consumers,
the pools and the spring container itself it stays showing
Active Sessions = X
Could someone please give me an advice on this? I really don't
get how to shut this thing down without kill -9, which isn't really
an option.
Thanks a lot
Francesco
drvillo wrote:
>
> Hi
>
> after more than a month I haven't been able to solve this...
> I'm currently destroying jencks' JCAConnectors and JCAContainer,
> which also stop ActiveMQResourceAdapter as a side effect.
> Then I stop the broker via stop(), followed by the
> applicationcontext.stop().
>
> Nevertheless I always get the trace below. IMHO the problem is that the
> ActiveMQConnection tries to send
>
> asyncSendPacket(new ShutdownInfo());
>
> but the broker has already shut down the Transport...
> Is there anyone out there that manages to stop a context cleanly after
> having exchanged some messages?If I start and stop the broker without
> any message being sent it just stops fine...
>
> FIY I'm using the tcp transport.
> I hope to get some feedback on this, it's quite hard to present a service
> that exit with 100s lines of exceptions...
>
> Thanks a lot!
> Francesco
>
> [.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
> Connection failed: javax.jms.JMSException: java.io.EOFException
> [.0.1:61617] WARN
> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
> connectionErrorOccurred called with null
> javax.jms.JMSException: java.io.EOFException
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
> at
> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
> at
> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
> at
> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
> at
> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
> at
> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.EOFException
> at java.io.DataInputStream.readInt(DataInputStream.java:358)
> at
> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
> at
> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
> at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
> ... 1 more
> [.0.1:61617] INFO org.apache.activemq.ra.ActiveMQManagedConnection -
> Error occured during close of a JMS connection.
> javax.jms.JMSException: The transport is not running.
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
> at
> org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
> at
> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
> at
> org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
> at
> org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
> at
> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
> at
> org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
> at
> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
> at
> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
> at
> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
> at
> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
> at
> org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
> at
> org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.io.IOException: The transport is not running.
> at
> org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
> at
> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
> at
> org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
> at
> org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
> at
> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
> at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
> at
> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
> at
> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
> ... 17 more
> [.0.1:61617] WARN org.apache.activemq.ra.ActiveMQManagedConnection -
> Connection failed: javax.jms.JMSException: java.io.EOFException
>
>
>
>
>
> drvillo wrote:
>>
>> Hi all
>>
>> using AMQ head, with jencks 1.3, and running and embedded broker:
>>
>> I can't find a way of shutting the service down, meaning the broker and
>> the spring context
>> without exceptions.
>>
>> Since I've read that I'm supposed to stop all the clients before shutting
>> down the broker
>> actually I'm doing this:
>>
>>
>>
>> public void onTearDown() throws Exception {
>>
>> JCAConnector con = (JCAConnector)
>> testSupport.getBean("inboundConnectorStage1");
>>
>> con.destroy();
>> con = (JCAConnector)
>> testSupport.getBean("mockInboundConnectorStage2");
>> con.destroy();
>> JCAContainer cont = (JCAContainer)
>> testSupport.getBean("jencksJCAContainer");
>> cont.destroy();
>>
>> XBeanBrokerService broker = (XBeanBrokerService)
>> testSupport.getBean("broker");
>> broker.stop();
>> }
>>
>> followed by an
>> applicationContext.close();
>>
>> The two JCAConnectors above are the only ones started.
>>
>> Nevertheless the logs show that a ServerSession is requested after
>> destroying them:
>>
>> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> consumer: ID:obimac.local-49248-1166791529603-3:1:-1:2
>> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> consumer: ID:obimac.local-49248-1166791529603-3:1:-1:1
>> DEBUG org.apache.activemq.broker.TransportConnection - Stopping
>> connection: /127.0.0.1:49250
>> DEBUG org.apache.activemq.broker.TransportConnection - Stopped
>> connection: /127.0.0.1:49250
>> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> consumer: ID:obimac.local-49248-1166791529603-3:0:-1:2
>> DEBUG org.apache.activemq.broker.region.AbstractRegion - Removing
>> consumer: ID:obimac.local-49248-1166791529603-3:0:-1:1
>> DEBUG org.apache.activemq.broker.TransportConnection - Stopping
>> connection: /127.0.0.1:49251
>> DEBUG org.apache.activemq.broker.TransportConnection - Stopped
>> connection: /127.0.0.1:49251
>> DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
>> requested.
>> DEBUG org.apache.activemq.ra.ServerSessionPoolImpl - ServerSession
>> requested.
>> INFO org.apache.activemq.broker.BrokerService - ActiveMQ Message Broker
>> (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0) is shutting
>> down
>> DEBUG org.apache.activemq.broker.TransportConnection - Stopping
>> connection: /127.0.0.1:49252
>> DEBUG org.apache.activemq.broker.TransportConnection - Stopped
>> connection: /127.0.0.1:49252
>> INFO org.apache.activemq.broker.TransportConnector - Connector tcp
>> Stopped
>> WARN org.apache.activemq.ra.ActiveMQManagedConnection - Connection
>> failed: javax.jms.JMSException: java.io.EOFException
>> DEBUG org.apache.activemq.ra.ActiveMQManagedConnection - Cause:
>> javax.jms.JMSException: java.io.EOFException
>> at
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
>> at
>> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
>> at
>> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
>> at
>> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
>> at
>> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
>> at java.lang.Thread.run(Thread.java:613)
>> Caused by: java.io.EOFException
>> at java.io.DataInputStream.readInt(DataInputStream.java:358)
>> at
>> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
>> ... 1 more
>> INFO org.apache.activemq.broker.BrokerService - ActiveMQ JMS Message
>> Broker (brokerConfigTest, ID:obimac.local-49248-1166791529603-0:0)
>> stopped
>> WARN
>> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener -
>> connectionErrorOccurred called with null
>> javax.jms.JMSException: java.io.EOFException
>> at
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:46)
>> at
>> org.apache.activemq.ActiveMQConnection.onAsyncException(ActiveMQConnection.java:1527)
>> at
>> org.apache.activemq.ActiveMQConnection.onException(ActiveMQConnection.java:1543)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.ResponseCorrelator.onException(ResponseCorrelator.java:114)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.TransportFilter.onException(TransportFilter.java:96)
>> at
>> org.apache.activemq.transport.WireFormatNegotiator.onException(WireFormatNegotiator.java:147)
>> at
>> org.apache.activemq.transport.InactivityMonitor.onException(InactivityMonitor.java:150)
>> at
>> org.apache.activemq.transport.TransportSupport.onException(TransportSupport.java:97)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:150)
>> at java.lang.Thread.run(Thread.java:613)
>> Caused by: java.io.EOFException
>> at java.io.DataInputStream.readInt(DataInputStream.java:358)
>> at
>> org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:267)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:156)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:136)
>> ... 1 more
>> INFO org.springframework.context.support.ClassPathXmlApplicationContext
>> - Closing application context
>> [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406]
>> DEBUG
>> org.apache.geronimo.connector.outbound.SinglePoolConnectionInterceptor -
>> returning connectionnull
>> INFO
>> org.springframework.beans.factory.support.DefaultListableBeanFactory -
>> Destroying singletons in
>> {org.springframework.beans.factory.support.DefaultListableBeanFactory
>> defining beans
>> [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
>> root of BeanFactory hierarchy}
>> INFO org.apache.activemq.ra.ActiveMQManagedConnection - Error occured
>> during close of a JMS connection.
>> javax.jms.JMSException: The transport is not running.
>> at
>> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:58)
>> at
>> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1167)
>> at
>> org.apache.activemq.ActiveMQConnection.close(ActiveMQConnection.java:580)
>> at
>> org.apache.activemq.ra.ActiveMQManagedConnection.destroy(ActiveMQManagedConnection.java:225)
>> at
>> org.apache.geronimo.connector.outbound.MCFConnectionInterceptor.returnConnection(MCFConnectionInterceptor.java:57)
>> at
>> org.apache.geronimo.connector.outbound.LocalXAResourceInsertionInterceptor.returnConnection(LocalXAResourceInsertionInterceptor.java:50)
>> at
>> org.apache.geronimo.connector.outbound.SinglePoolMatchAllConnectionInterceptor.internalReturn(SinglePoolMatchAllConnectionInterceptor.java:138)
>> at
>> org.apache.geronimo.connector.outbound.AbstractSinglePoolConnectionInterceptor.returnConnection(AbstractSinglePoolConnectionInterceptor.java:119)
>> at
>> org.apache.geronimo.connector.outbound.TransactionEnlistingInterceptor.returnConnection(TransactionEnlistingInterceptor.java:94)
>> at
>> org.apache.geronimo.connector.outbound.TransactionCachingInterceptor.returnConnection(TransactionCachingInterceptor.java:93)
>> at
>> org.apache.geronimo.connector.outbound.ConnectionHandleInterceptor.returnConnection(ConnectionHandleInterceptor.java:71)
>> at
>> org.apache.geronimo.connector.outbound.TCCLInterceptor.returnConnection(TCCLInterceptor.java:50)
>> at
>> org.apache.geronimo.connector.outbound.GeronimoConnectionEventListener.connectionErrorOccurred(GeronimoConnectionEventListener.java:81)
>> at
>> org.apache.activemq.ra.ActiveMQManagedConnection.fireErrorOccurredEvent(ActiveMQManagedConnection.java:192)
>> at
>> org.apache.activemq.ra.ActiveMQManagedConnection.onException(ActiveMQManagedConnection.java:416)
>> at
>> org.apache.activemq.ActiveMQConnection$4.run(ActiveMQConnection.java:1532)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>> at java.lang.Thread.run(Thread.java:613)
>> Caused by: java.io.IOException: The transport is not running.
>> at
>> org.apache.activemq.transport.TransportSupport.checkStarted(TransportSupport.java:103)
>> at
>> org.apache.activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:117)
>> at
>> org.apache.activemq.transport.InactivityMonitor.oneway(InactivityMonitor.java:141)
>> at
>> org.apache.activemq.transport.TransportFilter.oneway(TransportFilter.java:80)
>> at
>> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:93)
>> at
>> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:43)
>> at
>> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
>> at
>> org.apache.activemq.ActiveMQConnection.asyncSendPacket(ActiveMQConnection.java:1165)
>> ... 17 more
>> INFO org.apache.xbean.spring.context.ResourceXmlApplicationContext -
>> Closing application context
>> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]
>> DEBUG org.apache.xbean.spring.context.ResourceXmlApplicationContext -
>> Publishing event in context
>> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611]:
>> org.springframework.context.event.ContextClosedEvent[source=org.apache.xbean.spring.context.ResourceXmlApplicationContext:
>> display name
>> [org.apache.xbean.spring.context.ResourceXmlApplicationContext;hashCode=12706611];
>> startup date [Fri Dec 22 13:45:28 CET 2006]; child of
>> [org.springframework.context.support.ClassPathXmlApplicationContext:
>> display name
>> [org.springframework.context.support.ClassPathXmlApplicationContext;hashCode=4167406];
>> startup date [Fri Dec 22 13:45:27 CET 2006]; root of context hierarchy]]
>> INFO
>> org.springframework.beans.factory.support.DefaultListableBeanFactory -
>> Destroying singletons in
>> {org.springframework.beans.factory.support.DefaultListableBeanFactory
>> defining beans [org.apache.activemq.xbean.XBeanBrokerService]; parent:
>> org.springframework.beans.factory.support.DefaultListableBeanFactory
>> defining beans
>> [transactionContextManager,geronimo,transactionManager,connectionManager,jmsResourceAdapter,jmsManagedConnectionFactory,jmsConnectionFactory,jencksJCAContainer,broker,stage1Queue,stage2Queue,stage3Queue,dataSource,hcDao,wdDao,wdServiceTarget,wdService,dbHelper,controller,sendSeed,hstcntBundle,hostcountProperties,resolver,service,inboundConnectorStage1,stage1,sendStage1,stage2,mockInboundConnectorStage2];
>> root of BeanFactory hierarchy}
>>
>>
>>
>>
>> Is there any way of having a clean shutdown?
>> With the vm transport a useShutdownHook=true would do the job, but with
>> tcp I can't get any further...
>>
>> Thanks for any suggestion,
>> Francesco
>>
>
>
--
View this message in context: http://www.nabble.com/Cannot-shutdown-cleanly-tf2870519s2354.html#a9177521
Sent from the ActiveMQ - User mailing list archive at Nabble.com.