It's all about the answers!

Ask a question

Error: Failed to start Derby database


Ahmed Mansour (1111) | asked Oct 20 '11, 10:58 a.m.
Appreciate your help with this problem..

It appears that there's a problem with Derby Database. The Jazz server was working correctly with Derby database before running into the following issue.

Any suggestions on how to fix this problem?

    ================================
    Failed to start database 'conf/ccm/derby/repositoryDB', see the next exception for details.

    com.ibm.team.repository.common.TeamRepositoryException: Failed to start database 'conf/ccm/derby/repositoryDB', see the next exception for details.
    at com.ibm.team.repository.service.internal.rdb.ConnectionFactory.createConnection(ConnectionFactory.java:129)
    at com.ibm.team.repository.service.internal.rdb.JDBCConnectionPool.createEntry(JDBCConnectionPool.java:57)
    at com.ibm.team.repository.service.internal.rdb.AbstractPool.getEntry(AbstractPool.java:200)
    at com.ibm.team.repository.service.internal.rdb.JDBCConnectionPool.getConnection(JDBCConnectionPool.java:94)
    at com.ibm.team.repository.service.internal.ServerStatusRestService.getDatabaseStatus(ServerStatusRestService.java:403)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:618)
    at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370)
    at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356)
    at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56)
    at $Proxy70.getDatabaseStatus(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:618)
    at com.ibm.team.repository.servlet.AbstractTeamServerServlet.doModelledRestService(AbstractTeamServerServlet.java:501)
    at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleRequest2(AbstractTeamServerServlet.java:1832)
    at com.ibm.team.repository.servlet.AbstractTeamServerServlet.handleRequest(AbstractTeamServerServlet.java:1688)
    at com.ibm.team.repository.servlet.AbstractTeamServerServlet.service(AbstractTeamServerServlet.java:1598)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
    at org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
    at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:75)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:120)
    at com.ibm.team.repository.server.servletbridge.JazzServlet.service(JazzServlet.java:62)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:420)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Thread.java:811)
    Caused by: java.sql.SQLException: Failed to start database 'conf/ccm/derby/repositoryDB', see the next exception for details.
    at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.bootDatabase(Unknown Source)
    at org.apache.derby.impl.jdbc.EmbedConnection.(Unknown Source)
    at org.apache.derby.jdbc.Driver30.getNewEmbedConnection(Unknown Source)
    at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
    at org.apache.derby.jdbc.EmbeddedDriver.connect(Unknown Source)
    at com.ibm.team.repository.service.db.provider.AbstractDbProvider.getConnection(AbstractDbProvider.java:154)
    at com.ibm.team.repository.jdbcdriver.internal.derby.DerbyProvider.getConnection(DerbyProvider.java:79)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:618)
    at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.invoke(ExportProxyServiceRecord.java:370)
    at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord.access$0(ExportProxyServiceRecord.java:356)
    at org.eclipse.soda.sat.core.internal.record.ExportProxyServiceRecord$ExportedServiceInvocationHandler.invoke(ExportProxyServiceRecord.java:56)
    at $Proxy44.getConnection(Unknown Source)
    at com.ibm.team.repository.service.internal.rdb.ConnectionFactory.createConnection(ConnectionFactory.java:90)
    ... 45 more
    Caused by: java.sql.SQLException: Recovery failed unexpected problem log record is Not first but transaction is not in transaction table : 16183898.
    at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
    at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
    ... 61 more
    Caused by: ERROR XSLAO: Recovery failed unexpected problem log record is Not first but transaction is not in transaction table : 16183898.
    at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
    at org.apache.derby.impl.store.raw.log.FileLogger.redo(Unknown Source)
    at org.apache.derby.impl.store.raw.log.LogToFile.recover(Unknown Source)
    at org.apache.derby.impl.store.raw.RawStore.boot(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
    at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown Source)
    at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown Source)
    at org.apache.derby.impl.store.access.RAMAccessManager.boot(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
    at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown Source)
    at org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown Source)
    at org.apache.derby.impl.db.BasicDatabase.bootStore(Unknown Source)
    at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown Source)
    at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.startProviderService(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.findProviderAndStartService(Unknown Source)
    at org.apache.derby.impl.services.monitor.BaseMonitor.startPersistentService(Unknown Source)
    at org.apache.derby.iapi.services.monitor.Monitor.startPersistentService(Unknown Source)
    ... 61 more
    ================================

Comments
Karthikeyan Elangovan commented Jul 13 '12, 5:03 a.m.

Hi, I'm also facing the same issue now . Have you resolved this issue?

One answer



permanent link
Arne Bister (2.6k12832) | answered Jul 13 '12, 12:33 p.m.
JAZZ DEVELOPER
Hi,

the key error seems to be: ERROR XSLAO: Recovery failed unexpected problem log record is Not first but transaction is not in transaction table
For this, I found a technote for another product using derby. Apparently Derby can get locked after system crash. If adapting this technote to your situation does not resolve the issue, I guess the database needs to be restored from backup.

For productive setup it is recommended to use DB2 which is bundled with RTC.

If this answer is helpful, please mark it as accepted.

- Arne

Comments
Frank Ning commented May 15 '13, 2:02 p.m.

Hi Ame,

I don't use Derby database. I use DB2 V9.7. However, I got the same error when WAS is running. The derby.log went up to 40GB for the last 6 months and I have to keep cleaning it up. It does not help even I changed "derby.infolog.append=true" to "derby.infolog.append=false" and restarted the server.

How can I prevent this (WAS keep writing to derby.log) from happening?

Thanks

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.