java.lang.RuntimeException: Cannot connect to h2db
Asked by Guitarist:

I was going to renew my SSL certificate and stopped my server and did my work but now my Confluence cannot connect to the DB. What's wrong with it? It was working half-hour ago :(

My server is hosted on AWS and it's Ubuntu 16.04.6 LTS

The full output of catalina.out file:

25-Sep-2020 09:14:14.256 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server\] failed to set property \[debug\] to \[0\]

25-Sep-2020 09:14:14.433 WARNING \[main\] org.apache.tomcat.util.net.SSLHostConfig.setProtocols The protocol \[TLSv1.3\] was added to the list of protocols on the SSLHostConfig named \[_default_\]. Check if a +/- prefix is missing.

25-Sep-2020 09:14:14.451 WARNING \[main\] org.apache.catalina.startup.SetAllPropertiesRule.begin \[SetAllPropertiesRule\]{Server/Service/Connector} Setting property 'debug' to '0' did not find a matching property.

25-Sep-2020 09:14:14.492 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine\] failed to set property \[debug\] to \[0\]

25-Sep-2020 09:14:14.506 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine/Host\] failed to set property \[debug\] to \[0\]

25-Sep-2020 09:14:14.607 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine/Host/Context\] failed to set property \[debug\] to \[0\]

25-Sep-2020 09:14:14.654 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine/Host/Context\] failed to set property \[debug\] to \[0\]

25-Sep-2020 09:14:15.410 INFO \[main\] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler \["https-jsse-nio-8443"\]

25-Sep-2020 09:14:16.620 INFO \[main\] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler \["http-nio-8090"\]

25-Sep-2020 09:14:16.627 INFO \[main\] org.apache.catalina.startup.Catalina.load Server initialization in \[2,640\] milliseconds

25-Sep-2020 09:14:16.642 INFO \[main\] org.apache.catalina.core.StandardService.startInternal Starting service \[Tomcat-Standalone\]

25-Sep-2020 09:14:16.643 INFO \[main\] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: \[Apache Tomcat/9.0.33\]

25-Sep-2020 09:14:20.054 INFO \[Catalina-utility-2\] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".

SLF4J: Defaulting to no-operation (NOP) logger implementation

SLF4J: See <http://www.slf4j.org/codes.html#StaticLoggerBinder> for further details.

25-Sep-2020 09:14:20.254 INFO \[Catalina-utility-2\] org.apache.catalina.core.ApplicationContext.log 1 Spring WebApplicationInitializers detected on classpath

25-Sep-2020 09:14:21.039 INFO \[Catalina-utility-2\] org.apache.catalina.core.ApplicationContext.log Initializing Spring DispatcherServlet 'dispatcher'

2020-09-25 09:14:22,647 INFO \[Catalina-utility-1\] \[com.atlassian.confluence.lifecycle\] contextInitialized Starting Confluence 7.4.1 \[build 8401 based on commit hash 758836457240a7983be3b3db3463da30107b780e\] - synchrony version 3.1.0-master-022ca438

2020-09-25 09:14:34,475 ERROR \[Catalina-utility-1\] \[atlassian.confluence.setup.ConfluenceConfigurationListener\] contextInitialized An error was encountered while bootstrapping Confluence (see below):

Cannot connect to h2db

java.lang.RuntimeException: Cannot connect to h2db

at com.atlassian.h2.DatabaseCreatingServerLifecycle.start(DatabaseCreatingServerLifecycle.java:57)

at com.atlassian.confluence.core.persistence.hibernate.ConfluenceHibernateConfig.getHibernateProperties(ConfluenceHibernateConfig.java:51)

at com.atlassian.confluence.setup.DefaultBootstrapManager.getHibernateProperties(DefaultBootstrapManager.java:634)

at com.atlassian.confluence.setup.DefaultBootstrapManager.performPersistenceUpgrade(DefaultBootstrapManager.java:318)

