Hi,
I observed following sql exception[1] when starts MB in h2 in-memory mode.
Following are the steps followed.
1. Start MB node in in-memory mode.
2. gracefully shutdown the server.
Following exception[1] will appear. Even this exception appears server
shuts down without hanging.
Did anyone face this before?
[1]
WARN {org.wso2.andes.store.rdbms.RDBMSAndesContextStoreImpl} - Rollback
failed on removing node information node id: NODElocalhost/127.0.0.1
org.h2.jdbc.JdbcSQLException: Database is already closed (to disable
automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db
URL) [90121-140]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
at org.h2.message.DbException.get(DbException.java:167)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.message.DbException.get(DbException.java:133)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1348)
at org.h2.jdbc.JdbcConnection.checkClosedForWrite(JdbcConnection.java:1333)
at org.h2.jdbc.JdbcConnection.rollback(JdbcConnection.java:435)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.wso2.carbon.ndatasource.rdbms.ConnectionRollbackOnReturnInterceptor.invoke(ConnectionRollbackOnReturnInterceptor.java:51)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:71)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:153)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:41)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:80)
at com.sun.proxy.$Proxy15.rollback(Unknown Source)
at
org.wso2.andes.store.rdbms.RDBMSAndesContextStoreImpl.rollback(RDBMSAndesContextStoreImpl.java:947)
at
org.wso2.andes.store.rdbms.RDBMSAndesContextStoreImpl.removeNodeData(RDBMSAndesContextStoreImpl.java:323)
at
org.wso2.andes.store.FailureObservingAndesContextStore.removeNodeData(FailureObservingAndesContextStore.java:168)
at
org.wso2.andes.server.cluster.ClusterManager.clearAllPersistedStatesOfDisappearedNode(ClusterManager.java:270)
at
org.wso2.andes.server.cluster.ClusterManager.shutDownMyNode(ClusterManager.java:170)
at
org.wso2.andes.kernel.disruptor.inbound.InboundKernelOpsEvent.gracefulShutdown(InboundKernelOpsEvent.java:235)
at org.wso2.andes.kernel.Andes.shutDown(Andes.java:263)
at
org.wso2.andes.kernel.AndesKernelBoot.shutDownAndesKernel(AndesKernelBoot.java:311)
at
org.wso2.carbon.andes.internal.QpidServiceComponent$1.startingShutdown(QpidServiceComponent.java:170)
at
org.wso2.carbon.core.ServerManagement.waitForServerTaskCompletion(ServerManagement.java:113)
at
org.wso2.carbon.core.ServerManagement.startMaintenanceForShutDown(ServerManagement.java:97)
at
org.wso2.carbon.core.init.CarbonServerManager.shutdownGracefully(CarbonServerManager.java:878)
at
org.wso2.carbon.core.init.CarbonServerManager$4.run(CarbonServerManager.java:901)
[2015-07-13 17:54:03,604] ERROR
{org.wso2.carbon.andes.internal.QpidServiceComponent} - Error while
shutting down Andes kernel.
org.wso2.andes.kernel.AndesException: Error occurred while removing node
information node id: NODElocalhost/127.0.0.1
at
org.wso2.andes.store.rdbms.RDBMSStoreUtils.convertSQLException(RDBMSStoreUtils.java:117)
at
org.wso2.andes.store.rdbms.RDBMSAndesContextStoreImpl.removeNodeData(RDBMSAndesContextStoreImpl.java:324)
at
org.wso2.andes.store.FailureObservingAndesContextStore.removeNodeData(FailureObservingAndesContextStore.java:168)
at
org.wso2.andes.server.cluster.ClusterManager.clearAllPersistedStatesOfDisappearedNode(ClusterManager.java:270)
at
org.wso2.andes.server.cluster.ClusterManager.shutDownMyNode(ClusterManager.java:170)
at
org.wso2.andes.kernel.disruptor.inbound.InboundKernelOpsEvent.gracefulShutdown(InboundKernelOpsEvent.java:235)
at org.wso2.andes.kernel.Andes.shutDown(Andes.java:263)
at
org.wso2.andes.kernel.AndesKernelBoot.shutDownAndesKernel(AndesKernelBoot.java:311)
at
org.wso2.carbon.andes.internal.QpidServiceComponent$1.startingShutdown(QpidServiceComponent.java:170)
at
org.wso2.carbon.core.ServerManagement.waitForServerTaskCompletion(ServerManagement.java:113)
at
org.wso2.carbon.core.ServerManagement.startMaintenanceForShutDown(ServerManagement.java:97)
at
org.wso2.carbon.core.init.CarbonServerManager.shutdownGracefully(CarbonServerManager.java:878)
at
org.wso2.carbon.core.init.CarbonServerManager$4.run(CarbonServerManager.java:901)
Caused by: org.h2.jdbc.JdbcSQLException: Database is already closed (to
disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to
the db URL) [90121-140]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
at org.h2.message.DbException.get(DbException.java:167)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.message.DbException.get(DbException.java:133)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1348)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1323)
at org.h2.jdbc.JdbcConnection.setAutoCommit(JdbcConnection.java:364)
at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.wso2.carbon.ndatasource.rdbms.ConnectionRollbackOnReturnInterceptor.invoke(ConnectionRollbackOnReturnInterceptor.java:51)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:71)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:153)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:41)
at
org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109)
at
org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:80)
at com.sun.proxy.$Proxy15.setAutoCommit(Unknown Source)
at
org.wso2.andes.store.rdbms.RDBMSAndesContextStoreImpl.removeNodeData(RDBMSAndesContextStoreImpl.java:314)
... 11 more
Regards,
--
Pumudu Ruhunage
Associate Software Engineer | WSO2 Inc
M: +94 779 664493 | http://wso2.com
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev