Re: [Dev] [MB] H2 in-memory exception when shutting down server
Hi Akalanka, it already have ";DB_CLOSE_ON_EXIT=FALSE" in db url. have to check what was causing the issue. opened a jira[1] to track progress. [1] https://wso2.org/jira/browse/MB-1158 Thanks, Pumudu On Mon, Jul 13, 2015 at 7:08 PM, Akalanka Pagoda Arachchi < darsha...@wso2.com> wrote: > Hi Pumudu, > > This occurs when MB tries to access the H2 database even after the > database is closed. If the database url does have the property mentioned in > the error (";DB_CLOSE_ON_EXIT=FALSE") then we have the check the flow and > see if MB somehow tries to access the database after database close is > called. > > Thanks, > Akalanka. > > On Mon, Jul 13, 2015 at 9:01 AM, Pumudu Ruhunage wrote: > >> 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 >>
Re: [Dev] [MB] H2 in-memory exception when shutting down server
Hi Pumudu, This occurs when MB tries to access the H2 database even after the database is closed. If the database url does have the property mentioned in the error (";DB_CLOSE_ON_EXIT=FALSE") then we have the check the flow and see if MB somehow tries to access the database after database close is called. Thanks, Akalanka. On Mon, Jul 13, 2015 at 9:01 AM, Pumudu Ruhunage wrote: > 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.jav
[Dev] [MB] H2 in-memory exception when shutting down server
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.start