at com.atlassian.config.bootstrap.DefaultAtlassianBootstrapManager.init(DefaultAtlassianBootstrapManager.java:81)

at com.atlassian.confluence.setup.DefaultBootstrapManager.init(DefaultBootstrapManager.java:188)

at com.atlassian.config.util.BootstrapUtils.init(BootstrapUtils.java:36)

at com.atlassian.confluence.setup.ConfluenceConfigurationListener.initialiseBootstrapContext(ConfluenceConfigurationListener.java:146)

at com.atlassian.confluence.setup.ConfluenceConfigurationListener.contextInitialized(ConfluenceConfigurationListener.java:65)

at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4690)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5151)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)

at java.base/java.util.concurrent.FutureTask.run(Unknown Source)

at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)

at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.base/java.lang.Thread.run(Unknown Source)

Caused by: org.h2.jdbc.JdbcSQLException: General error: "java.lang.NullPointerException" \[50000-196\]

at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)

at org.h2.message.DbException.get(DbException.java:168)

at org.h2.message.DbException.convert(DbException.java:295)

at org.h2.engine.Database.openDatabase(Database.java:307)

at org.h2.engine.Database.\<init\>(Database.java:270)

at org.h2.engine.Engine.openSession(Engine.java:64)

at org.h2.engine.Engine.openSession(Engine.java:176)

at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)

at org.h2.engine.Engine.createSession(Engine.java:137)

at org.h2.engine.Engine.createSession(Engine.java:27)

at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:354)

at org.h2.jdbc.JdbcConnection.\<init\>(JdbcConnection.java:116)

at org.h2.jdbc.JdbcConnection.\<init\>(JdbcConnection.java:100)

at org.h2.Driver.connect(Driver.java:69)

at java.sql/java.sql.DriverManager.getConnection(Unknown Source)

at java.sql/java.sql.DriverManager.getConnection(Unknown Source)

at com.atlassian.h2.DatabaseCreatingServerLifecycle.start(DatabaseCreatingServerLifecycle.java:52)

... 19 more

Caused by: java.lang.NullPointerException

at org.h2.mvstore.db.ValueDataType.compare(ValueDataType.java:104)

at org.h2.mvstore.MVMap.compare(MVMap.java:713)

at org.h2.mvstore.Page.binarySearch(Page.java:334)

at org.h2.mvstore.MVMap.binarySearch(MVMap.java:466)

at org.h2.mvstore.MVMap.get(MVMap.java:455)

at org.h2.mvstore.MVMap.remove(MVMap.java:543)

at org.h2.mvstore.db.TransactionStore.rollbackTo(TransactionStore.java:506)

at org.h2.mvstore.db.TransactionStore$Transaction.rollback(TransactionStore.java:803)

at org.h2.mvstore.db.MVTableEngine$Store.initTransactions(MVTableEngine.java:256)

at org.h2.engine.Database.open(Database.java:767)

at org.h2.engine.Database.openDatabase(Database.java:276)

... 32 more

2020-09-25 09:14:34,523 WARN \[Catalina-utility-1\] \[atlassian.confluence.plugin.PluginFrameworkContextListener\] contextInitialized Not starting full plugin system due to upgrade

2020-09-25 09:14:35,755 INFO \[Catalina-utility-1\] \[com.atlassian.confluence.lifecycle\] init Confluence is ready to serve

25-Sep-2020 09:14:35.790 INFO \[main\] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler \["https-jsse-nio-8443"\]

25-Sep-2020 09:14:35.840 INFO \[main\] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler \["http-nio-8090"\]

25-Sep-2020 09:14:35.846 INFO \[main\] org.apache.catalina.startup.Catalina.start Server startup in \[19,218\] milliseconds


Answers:
author: Nic Brough -Adaptavist-
body: My best guess is that the h2db database is corrupt and hence not responding.

Do you have any backups you could restore to?


Tags: confluence-server

server