Cannot start RH-SSO 7.5 with H2 database
Issue
- After upgrade to RH-SSO 7.5, the server will not start.
- The errors like below are logged in server.log:
WARN [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (ServerService Thread Pool -- 57) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: IJ031084: Unable to create connection
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:364)
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:371)
at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:287)
at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.createConnectionEventListener(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:1328)
at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.getConnection(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:505)
at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:640)
...
Caused by: org.h2.jdbc.JdbcSQLException: Constraint "FK_5HG65LYBEVAVKQFKI3KPONH9V" already exists; SQL statement:
ALTER TABLE PUBLIC.REALM_REQUIRED_CREDENTIAL ADD CONSTRAINT PUBLIC.FK_5HG65LYBEVAVKQFKI3KPONH9V FOREIGN KEY(REALM_ID) INDEX PUBLIC.FK_5HG65LYBEVAVKQFKI3KPONH9V_INDEX_9 REFERENCES PUBLIC.REALM(ID) NOCHECK [90045-197]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.command.ddl.AlterTableAddConstraint.tryUpdate(AlterTableAddConstraint.java:110)
at org.h2.command.ddl.AlterTableAddConstraint.update(AlterTableAddConstraint.java:78)
at org.h2.engine.MetaRecord.execute(MetaRecord.java:58)
at org.h2.engine.Database.open(Database.java:775)
FATAL [org.keycloak.services] (ServerService Thread Pool -- 59) Error during startup: java.lang.RuntimeException: Failed to connect to database
at org.keycloak.keycloak-model-jpa@15.0.2.redhat-00001//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.getConnection(DefaultJpaConnectionProviderFactory.java:391)
at org.keycloak.keycloak-model-jpa@15.0.2.redhat-00001//org.keycloak.connections.jpa.updater.liquibase.lock.LiquibaseDBLockProvider.lazyInit(LiquibaseDBLockProvider.java:65)
at org.keycloak.keycloak-model-jpa@15.0.2.redhat-00001//org.keycloak.connections.jpa.updater.liquibase.lock.LiquibaseDBLockProvider.lambda$waitForLock$2(LiquibaseDBLockProvider.java:96)
at org.keycloak.keycloak-server-spi-private@15.0.2.redhat-00001//org.keycloak.models.utils.KeycloakModelUtils.suspendJtaTransaction(KeycloakModelUtils.java:758)
...
Caused by: java.sql.SQLException: javax.resource.ResourceException: IJ000453: Unable to get managed connection for java:jboss/datasources/KeycloakDS
at org.jboss.ironjacamar.jdbcadapters@1.4.30.Final-redhat-00001//org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:159)
at org.jboss.as.connector@7.4.0.GA-redhat-00005//org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
at org.keycloak.keycloak-model-jpa@15.0.2.redhat-00001//org.keycloak.connections.jpa.DefaultJpaConnectionProviderFactory.getConnection(DefaultJpaConnectionProviderFactory.java:385)
...
Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key violation: "PRIMARY KEY ON """".PAGE_INDEX"; SQL statement:
ALTER TABLE PUBLIC.IDENTITY_PROVIDER_CONFIG ADD CONSTRAINT PUBLIC.FKDC4897CF864C4E43 FOREIGN KEY(IDENTITY_PROVIDER_ID) REFERENCES PUBLIC.IDENTITY_PROVIDER(INTERNAL_ID) NOCHECK [23505-197]
at com.h2database.h2@1.4.197.redhat-00001//org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
at com.h2database.h2@1.4.197.redhat-00001//org.h2.message.DbException.get(DbException.java:179)
at com.h2database.h2@1.4.197.redhat-00001//org.h2.message.DbException.get(DbException.java:155)
at com.h2database.h2@1.4.197.redhat-00001//org.h2.index.PageDataIndex.getNewDuplicateKeyException(PageDataIndex.java:163)
Environment
- Red Hat Single Sign-On (RH-SSO)
- 7.5
- H2 Database
- 1.4.197
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.