ERROR 08000: Connection closed by unknown interrupt

View: New views
5 Messages — Rating Filter:   Alert me  

ERROR 08000: Connection closed by unknown interrupt

by Thierry Roussel - Sun Microsystems :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

We are using Derby in our product and we got the following exception
(see full trace in attached log)

ERROR 08000: Connection closed by unknown interrupt.
    at
org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
    at org.apache.derby.iapi.error.StandardException.interrupt(Unknown
Source)
    at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
    at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
    at org.apache.derby.impl.store.raw.log.FileLogger.flush(Unknown Source)
    at org.apache.derby.impl.store.raw.xact.Xact.prepareCommit(Unknown
Source)
    at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
    at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)

Can  somebody give me please some hints about what it may mean ?

Thanks
Thierry Roussel.

--
Thierry Roussel
Sun Microsystems              email: thierry.roussel@...
180 Avenue de L'Europe        tel: +33 476 18 8064 (X 38064)
ZIRST Montbonnot
38334 Saint Ismier Cedex      fax: +33 476 18 8080






----------------------------------------------------------------
2008-03-13 18:25:47.404 GMT:
 Booting Derby version The Apache Software Foundation - Apache Derby - 10.2.2.0 - (485682): instance c013800d-0118-a964-040a-00000453e9cf
on database directory /var/opt/SUNWxvmoc/lib/private/proxydb  

Database Class Loader started - derby.database.classpath=''
2008-03-13 19:40:00.914 GMT Thread[CacheManagerTaskExecutor-2,5,main] (XID = 7423), (SESSIONID = 52), (DATABASE = /var/opt/SUNWxvmoc/lib/private/proxydb), (DRDAID = null), Cleanup action starting
2008-03-13 19:40:00.915 GMT Thread[CacheManagerTaskExecutor-2,5,main] (XID = 7423), (SESSIONID = 52), (DATABASE = /var/opt/SUNWxvmoc/lib/private/proxydb), (DRDAID = null), Failed Statement is: null
ERROR 08000: Connection closed by unknown interrupt.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.iapi.error.StandardException.interrupt(Unknown Source)
        at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
        at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
        at org.apache.derby.impl.store.raw.log.FileLogger.flush(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.prepareCommit(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
        at org.apache.derby.impl.store.access.RAMTransaction.commit(Unknown Source)
        at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doCommit(Unknown Source)
        at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userCommit(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.commit(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.commit(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(C3P0PooledConnection.java:712)
        at com.mchange.v2.c3p0.impl.$Proxy2.commit(Unknown Source)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:63)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
============= begin nested exception, level (1) ===========
java.lang.InterruptedException
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:485)
        at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
        at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
        at org.apache.derby.impl.store.raw.log.FileLogger.flush(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.prepareCommit(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
        at org.apache.derby.impl.store.access.RAMTransaction.commit(Unknown Source)
        at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doCommit(Unknown Source)
        at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userCommit(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.commit(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.commit(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(C3P0PooledConnection.java:712)
        at com.mchange.v2.c3p0.impl.$Proxy2.commit(Unknown Source)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:63)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
============= end nested exception, level (1) ===========

------------  BEGIN SHUTDOWN ERROR STACK -------------

ERROR XSTB0: An exception was thrown during transaction abort.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.preComplete(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.XactContext.cleanupOnError(Unknown Source)
        at org.apache.derby.iapi.services.context.ContextManager.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.commit(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(C3P0PooledConnection.java:712)
        at com.mchange.v2.c3p0.impl.$Proxy2.commit(Unknown Source)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:63)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)

2008-03-13 19:40:00.980 GMT Thread[CacheManagerTaskExecutor-18,5,main] (XID = 7424), (SESSIONID = 60), (DATABASE = /var/opt/SUNWxvmoc/lib/private/proxydb), (DRDAID = null), Cleanup action starting
2008-03-13 19:40:00.980 GMT Thread[CacheManagerTaskExecutor-18,5,main] (XID = 7424), (SESSIONID = 60), (DATABASE = /var/opt/SUNWxvmoc/lib/private/proxydb), (DRDAID = null), Failed Statement is: insert into HD_CACHED_MBEAN (connectionid, objectname, classname, attribute, type, value, lastrefresh, throwable, object_id) values (?, ?, ?, ?, ?, ?, ?, ?, ?)
ERROR XSLA1: Log Record has been sent to the stream, but it cannot be applied to the store (Object null).  This may cause recovery problems also.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.store.raw.log.FileLogger.logAndDo(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.logAndDo(Unknown Source)
        at org.apache.derby.impl.store.raw.data.LoggableActions.doAction(Unknown Source)
        at org.apache.derby.impl.store.raw.data.LoggableActions.actionInsert(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insertNoOverflow(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insertAtSlot(Unknown Source)
        at org.apache.derby.impl.store.raw.data.StoredPage.insertAtSlot(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insert(Unknown Source)
        at org.apache.derby.impl.store.access.heap.HeapController.doInsert(Unknown Source)
        at org.apache.derby.impl.store.access.heap.HeapController.insertAndFetchLocation(Unknown Source)
        at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
        at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown Source)
        at com.mchange.v2.sql.filter.FilterPreparedStatement.executeUpdate(FilterPreparedStatement.java:71)
        at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
        at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:464)
        at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:438)
        at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37)
        at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2438)
        at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2391)
        at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
============= begin nested exception, level (1) ===========
ERROR XSLAA: The store has been marked for shutdown by an earlier exception.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.store.raw.log.LogToFile.appendLogRecord(Unknown Source)
        at org.apache.derby.impl.store.raw.log.FileLogger.logAndDo(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.logAndDo(Unknown Source)
        at org.apache.derby.impl.store.raw.data.LoggableActions.doAction(Unknown Source)
        at org.apache.derby.impl.store.raw.data.LoggableActions.actionInsert(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insertNoOverflow(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insertAtSlot(Unknown Source)
        at org.apache.derby.impl.store.raw.data.StoredPage.insertAtSlot(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insert(Unknown Source)
        at org.apache.derby.impl.store.access.heap.HeapController.doInsert(Unknown Source)
        at org.apache.derby.impl.store.access.heap.HeapController.insertAndFetchLocation(Unknown Source)
        at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
        at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown Source)
        at com.mchange.v2.sql.filter.FilterPreparedStatement.executeUpdate(FilterPreparedStatement.java:71)
        at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
        at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:464)
        at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:438)
        at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37)
        at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2438)
        at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2391)
        at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
============= end nested exception, level (1) ===========
============= begin nested exception, level (2) ===========
ERROR XSTB0: An exception was thrown during transaction abort.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.preComplete(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.XactContext.cleanupOnError(Unknown Source)
        at org.apache.derby.iapi.services.context.ContextManager.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.commit(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(C3P0PooledConnection.java:712)
        at com.mchange.v2.c3p0.impl.$Proxy2.commit(Unknown Source)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:63)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
============= end nested exception, level (2) ===========

------------  END SHUTDOWN ERROR STACK -------------

2008-03-13 19:40:01.021 GMT Thread[xvm-t2000-1.5.1.192.168.112.1,5,main] (XID = 7425), (SESSIONID = 53), (DATABASE = /var/opt/SUNWxvmoc/lib/private/proxydb), (DRDAID = null), Cleanup action starting
2008-03-13 19:40:01.021 GMT Thread[xvm-t2000-1.5.1.192.168.112.1,5,main] (XID = 7425), (SESSIONID = 53), (DATABASE = /var/opt/SUNWxvmoc/lib/private/proxydb), (DRDAID = null), Failed Statement is: insert into HD_RESOURCE (name, service_tag_urn, mbean_interface, class_name, object_id) values (?, ?, ?, 'com.sun.hss.domain.SkeletalServerContainerMXBean', ?)
ERROR XSLA1: Log Record has been sent to the stream, but it cannot be applied to the store (Object null).  This may cause recovery problems also.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.store.raw.log.FileLogger.logAndDo(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.logAndDo(Unknown Source)
        at org.apache.derby.impl.store.raw.data.LoggableActions.doAction(Unknown Source)
        at org.apache.derby.impl.store.raw.data.LoggableActions.actionInsert(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insertNoOverflow(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insertAtSlot(Unknown Source)
        at org.apache.derby.impl.store.raw.data.StoredPage.insertAtSlot(Unknown Source)
        at org.apache.derby.impl.store.raw.data.BasePage.insert(Unknown Source)
        at org.apache.derby.impl.store.access.heap.HeapController.doInsert(Unknown Source)
        at org.apache.derby.impl.store.access.heap.HeapController.insertAndFetchLocation(Unknown Source)
        at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
        at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown Source)
        at com.mchange.v2.sql.filter.FilterPreparedStatement.executeUpdate(FilterPreparedStatement.java:71)
        at net.sf.hibernate.impl.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:22)
        at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:464)
        at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:438)
        at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37)
        at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2438)
        at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2391)
        at net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.store(HibernatePersistenceToolkit.java:351)
        at com.sun.hss.domain.PersistenceManager.addMBean(PersistenceManager.java:268)
        at com.sun.hss.domain.PersistenceManager.registerMBean(PersistenceManager.java:356)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.registerMBean(ForwardingMBeanServerInterceptor.java:143)
        at com.sun.jdmk.JdmkMBeanServerImpl.registerMBean(JdmkMBeanServerImpl.java:474)
        at com.sun.hss.domain.AbstractResourceDriverMXBean.discoverResourceObjectNames(AbstractResourceDriverMXBean.java:166)
        at sun.reflect.GeneratedMethodAccessor144.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:167)
        at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:96)
        at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:33)
        at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
        at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
        at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
        at javax.management.StandardMBean.invoke(StandardMBean.java:391)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
        at com.sun.jdmk.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:203)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.invoke(ForwardingMBeanServerInterceptor.java:209)
        at com.sun.hss.domain.ConcurrentMBeanServerInterceptor.invoke(ConcurrentMBeanServerInterceptor.java:930)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.invoke(ForwardingMBeanServerInterceptor.java:209)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.invoke(ForwardingMBeanServerInterceptor.java:209)
        at com.sun.jdmk.JdmkMBeanServerImpl.invoke(JdmkMBeanServerImpl.java:764)
        at com.sun.jmx.mbeanserver.MXBeanProxy$InvokeHandler.invoke(MXBeanProxy.java:134)
        at com.sun.jmx.mbeanserver.MXBeanProxy.invoke(MXBeanProxy.java:148)
        at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:248)
        at com.sun.hss.domain.MXBeanProxyFactory.invoke(MXBeanProxyFactory.java:263)
        at $Proxy23.discoverResourceObjectNames(Unknown Source)
        at com.sun.hss.domain.internal.DiscoveryServiceMXBeanImpl.discover(DiscoveryServiceMXBeanImpl.java:369)
        at com.sun.hss.domain.internal.DiscoveryServiceMXBeanImpl.discover(DiscoveryServiceMXBeanImpl.java:259)
        at com.sun.hss.domain.internal.DiscoveryServiceMXBeanImpl.discover(DiscoveryServiceMXBeanImpl.java:188)
        at sun.reflect.GeneratedMethodAccessor168.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.jmx.mbeanserver.ConvertingMethod.invokeWithOpenReturn(ConvertingMethod.java:167)
        at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:96)
        at com.sun.jmx.mbeanserver.MXBeanIntrospector.invokeM2(MXBeanIntrospector.java:33)
        at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
        at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
        at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
        at javax.management.StandardMBean.invoke(StandardMBean.java:391)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
        at com.sun.jdmk.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:203)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.invoke(ForwardingMBeanServerInterceptor.java:209)
        at com.sun.hss.domain.ConcurrentMBeanServerInterceptor.invoke(ConcurrentMBeanServerInterceptor.java:930)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.invoke(ForwardingMBeanServerInterceptor.java:209)
        at com.sun.hss.domain.ForwardingMBeanServerInterceptor.invoke(ForwardingMBeanServerInterceptor.java:209)
        at com.sun.jdmk.JdmkMBeanServerImpl.invoke(JdmkMBeanServerImpl.java:764)
        at com.sun.jmx.mbeanserver.MXBeanProxy$InvokeHandler.invoke(MXBeanProxy.java:134)
        at com.sun.jmx.mbeanserver.MXBeanProxy.invoke(MXBeanProxy.java:148)
        at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:248)
        at com.sun.hss.domain.MXBeanProxyFactory.invoke(MXBeanProxyFactory.java:263)
        at $Proxy21.discover(Unknown Source)
        at com.sun.hss.services.discovery.proxy.DriverDiscoveryTask.discover(DriverDiscoveryTask.java:609)
        at com.sun.hss.services.discovery.proxy.DriverDiscoveryTask.doDefaultDiscovery(DriverDiscoveryTask.java:391)
        at com.sun.hss.services.discovery.proxy.DriverDiscoveryTask.run(DriverDiscoveryTask.java:339)
        at sun.reflect.GeneratedMethodAccessor283.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.scn.jobmanager.impl.TaskDequeueThread.startTask(TaskDequby.impl.store.raw.xact.Xact.preComplete(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.XactContext.cleanupOnError(Unknown Source)
        at org.apache.derby.iapi.services.context.ContextManager.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.commit(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(C3P0PooledConnection.java:712)
        at com.mchange.v2.c3p0.impl.$Proxy2.commit(Unknown Source)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:63)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
============= end nested exception, level (2) ===========
2008-03-13 19:40:01.182 GMT Thread[CacheManagerTaskExecutor-2,5,main] Less severe exception raised during cleanup (ignored) An attempt was made to close a transaction that was still active. The transaction has been aborted.
ERROR 40XT4: An attempt was made to close a transaction that was still active. The transaction has been aborted.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.Xact.close(Unknown Source)
        at org.apache.derby.impl.store.raw.xact.XactContext.cleanupOnError(Unknown Source)
        at org.apache.derby.iapi.services.context.ContextManager.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.cleanupOnError(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.commit(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.mchange.v2.c3p0.impl.C3P0PooledConnection$ProxyConnectionInvocationHandler.invoke(C3P0PooledConnection.java:712)
        at com.mchange.v2.c3p0.impl.$Proxy2.commit(Unknown Source)
        at net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:63)
        at com.sun.hss.domain.internal.HibernatePersistenceToolkit.storeCachedAttribute(HibernatePersistenceToolkit.java:580)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.storeCachedAttribute(ServerCachedMBeanProxy.java:982)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.rereadAttribute(ServerCachedMBeanProxy.java:359)
        at com.sun.cacao.cached.impl.server.ServerCachedMBeanProxy.refreshCachedAttributes(ServerCachedMBeanProxy.java:295)
        at com.sun.cacao.cached.impl.server.RefreshAttributeTask.execute(RefreshAttributeTask.java:60)
        at com.sun.cacao.cached.impl.server.TaskPool$TaskExecutor.run(TaskPool.java:334)
Cleanup action completed

2008-03-13 19:40:01.153 GMT:
Shutting down instance c013800d-0118-a964-040a-00000453e9cf
----------------------------------------------------------------
Cleanup action completed
----------------------------------------------------------------
2008-03-13 19:40:02.379 GMT:
 Booting Derby version The Apache Software Foundation - Apache Derby - 10.2.2.0 - (485682): instance e26d4047-0118-a964-040a-00000453e9cf
on database directory /var/opt/SUNWxvmoc/lib/private/proxydb  

Database Class Loader started - derby.database.classpath=''

Re: ERROR 08000: Connection closed by unknown interrupt

by oysteing :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thierry Roussel - Sun Microsystems wrote:

> Hi,
>
> We are using Derby in our product and we got the following exception
> (see full trace in attached log)
>
> ERROR 08000: Connection closed by unknown interrupt.
>    at org.apache.derby.iapi.error.StandardException.newException(Unknown
> Source)
>    at org.apache.derby.iapi.error.StandardException.interrupt(Unknown
> Source)
>    at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
>    at org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
>    at org.apache.derby.impl.store.raw.log.FileLogger.flush(Unknown Source)
>    at org.apache.derby.impl.store.raw.xact.Xact.prepareCommit(Unknown
> Source)
>    at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
>    at org.apache.derby.impl.store.raw.xact.Xact.commit(Unknown Source)
>
> Can  somebody give me please some hints about what it may mean ?
>

This means that the thread accessing the database have been interrupted.
  Do you have code that may interrupt running threads?

In this particular case it happened while the thread was flushing log to
disk during commit.  From the log it seems that the db is not able to
recover from this; it is not able to rollback the transaction, and the
database is shutdown since it will be left in an inconsistent state.

I think this indicates a bug in Derby.  For robustness, it needs to
handle that threads are interrupted.


--
Øystein


Re: ERROR 08000: Connection closed by unknown interrupt

by Kathey Marsden :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Oystein Grovlen wrote:

>
> This means that the thread accessing the database have been
> interrupted.  Do you have code that may interrupt running threads?
>
> In this particular case it happened while the thread was flushing log
> to disk during commit.  From the log it seems that the db is not able
> to recover from this; it is not able to rollback the transaction, and
> the database is shutdown since it will be left in an inconsistent state.
>
> I think this indicates a bug in Derby.  For robustness, it needs to
> handle that threads are interrupted.
>
>
Is this the same as DERBY-151?

Kathey



Re: ERROR 08000: Connection closed by unknown interrupt

by francois.orsini :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Fri, Mar 14, 2008 at 3:09 PM, Kathey Marsden <kmarsdenderby@...> wrote:
Oystein Grovlen wrote:
>
> This means that the thread accessing the database have been
> interrupted.  Do you have code that may interrupt running threads?
>
> In this particular case it happened while the thread was flushing log
> to disk during commit.  From the log it seems that the db is not able
> to recover from this; it is not able to rollback the transaction, and
> the database is shutdown since it will be left in an inconsistent state.
>
> I think this indicates a bug in Derby.  For robustness, it needs to
> handle that threads are interrupted.
>
>
Is this the same as DERBY-151?

Yes it sounds like it. There is a workaround with clearing the interrupt flag on the thread but it may not always be possible to apply this workaround if some framework is causing this and not the application logic written by some user. In any case, Derby should not left a database in some inconsistent state if an interrupt is issued outside of Derby upon writing to the log for instance.
 


Kathey




Re: ERROR 08000: Connection closed by unknown interrupt

by Mayuresh Nirhali :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Moving to derby-dev.

I agree with Francois here.

In a typical web based application environment where derby is supposed
to work well with various frameworks (connection pooling/ORM etc), this
issue is going to be very critical. The system will break due to these
external interrupts.

I found the following thread on the derby list, where the same problem
has been reported before.
http://mail-archives.apache.org/mod_mbox/db-derby-user/200508.mbox/%3C42EFC11D.8000807@...%3E

Another interesting thread about Java Concurrency,
http://www.nabble.com/safe-interruption-td12605694.html

Derby-2564 is also related.

My intention here is not only to make everybody aware of this issue of
such complexity and importance, but also to start discussion on how we
can deal with this. In my opinion, it is going to be difficult to
identify all the cases where such interrupts will pass through the
cracks in derby system. But, I believe, we have 2 cases (derby151 and
LogToFile.flush) surfaced now. Also, It is going to be tricky to
identify how to deal with such InterruptedExceptions, which needs to
detailed discussion.

ideas/comments ?

P.S. I am not going to miss the discussion till monday when I get back
on my email.

Mayuresh



Francois Orsini wrote:

>
>
>     Is this the same as DERBY-151?
>
>
> Yes it sounds like it. There is a workaround with clearing the
> interrupt flag on the thread but it may not always be possible to
> apply this workaround if some framework is causing this and not the
> application logic written by some user. In any case, Derby should not
> left a database in some inconsistent state if an interrupt is issued
> outside of Derby upon writing to the log for instance.
>  
>
>
>
>     Kathey
>
>
>