ActiveMQ
  1. ActiveMQ
  2. AMQ-2497

Message broker won't come back when the databse goes offline and comes back online

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Duplicate
    • Affects Version/s: 5.3.0
    • Fix Version/s: 5.x
    • Component/s: Broker
    • Labels:
      None
    • Environment:

      MS SQL 2000,2005,2008

      Description

      • deployed ActiveMQ 5.3.0 as RAR on JBoss
      • broker comes up fine
      • at some point database goes offline
      • broker can't communicate with database and shuts down
      • now database comes back online
      • borker will never come back again and will have to restart the JBoss manually again to start the broker

      This will be a blocker for us to go to production as there is no availability of broker when database goes offline and comes back.

      Here is my broker-config.xml, let me know if any configuration is missing :

      <beans xmlns="http://activemq.apache.org/schema/core">

      <bean xmlns="" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>

      <bean xmlns="" id="my-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
      <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
      <property name="url" value="jdbc:sqlserver://mydb:1433;databaseName=myds"/>
      <property name="username" value="sql"/>
      <property name="password" value="sql"/>
      <property name="initialSize" value="10"/>
      <property name="poolPreparedStatements" value="true"/>
      </bean>

      <!-- shutdown hook is disabled as RAR classloader may be gone at shutdown -->
      <broker useJmx="true" brokerName="sample.broker1" useShutdownHook="false">

      <destinations>
      <topic physicalName="pocket" />
      </destinations>

      <managementContext>
      <!-- use appserver provided context instead of creating one,
      for jboss use: -Djboss.platform.mbeanserver -->
      <managementContext createConnector="false"/>
      </managementContext>

      <persistenceAdapter>
      <!-- <amqPersistenceAdapter syncOnWrite="false" directory="$

      {jboss.server.data.dir}/activemq" maxFileLength="20 mb"/> -->
      <!-- <journaledJDBC journalLogFiles="5" dataDirectory="${jboss.server.data.dir}

      /activemq"/> -->
      <!-- To use a different datasource, use th following syntax : -->

      <!-- <kahaPersistenceAdapter directory="$

      {jboss.server.data.dir}/activemq" maxDataFileLength="33554432"/> -->

      <journaledJDBC journalLogFiles="5" dataDirectory="${jboss.server.data.dir}

      /activemq" dataSource="#my-ds" useDatabaseLock="false" />

      </persistenceAdapter>

      <transportConnectors>
      <transportConnector name="sample.broker1" uri="tcp://localhost:3030" discoveryUri="multicast://default"/>
      </transportConnectors>

      </broker>
      </beans>

        Issue Links

          Activity

          Hide
          hiskill added a comment -

          Do we have do anything specific to make the broker available in these scenarios. Restarting JBoss is not an acceptable option.
          Any help is highly appreciated.

          Show
          hiskill added a comment - Do we have do anything specific to make the broker available in these scenarios. Restarting JBoss is not an acceptable option. Any help is highly appreciated.
          Hide
          Manjuram Perumalla added a comment -

          Are there any updates on this issue? We've similar problem with 5.0.0 and would like to know if it's been fixed in later versions.

          Thanks

          Show
          Manjuram Perumalla added a comment - Are there any updates on this issue? We've similar problem with 5.0.0 and would like to know if it's been fixed in later versions. Thanks
          Hide
          Gary Tully added a comment -

          Have you tried to configure a failover jdb connection: something like what is described here:
          http://forum.springsource.org/showpost.php?p=124247&postcount=4

          also, a snippet of the activemq log file when it i initiates shutdown would be useful to identify what part of the code is detecting the jdbc connection failure and deciding to stop.

          Show
          Gary Tully added a comment - Have you tried to configure a failover jdb connection: something like what is described here: http://forum.springsource.org/showpost.php?p=124247&postcount=4 also, a snippet of the activemq log file when it i initiates shutdown would be useful to identify what part of the code is detecting the jdbc connection failure and deciding to stop.
          Hide
          Manjuram Perumalla added a comment -

          I've added 'useDatabaseLock=false' to the database persistence adapter to disable db failover. This setting is working for us. Maybe this setting should be set to false by default (out-of-the-box) and let the users change it if they add database failover. Or improve the documentation.

          From the Javadoc of JDBCPersistenceAdapter, "Sets whether or not an exclusive database lock should be used to enable JDBC Master/Slave. Enabled by default."

          Show
          Manjuram Perumalla added a comment - I've added 'useDatabaseLock=false' to the database persistence adapter to disable db failover. This setting is working for us. Maybe this setting should be set to false by default (out-of-the-box) and let the users change it if they add database failover. Or improve the documentation. From the Javadoc of JDBCPersistenceAdapter, "Sets whether or not an exclusive database lock should be used to enable JDBC Master/Slave. Enabled by default."
          Hide
          Jan Lievens added a comment -

          We have the same issue with a PostgreSQL database. It seems that the protected Connection in the DefaultDatabaseLocker becomes stale when the DB goes down but is still used whenever the keepAlive-method is called. Only at the start of the DefaultDatabaseLocker is the connection retrieved from the datasource (which in our case has a validationQuery) so the keepAlive catches any Exception while using the stale connection. When this happens the keepAlive returns a false which results in a stopBroker()-method call on the JDBCPersistenceAdapter.

          Maybe it would be better to diversify the catch-statement in the keepAlive-method and whenever this specific Exception (in our case org.postgresql.util.PSQLException: FATAL: terminating connection due to administrator command) occurs (but any SQLException will do I think), take the necessary precautions:

          • stop all the transport-connectors so that no further messages are send into ActiveMQ
          • schedule a different keepAlive that simply checks if the DB is up again
            -> if up again: re-initialize the DefaultDatabaseLocker and start the transport-connectors again

          I haven't come around implementing a patch to the 5.5-SNAPSHOT yet but I am willing to do so if my assumptions stated above are somewhat correct.

          Show
          Jan Lievens added a comment - We have the same issue with a PostgreSQL database. It seems that the protected Connection in the DefaultDatabaseLocker becomes stale when the DB goes down but is still used whenever the keepAlive-method is called. Only at the start of the DefaultDatabaseLocker is the connection retrieved from the datasource (which in our case has a validationQuery) so the keepAlive catches any Exception while using the stale connection. When this happens the keepAlive returns a false which results in a stopBroker()-method call on the JDBCPersistenceAdapter. Maybe it would be better to diversify the catch-statement in the keepAlive-method and whenever this specific Exception (in our case org.postgresql.util.PSQLException: FATAL: terminating connection due to administrator command) occurs (but any SQLException will do I think), take the necessary precautions: stop all the transport-connectors so that no further messages are send into ActiveMQ schedule a different keepAlive that simply checks if the DB is up again -> if up again: re-initialize the DefaultDatabaseLocker and start the transport-connectors again I haven't come around implementing a patch to the 5.5-SNAPSHOT yet but I am willing to do so if my assumptions stated above are somewhat correct.
          Hide
          Jan Lievens added a comment -

          It appears that there is a test present in the activemq-core module called org.apache.activemq.broker.ft.DbRestartJDBCQueueMasterSlaveTest that tests the scenario where the DB goes down and comes up again in a master/slave configuration.
          The outcome of this test is that the master goes down never to come up again (which is the state that shouldn't occur). On the other hand the slave becomes the master when the DB comes up again (which is after the master went down).
          This test doesn't check if the master or slave is up or down nor what master/slave states they are in.

          So basically the problem is that when a master sees his DB-store fail he should revert to a slave state and not to the dead state. And when the DB comes up again the fastest of the 2 slaved brokers becomes master. This way we don't have to manually start the dead master after each DB failure.

          Show
          Jan Lievens added a comment - It appears that there is a test present in the activemq-core module called org.apache.activemq.broker.ft.DbRestartJDBCQueueMasterSlaveTest that tests the scenario where the DB goes down and comes up again in a master/slave configuration. The outcome of this test is that the master goes down never to come up again (which is the state that shouldn't occur). On the other hand the slave becomes the master when the DB comes up again (which is after the master went down). This test doesn't check if the master or slave is up or down nor what master/slave states they are in. So basically the problem is that when a master sees his DB-store fail he should revert to a slave state and not to the dead state. And when the DB comes up again the fastest of the 2 slaved brokers becomes master. This way we don't have to manually start the dead master after each DB failure.
          Hide
          Kaiqin Sun added a comment -

          Just want to clarify the issue, it appears there are two scenarios for AMQ to deal with DataBase Reconnection:

          1) with Master/Slave configuration (with two DataBases):

          2) without Master/Slave configuration ( with only one DataBase):
          There are lots of people facing this scenario in production environment.

          see:
          AMQ-1780:ActiveMQ broker does not automatically reconnect if the connection to the database is lost

          Show
          Kaiqin Sun added a comment - Just want to clarify the issue, it appears there are two scenarios for AMQ to deal with DataBase Reconnection: 1) with Master/Slave configuration (with two DataBases): 2) without Master/Slave configuration ( with only one DataBase): There are lots of people facing this scenario in production environment. see: AMQ-1780 :ActiveMQ broker does not automatically reconnect if the connection to the database is lost
          Hide
          Oleg Kiorsak added a comment -

          same happens with 5.4.2

          a mere restart of the SQL Server service results in both master and Slave shutting down for good... this makes it impossible to have any HA capability and essentially defeats the purpose of a "cluster"...

          ------ MASTER LOG ---------------------------------------------------------------

          2011-03-18 15:30:25,274 | INFO | Refreshing org.apache.activemq.xbean.XBeanBrokerFactory$1@6825c828: startup date [Fri Mar 18 15:30:25 EST 2011]; root of context hierarchy | org.apache.activemq.xbean.XBeanBrokerFactory$1 | main
          2011-03-18 15:30:29,394 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest1/tmp_storage started | org.apache.activemq.store.kahadb.plist.PListStore | main
          2011-03-18 15:30:29,526 | INFO | Using Persistence Adapter: JDBCPersistenceAdapter(org.apache.commons.dbcp.BasicDataSource@5ebbfa5c) | org.apache.activemq.broker.BrokerService | main
          2011-03-18 15:30:30,036 | INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:2011/jmxrmi | org.apache.activemq.broker.jmx.ManagementContext | JMX connector
          2011-03-18 15:30:33,979 | INFO | Database adapter driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactJDBCAdapter | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          2011-03-18 15:30:35,688 | INFO | Database lock driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          2011-03-18 15:30:35,689 | INFO | Attempting to acquire the exclusive lock to become the Master broker | org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | main
          2011-03-18 15:30:35,741 | INFO | Becoming the master on dataSource: org.apache.commons.dbcp.BasicDataSource@5ebbfa5c | org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | main
          2011-03-18 15:30:35,750 | INFO | ActiveMQ 5.4.2-fuse-01-00 JMS Message Broker (MobTechTest1) is starting | org.apache.activemq.broker.BrokerService | main
          2011-03-18 15:30:35,751 | INFO | For help or more information please see: http://activemq.apache.org/ | org.apache.activemq.broker.BrokerService | main
          2011-03-18 15:30:36,373 | INFO | Listening for connections at: nio://mdtapdot01:10001 | org.apache.activemq.transport.TransportServerThreadSupport | main
          2011-03-18 15:30:36,378 | INFO | Connector openwire Started | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:30:36,396 | INFO | Listening for connections at: stomp://mdtapdot01:10002 | org.apache.activemq.transport.TransportServerThreadSupport | main
          2011-03-18 15:30:36,396 | INFO | Connector STOMP Started | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:30:36,420 | INFO | Listening for connections at: xmpp://mdtapdot01:10003 | org.apache.activemq.transport.TransportServerThreadSupport | main
          2011-03-18 15:30:36,421 | INFO | Connector xmpp Started | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:30:36,427 | INFO | ActiveMQ JMS Message Broker (MobTechTest1, ID:mdtapdot01-35145-1300422635816-0:1) started | org.apache.activemq.broker.BrokerService | main
          2011-03-18 15:30:36,656 | INFO | jetty-7.1.6.v20100715 | org.eclipse.jetty.util.log | main
          2011-03-18 15:30:37,509 | INFO | ActiveMQ WebConsole initialized. | org.apache.activemq.web.WebConsoleStarter | main
          2011-03-18 15:30:37,845 | INFO | Initializing Spring FrameworkServlet 'dispatcher' | /admin | main
          2011-03-18 15:30:38,310 | INFO | ActiveMQ Console at http://0.0.0.0:8161/admin | org.eclipse.jetty.util.log | main
          2011-03-18 15:30:38,949 | INFO | Initializing Spring root WebApplicationContext | /camel | main
          2011-03-18 15:30:39,438 | INFO | OSGi environment not detected. | org.apache.camel.spring.handler.CamelNamespaceHandler | main
          2011-03-18 15:30:42,273 | INFO | Apache Camel 2.6.0-fuse-00-00 (CamelContext: camel) is starting | org.apache.camel.spring.SpringCamelContext | main
          2011-03-18 15:30:42,274 | INFO | JMX enabled. Using ManagedManagementStrategy. | org.apache.camel.spring.SpringCamelContext | main
          2011-03-18 15:30:44,421 | INFO | Found 5 packages with 16 @Converter classes to load | org.apache.camel.impl.converter.AnnotationTypeConverterLoader | main
          2011-03-18 15:30:44,505 | INFO | Loaded 151 type converters in 1.867 seconds | org.apache.camel.impl.converter.DefaultTypeConverter | main
          2011-03-18 15:30:47,132 | INFO | Connector vm://MobTechTest1 Started | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:30:47,520 | INFO | Route: route1 started and consuming from: Endpoint[activemq://MDT.INBOUND] | org.apache.camel.spring.SpringCamelContext | main
          2011-03-18 15:30:47,579 | INFO | Total 1 routes, of which 1 is started. | org.apache.camel.spring.SpringCamelContext | main
          2011-03-18 15:30:47,580 | INFO | Apache Camel 2.6.0-fuse-00-00 (CamelContext: camel) started in 5.305 seconds | org.apache.camel.spring.SpringCamelContext | main
          2011-03-18 15:30:52,371 | INFO | Camel Console at http://0.0.0.0:8161/camel | org.eclipse.jetty.util.log | main
          2011-03-18 15:30:52,475 | INFO | ActiveMQ Web Demos at http://0.0.0.0:8161/demo | org.eclipse.jetty.util.log | main
          2011-03-18 15:30:52,585 | INFO | RESTful file access application at http://0.0.0.0:8161/fileserver | org.eclipse.jetty.util.log | main
          2011-03-18 15:30:52,753 | INFO | FUSE Web Console at http://0.0.0.0:8161/console | org.eclipse.jetty.util.log | main
          2011-03-18 15:30:52,781 | INFO | Started SelectChannelConnector@0.0.0.0:8161 | org.eclipse.jetty.util.log | main
          2011-03-18 15:31:35,756 | ERROR | Failed to update database lock: com.microsoft.sqlserver.jdbc.SQLServerException: Broken pipe | org.apache.activemq.store.jdbc.DefaultDatabaseLocker | ActiveMQ Cleanup Timer
          com.microsoft.sqlserver.jdbc.SQLServerException: Broken pipe
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1368)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1355)
          at com.microsoft.sqlserver.jdbc.TDSChannel.write(IOBuffer.java:1548)
          at com.microsoft.sqlserver.jdbc.TDSWriter.flush(IOBuffer.java:2368)
          at com.microsoft.sqlserver.jdbc.TDSWriter.writePacket(IOBuffer.java:2270)
          at com.microsoft.sqlserver.jdbc.TDSWriter.endMessage(IOBuffer.java:1877)
          at com.microsoft.sqlserver.jdbc.TDSCommand.startResponse(IOBuffer.java:4403)
          at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:386)
          at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:338)
          at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4026)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1416)
          at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:185)
          at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:160)
          at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate(SQLServerPreparedStatement.java:306)
          at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102)
          at org.apache.activemq.store.jdbc.DefaultDatabaseLocker.keepAlive(DefaultDatabaseLocker.java:161)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.databaseLockKeepAlive(JDBCPersistenceAdapter.java:604)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter$3.run(JDBCPersistenceAdapter.java:290)
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
          at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
          at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
          at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
          at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
          at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
          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:619)
          2011-03-18 15:31:35,760 | INFO | No longer able to keep the exclusive lock so giving up being a master | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | ActiveMQ Cleanup Timer
          2011-03-18 15:31:35,760 | INFO | ActiveMQ Message Broker (MobTechTest1, ID:mdtapdot01-35145-1300422635816-0:1) is shutting down | org.apache.activemq.broker.BrokerService | ActiveMQ Cleanup Timer
          2011-03-18 15:31:36,468 | INFO | Connector openwire Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer
          2011-03-18 15:31:38,092 | INFO | Connector STOMP Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer
          2011-03-18 15:31:38,476 | INFO | Connector xmpp Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer
          2011-03-18 15:31:38,488 | INFO | Connector vm://MobTechTest1 Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer
          2011-03-18 15:31:38,502 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest1/tmp_storage stopped | org.apache.activemq.store.kahadb.plist.PListStore | ActiveMQ Cleanup Timer
          2011-03-18 15:31:38,536 | INFO | ActiveMQ JMS Message Broker (MobTechTest1, ID:mdtapdot01-35145-1300422635816-0:1) stopped | org.apache.activemq.broker.BrokerService | ActiveMQ Cleanup Timer

          ------------SLAVE LOG ------------------------

          2011-03-18 15:30:31,551 | INFO | Refreshing org.apache.activemq.xbean.XBeanBrokerFactory$1@53f64158: startup date [Fri Mar 18 15:30:31 EST 2011]; root of context hierarchy | org.apache.activemq.xbean.XBeanBrokerFactory$1 | main
          2011-03-18 15:30:39,114 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest2/tmp_storage started | org.apache.activemq.store.kahadb.plist.PListStore | main
          2011-03-18 15:30:39,799 | INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:2011/jmxrmi | org.apache.activemq.broker.jmx.ManagementContext | JMX connector
          2011-03-18 15:30:39,868 | INFO | Using Persistence Adapter: JDBCPersistenceAdapter(org.apache.commons.dbcp.BasicDataSource@3d015a9e) | org.apache.activemq.broker.BrokerService | main
          2011-03-18 15:30:44,694 | INFO | Database adapter driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactJDBCAdapter | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          2011-03-18 15:31:22,664 | WARN | Cannot create tables due to: com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          2011-03-18 15:31:22,670 | WARN | Failure Details: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
          at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.commit(SQLServerConnection.java:1641)
          at org.apache.commons.dbcp.DelegatingConnection.commit(DelegatingConnection.java:301)
          at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.commit(PoolingDataSource.java:200)
          at org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doCreateTables(DefaultJDBCAdapter.java:115)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:271)
          at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485)
          at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
          at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
          at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
          at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
          at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
          at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
          at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
          at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
          at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
          at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
          at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
          at org.apache.activemq.console.Main.main(Main.java:107)
          2011-03-18 15:31:22,689 | WARN | Commit failed: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
          at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.getAutoCommit(SQLServerConnection.java:1618)
          at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:304)
          at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getAutoCommit(PoolingDataSource.java:224)
          at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:162)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277)
          at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485)
          at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
          at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
          at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
          at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
          at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
          at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
          at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
          at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
          at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
          at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
          at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
          at org.apache.activemq.console.Main.main(Main.java:107)
          2011-03-18 15:31:22,707 | WARN | Rollback failed: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
          at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.rollback(SQLServerConnection.java:1655)
          at org.apache.commons.dbcp.DelegatingConnection.rollback(DelegatingConnection.java:328)
          at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.rollback(PoolingDataSource.java:312)
          at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:194)
          at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277)
          at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485)
          at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
          at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
          at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
          at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
          at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
          at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
          at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
          at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
          at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
          at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
          at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
          at org.apache.activemq.console.Main.main(Main.java:107)
          2011-03-18 15:31:22,731 | WARN | Error while closing connection: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
          at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.getAutoCommit(SQLServerConnection.java:1618)
          at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:304)
          at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getAutoCommit(PoolingDataSource.java:224)
          at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:126)
          at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:201)
          at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277)
          at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485)
          at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
          at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
          at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
          at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
          at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
          at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
          at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
          at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
          at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
          at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
          at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
          at org.apache.activemq.console.Main.main(Main.java:107)
          2011-03-18 15:31:22,749 | WARN | Close failed: Already closed. | org.apache.activemq.store.jdbc.TransactionContext | main
          java.sql.SQLException: Already closed.
          at org.apache.commons.dbcp.PoolableConnection.close(PoolableConnection.java:84)
          at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.close(PoolingDataSource.java:181)
          at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:137)
          at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:201)
          at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277)
          at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485)
          at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
          at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
          at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
          at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
          at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
          at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
          at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
          at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
          at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
          at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
          at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
          at org.apache.activemq.console.Main.main(Main.java:107)
          2011-03-18 15:31:22,767 | ERROR | Failed to start ActiveMQ JMS Message Broker. Reason: java.io.IOException: The connection is closed. | org.apache.activemq.broker.BrokerService | main
          java.io.IOException: The connection is closed.
          at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:45)
          at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:133)
          at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:201)
          at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168)
          at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277)
          at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485)
          at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
          at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
          at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
          at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
          at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
          at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
          at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574)
          at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
          at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64)
          at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52)
          at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115)
          at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71)
          at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54)
          at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115)
          at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143)
          at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
          at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.apache.activemq.console.Main.runTaskClass(Main.java:251)
          at org.apache.activemq.console.Main.main(Main.java:107)
          Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed.
          at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304)
          at com.microsoft.sqlserver.jdbc.SQLServerConnection.getAutoCommit(SQLServerConnection.java:1618)
          at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:304)
          at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getAutoCommit(PoolingDataSource.java:224)
          at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:126)
          ... 40 more
          2011-03-18 15:31:22,792 | INFO | ActiveMQ Message Broker (MobTechTest2, null) is shutting down | org.apache.activemq.broker.BrokerService | main
          2011-03-18 15:31:22,794 | INFO | Connector openwire Stopped | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:31:22,795 | INFO | Connector STOMP Stopped | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:31:22,795 | INFO | Connector xmpp Stopped | org.apache.activemq.broker.TransportConnector | main
          2011-03-18 15:31:22,840 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest2/tmp_storage stopped | org.apache.activemq.store.kahadb.plist.PListStore | main
          2011-03-18 15:31:27,215 | INFO | Database lock driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main
          2011-03-18 15:31:27,306 | INFO | ActiveMQ JMS Message Broker (MobTechTest2, null) stopped | org.apache.activemq.broker.BrokerService | main

          Show
          Oleg Kiorsak added a comment - same happens with 5.4.2 a mere restart of the SQL Server service results in both master and Slave shutting down for good... this makes it impossible to have any HA capability and essentially defeats the purpose of a "cluster"... ------ MASTER LOG --------------------------------------------------------------- 2011-03-18 15:30:25,274 | INFO | Refreshing org.apache.activemq.xbean.XBeanBrokerFactory$1@6825c828: startup date [Fri Mar 18 15:30:25 EST 2011] ; root of context hierarchy | org.apache.activemq.xbean.XBeanBrokerFactory$1 | main 2011-03-18 15:30:29,394 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest1/tmp_storage started | org.apache.activemq.store.kahadb.plist.PListStore | main 2011-03-18 15:30:29,526 | INFO | Using Persistence Adapter: JDBCPersistenceAdapter(org.apache.commons.dbcp.BasicDataSource@5ebbfa5c) | org.apache.activemq.broker.BrokerService | main 2011-03-18 15:30:30,036 | INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:2011/jmxrmi | org.apache.activemq.broker.jmx.ManagementContext | JMX connector 2011-03-18 15:30:33,979 | INFO | Database adapter driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactJDBCAdapter | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main 2011-03-18 15:30:35,688 | INFO | Database lock driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main 2011-03-18 15:30:35,689 | INFO | Attempting to acquire the exclusive lock to become the Master broker | org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | main 2011-03-18 15:30:35,741 | INFO | Becoming the master on dataSource: org.apache.commons.dbcp.BasicDataSource@5ebbfa5c | org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | main 2011-03-18 15:30:35,750 | INFO | ActiveMQ 5.4.2-fuse-01-00 JMS Message Broker (MobTechTest1) is starting | org.apache.activemq.broker.BrokerService | main 2011-03-18 15:30:35,751 | INFO | For help or more information please see: http://activemq.apache.org/ | org.apache.activemq.broker.BrokerService | main 2011-03-18 15:30:36,373 | INFO | Listening for connections at: nio://mdtapdot01:10001 | org.apache.activemq.transport.TransportServerThreadSupport | main 2011-03-18 15:30:36,378 | INFO | Connector openwire Started | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:30:36,396 | INFO | Listening for connections at: stomp://mdtapdot01:10002 | org.apache.activemq.transport.TransportServerThreadSupport | main 2011-03-18 15:30:36,396 | INFO | Connector STOMP Started | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:30:36,420 | INFO | Listening for connections at: xmpp://mdtapdot01:10003 | org.apache.activemq.transport.TransportServerThreadSupport | main 2011-03-18 15:30:36,421 | INFO | Connector xmpp Started | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:30:36,427 | INFO | ActiveMQ JMS Message Broker (MobTechTest1, ID:mdtapdot01-35145-1300422635816-0:1) started | org.apache.activemq.broker.BrokerService | main 2011-03-18 15:30:36,656 | INFO | jetty-7.1.6.v20100715 | org.eclipse.jetty.util.log | main 2011-03-18 15:30:37,509 | INFO | ActiveMQ WebConsole initialized. | org.apache.activemq.web.WebConsoleStarter | main 2011-03-18 15:30:37,845 | INFO | Initializing Spring FrameworkServlet 'dispatcher' | /admin | main 2011-03-18 15:30:38,310 | INFO | ActiveMQ Console at http://0.0.0.0:8161/admin | org.eclipse.jetty.util.log | main 2011-03-18 15:30:38,949 | INFO | Initializing Spring root WebApplicationContext | /camel | main 2011-03-18 15:30:39,438 | INFO | OSGi environment not detected. | org.apache.camel.spring.handler.CamelNamespaceHandler | main 2011-03-18 15:30:42,273 | INFO | Apache Camel 2.6.0-fuse-00-00 (CamelContext: camel) is starting | org.apache.camel.spring.SpringCamelContext | main 2011-03-18 15:30:42,274 | INFO | JMX enabled. Using ManagedManagementStrategy. | org.apache.camel.spring.SpringCamelContext | main 2011-03-18 15:30:44,421 | INFO | Found 5 packages with 16 @Converter classes to load | org.apache.camel.impl.converter.AnnotationTypeConverterLoader | main 2011-03-18 15:30:44,505 | INFO | Loaded 151 type converters in 1.867 seconds | org.apache.camel.impl.converter.DefaultTypeConverter | main 2011-03-18 15:30:47,132 | INFO | Connector vm://MobTechTest1 Started | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:30:47,520 | INFO | Route: route1 started and consuming from: Endpoint [activemq://MDT.INBOUND] | org.apache.camel.spring.SpringCamelContext | main 2011-03-18 15:30:47,579 | INFO | Total 1 routes, of which 1 is started. | org.apache.camel.spring.SpringCamelContext | main 2011-03-18 15:30:47,580 | INFO | Apache Camel 2.6.0-fuse-00-00 (CamelContext: camel) started in 5.305 seconds | org.apache.camel.spring.SpringCamelContext | main 2011-03-18 15:30:52,371 | INFO | Camel Console at http://0.0.0.0:8161/camel | org.eclipse.jetty.util.log | main 2011-03-18 15:30:52,475 | INFO | ActiveMQ Web Demos at http://0.0.0.0:8161/demo | org.eclipse.jetty.util.log | main 2011-03-18 15:30:52,585 | INFO | RESTful file access application at http://0.0.0.0:8161/fileserver | org.eclipse.jetty.util.log | main 2011-03-18 15:30:52,753 | INFO | FUSE Web Console at http://0.0.0.0:8161/console | org.eclipse.jetty.util.log | main 2011-03-18 15:30:52,781 | INFO | Started SelectChannelConnector@0.0.0.0:8161 | org.eclipse.jetty.util.log | main 2011-03-18 15:31:35,756 | ERROR | Failed to update database lock: com.microsoft.sqlserver.jdbc.SQLServerException: Broken pipe | org.apache.activemq.store.jdbc.DefaultDatabaseLocker | ActiveMQ Cleanup Timer com.microsoft.sqlserver.jdbc.SQLServerException: Broken pipe at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1368) at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1355) at com.microsoft.sqlserver.jdbc.TDSChannel.write(IOBuffer.java:1548) at com.microsoft.sqlserver.jdbc.TDSWriter.flush(IOBuffer.java:2368) at com.microsoft.sqlserver.jdbc.TDSWriter.writePacket(IOBuffer.java:2270) at com.microsoft.sqlserver.jdbc.TDSWriter.endMessage(IOBuffer.java:1877) at com.microsoft.sqlserver.jdbc.TDSCommand.startResponse(IOBuffer.java:4403) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:386) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:338) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4026) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1416) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:185) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:160) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate(SQLServerPreparedStatement.java:306) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102) at org.apache.activemq.store.jdbc.DefaultDatabaseLocker.keepAlive(DefaultDatabaseLocker.java:161) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.databaseLockKeepAlive(JDBCPersistenceAdapter.java:604) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter$3.run(JDBCPersistenceAdapter.java:290) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205) 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:619) 2011-03-18 15:31:35,760 | INFO | No longer able to keep the exclusive lock so giving up being a master | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | ActiveMQ Cleanup Timer 2011-03-18 15:31:35,760 | INFO | ActiveMQ Message Broker (MobTechTest1, ID:mdtapdot01-35145-1300422635816-0:1) is shutting down | org.apache.activemq.broker.BrokerService | ActiveMQ Cleanup Timer 2011-03-18 15:31:36,468 | INFO | Connector openwire Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer 2011-03-18 15:31:38,092 | INFO | Connector STOMP Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer 2011-03-18 15:31:38,476 | INFO | Connector xmpp Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer 2011-03-18 15:31:38,488 | INFO | Connector vm://MobTechTest1 Stopped | org.apache.activemq.broker.TransportConnector | ActiveMQ Cleanup Timer 2011-03-18 15:31:38,502 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest1/tmp_storage stopped | org.apache.activemq.store.kahadb.plist.PListStore | ActiveMQ Cleanup Timer 2011-03-18 15:31:38,536 | INFO | ActiveMQ JMS Message Broker (MobTechTest1, ID:mdtapdot01-35145-1300422635816-0:1) stopped | org.apache.activemq.broker.BrokerService | ActiveMQ Cleanup Timer ------------SLAVE LOG ------------------------ 2011-03-18 15:30:31,551 | INFO | Refreshing org.apache.activemq.xbean.XBeanBrokerFactory$1@53f64158: startup date [Fri Mar 18 15:30:31 EST 2011] ; root of context hierarchy | org.apache.activemq.xbean.XBeanBrokerFactory$1 | main 2011-03-18 15:30:39,114 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest2/tmp_storage started | org.apache.activemq.store.kahadb.plist.PListStore | main 2011-03-18 15:30:39,799 | INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:2011/jmxrmi | org.apache.activemq.broker.jmx.ManagementContext | JMX connector 2011-03-18 15:30:39,868 | INFO | Using Persistence Adapter: JDBCPersistenceAdapter(org.apache.commons.dbcp.BasicDataSource@3d015a9e) | org.apache.activemq.broker.BrokerService | main 2011-03-18 15:30:44,694 | INFO | Database adapter driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactJDBCAdapter | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main 2011-03-18 15:31:22,664 | WARN | Cannot create tables due to: com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main 2011-03-18 15:31:22,670 | WARN | Failure Details: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304) at com.microsoft.sqlserver.jdbc.SQLServerConnection.commit(SQLServerConnection.java:1641) at org.apache.commons.dbcp.DelegatingConnection.commit(DelegatingConnection.java:301) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.commit(PoolingDataSource.java:200) at org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter.doCreateTables(DefaultJDBCAdapter.java:115) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:271) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485) at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52) at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54) at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115) at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.activemq.console.Main.runTaskClass(Main.java:251) at org.apache.activemq.console.Main.main(Main.java:107) 2011-03-18 15:31:22,689 | WARN | Commit failed: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304) at com.microsoft.sqlserver.jdbc.SQLServerConnection.getAutoCommit(SQLServerConnection.java:1618) at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:304) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getAutoCommit(PoolingDataSource.java:224) at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:162) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485) at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52) at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54) at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115) at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.activemq.console.Main.runTaskClass(Main.java:251) at org.apache.activemq.console.Main.main(Main.java:107) 2011-03-18 15:31:22,707 | WARN | Rollback failed: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304) at com.microsoft.sqlserver.jdbc.SQLServerConnection.rollback(SQLServerConnection.java:1655) at org.apache.commons.dbcp.DelegatingConnection.rollback(DelegatingConnection.java:328) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.rollback(PoolingDataSource.java:312) at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:194) at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485) at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52) at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54) at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115) at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.activemq.console.Main.runTaskClass(Main.java:251) at org.apache.activemq.console.Main.main(Main.java:107) 2011-03-18 15:31:22,731 | WARN | Error while closing connection: The connection is closed. | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304) at com.microsoft.sqlserver.jdbc.SQLServerConnection.getAutoCommit(SQLServerConnection.java:1618) at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:304) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getAutoCommit(PoolingDataSource.java:224) at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:126) at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:201) at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485) at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52) at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54) at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115) at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.activemq.console.Main.runTaskClass(Main.java:251) at org.apache.activemq.console.Main.main(Main.java:107) 2011-03-18 15:31:22,749 | WARN | Close failed: Already closed. | org.apache.activemq.store.jdbc.TransactionContext | main java.sql.SQLException: Already closed. at org.apache.commons.dbcp.PoolableConnection.close(PoolableConnection.java:84) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.close(PoolingDataSource.java:181) at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:137) at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:201) at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485) at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52) at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54) at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115) at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.activemq.console.Main.runTaskClass(Main.java:251) at org.apache.activemq.console.Main.main(Main.java:107) 2011-03-18 15:31:22,767 | ERROR | Failed to start ActiveMQ JMS Message Broker. Reason: java.io.IOException: The connection is closed. | org.apache.activemq.broker.BrokerService | main java.io.IOException: The connection is closed. at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:45) at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:133) at org.apache.activemq.store.jdbc.TransactionContext.rollback(TransactionContext.java:201) at org.apache.activemq.store.jdbc.TransactionContext.commit(TransactionContext.java:168) at org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:277) at org.apache.activemq.broker.BrokerService.start(BrokerService.java:485) at org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1536) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1409) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:574) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:64) at org.apache.xbean.spring.context.ResourceXmlApplicationContext.<init>(ResourceXmlApplicationContext.java:52) at org.apache.activemq.xbean.XBeanBrokerFactory$1.<init>(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createApplicationContext(XBeanBrokerFactory.java:115) at org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:71) at org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:54) at org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:115) at org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:74) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:143) at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57) at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:85) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.activemq.console.Main.runTaskClass(Main.java:251) at org.apache.activemq.console.Main.main(Main.java:107) Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The connection is closed. at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) at com.microsoft.sqlserver.jdbc.SQLServerConnection.checkClosed(SQLServerConnection.java:304) at com.microsoft.sqlserver.jdbc.SQLServerConnection.getAutoCommit(SQLServerConnection.java:1618) at org.apache.commons.dbcp.DelegatingConnection.getAutoCommit(DelegatingConnection.java:304) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.getAutoCommit(PoolingDataSource.java:224) at org.apache.activemq.store.jdbc.TransactionContext.close(TransactionContext.java:126) ... 40 more 2011-03-18 15:31:22,792 | INFO | ActiveMQ Message Broker (MobTechTest2, null) is shutting down | org.apache.activemq.broker.BrokerService | main 2011-03-18 15:31:22,794 | INFO | Connector openwire Stopped | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:31:22,795 | INFO | Connector STOMP Stopped | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:31:22,795 | INFO | Connector xmpp Stopped | org.apache.activemq.broker.TransportConnector | main 2011-03-18 15:31:22,840 | INFO | PListStore:/usr/local/tollmobile/activemq54data/data/MobTechTest2/tmp_storage stopped | org.apache.activemq.store.kahadb.plist.PListStore | main 2011-03-18 15:31:27,215 | INFO | Database lock driver override recognized for : [microsoft_sql_server_jdbc_driver_2_0] - adapter: class org.apache.activemq.store.jdbc.adapter.TransactDatabaseLocker | org.apache.activemq.store.jdbc.JDBCPersistenceAdapter | main 2011-03-18 15:31:27,306 | INFO | ActiveMQ JMS Message Broker (MobTechTest2, null) stopped | org.apache.activemq.broker.BrokerService | main
          Hide
          Gary Tully added a comment -

          The fix for https://issues.apache.org/jira/browse/AMQ-1780 will help in the case of a single broker.
          The master/slave case and database locker needs a little more work.

          DefaultDatabaseLocker failure may need to delegate to the IOException handler or a JDBC specific variant and reinitialize a DefaultDatabaseLocker before resuming transports such that it can become a master or slave as appropriate. There needs to be a bunch of additional tests to validate the usecases. Also the migration from master to slave may need some work w.r.t to jmx attributes

          @Jan re a patch, contributions are most welcome you are on the right road.

          Show
          Gary Tully added a comment - The fix for https://issues.apache.org/jira/browse/AMQ-1780 will help in the case of a single broker. The master/slave case and database locker needs a little more work. DefaultDatabaseLocker failure may need to delegate to the IOException handler or a JDBC specific variant and reinitialize a DefaultDatabaseLocker before resuming transports such that it can become a master or slave as appropriate. There needs to be a bunch of additional tests to validate the usecases. Also the migration from master to slave may need some work w.r.t to jmx attributes @Jan re a patch, contributions are most welcome you are on the right road.
          Hide
          Jan Lievens added a comment -

          Isn't this fixed now with the new IOExceptionHandler in version 5.5? Haven't tested it yet but will any time soon.

          Show
          Jan Lievens added a comment - Isn't this fixed now with the new IOExceptionHandler in version 5.5? Haven't tested it yet but will any time soon.
          Hide
          Timothy Bish added a comment -

          This appears to be a duplicate of AMQ-1780 which has since been resolved.

          Show
          Timothy Bish added a comment - This appears to be a duplicate of AMQ-1780 which has since been resolved.

            People

            • Assignee:
              Gary Tully
              Reporter:
              hiskill
            • Votes:
              12 Vote for this issue
              Watchers:
              11 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development