Re: [Dev] [MB] H2 in-memory exception when shutting down server

2015-07-13 Thread Pumudu Ruhunage
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

2015-07-13 Thread Akalanka Pagoda Arachchi
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

2015-07-13 Thread Pumudu Ruhunage
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