I'm facing an issue when starting Jira. The system fails to initialize due to missing tables in the database, which prevents Jira from launching properly. I've checked the logs and they indicate that certain tables expected by Jira are not present. I've tried to troubleshoot the issue but haven't been able to resolve it yet.
I tried setup with the recommend configuration of jira wizard in Windows.
Has anyone encountered a similar problem or could offer guidance on how to fix this issue? Any suggestions would be greatly appreciated!
The log i receive:
2025-01-30 10:30:27,280-0300 JIRA-Bootstrap ERROR [c.a.jira.startup.ComponentContainerLauncher] A fatal error occurred during initialisation. JIRA has been locked. com.atlassian.jira.exception.DataAccessException: org.ofbiz.core.entity.GenericDataSourceException: SQL Exception while executing the following:SELECT pluginkey, pluginenabled FROM pluginstate (ERRO: não existe a relação "pluginstate" Posição: 38) at com.atlassian.jira.ofbiz.DefaultOfBizDelegator.findAll(DefaultOfBizDelegator.java:267) at com.atlassian.jira.ofbiz.WrappingOfBizDelegator.findAll(WrappingOfBizDelegator.java:156) at com.atlassian.jira.plugin.OfBizPluginPersistentStateStore.getState(OfBizPluginPersistentStateStore.java:38) at com.atlassian.jira.plugin.JiraPluginPersistentStateStore.reloadKeys(JiraPluginPersistentStateStore.java:48) at com.atlassian.jira.plugin.JiraPluginPersistentStateStore.(JiraPluginPersistentStateStore.java:36) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Unknown Source) at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source) at org.picocontainer.injectors.AbstractInjector.newInstance(AbstractInjector.java:145) at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:342) at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270) at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364) at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91) at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) at com.atlassian.jira.component.pico.behaviors.ContainerSynchronizedBehavior.getComponentInstance(ContainerSynchronizedBehavior.java:26) at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:698) at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:646) at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:631) at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118) at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136) at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78) at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309) at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335) at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270) at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364) at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91) at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64) at com.atlassian.jira.component.pico.behaviors.ContainerSynchronizedBehavior.getComponentInstance(ContainerSynchronizedBehavior.java:26) at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:698) at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:646) at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:677) at com.atlassian.jira.component.pico.CachingMutablePicoContainer.getComponent(CachingMutablePicoContainer.java:139) at com.atlassian.jira.component.pico.ComponentContainer.getComponentInstance(ComponentContainer.java:326) at com.atlassian.jira.component.pico.registrar.ContainerRegistrar.registerAtlassianApplication(ContainerRegistrar.java:4581) at com.atlassian.jira.component.pico.registrar.ContainerRegistrar.registerComponents(ContainerRegistrar.java:4262) at com.atlassian.jira.component.pico.ComponentManager.lambda$createFullContainer$0(ComponentManager.java:216) at com.atlassian.jira.component.pico.ComponentManager.createComponentContainer(ComponentManager.java:340) at com.atlassian.jira.component.pico.ComponentManager.createFullContainer(ComponentManager.java:214) at com.atlassian.jira.startup.ComponentContainerLauncher.populateFullPicoContainer(ComponentContainerLauncher.java:50) at com.atlassian.jira.startup.ComponentContainerLauncher.start(ComponentContainerLauncher.java:30) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$postDbLaunch$2(DefaultJiraLauncher.java:147) at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:305) at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:202) at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:144) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$start$0(DefaultJiraLauncher.java:109) at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:31) at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:107) at com.atlassian.jira.startup.LauncherContextListener.initSlowStuff(LauncherContextListener.java:162) at java.base/java.lang.Thread.run(Unknown Source) Caused by: org.ofbiz.core.entity.GenericDataSourceException: SQL Exception while executing the following:SELECT pluginkey, pluginenabled FROM pluginstate (ERRO: não existe a relação "pluginstate" Posição: 38) at org.ofbiz.core.entity.jdbc.SQLProcessor.executeQuery(SQLProcessor.java:549) at org.ofbiz.core.entity.GenericDAO.createEntityListIterator(GenericDAO.java:882) at org.ofbiz.core.entity.GenericDAO.selectListIteratorByCondition(GenericDAO.java:862) at org.ofbiz.core.entity.GenericDAO.selectByAnd(GenericDAO.java:734) at org.ofbiz.core.entity.GenericHelperDAO.findByAnd(GenericHelperDAO.java:166) at org.ofbiz.core.entity.GenericDelegator.findByAnd(GenericDelegator.java:913) at org.ofbiz.core.entity.GenericDelegator.findByAnd(GenericDelegator.java:891) at org.ofbiz.core.entity.GenericDelegator.findAll(GenericDelegator.java:801) at com.atlassian.jira.ofbiz.DefaultOfBizDelegator.findAll(DefaultOfBizDelegator.java:265) ... 52 more Caused by: org.postgresql.util.PSQLException: ERRO: não existe a relação "pluginstate" Posição: 38 at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2725) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2412) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:371) at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:502) at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:419) at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:194) at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:137) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:123) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:123) at org.ofbiz.core.entity.jdbc.SQLProcessor.executeQuery(SQLProcessor.java:543) ... 60 more 2025-01-30 10:30:27,296-0300 JIRA-Bootstrap INFO [c.a.jira.startup.DatabaseLauncher] Database transactions enabled: true 2025-01-30 10:30:27,296-0300 JIRA-Bootstrap INFO [c.a.jira.startup.DatabaseLauncher] Using JIRA's default for database transaction isolation level: 2 2025-01-30 10:30:27,312-0300 JIRA-Bootstrap WARN [c.a.jira.startup.DatabaseLauncher] JRADEV-23357: unable to select from the 'MovedIssueKey' entity. 2025-01-30 10:30:27,312-0300 JIRA-Bootstrap ERROR [c.a.jira.startup.LauncherContextListener] Unable to start JIRA. com.atlassian.jira.exception.DataAccessException: org.postgresql.util.PSQLException: ERRO: não existe a relação "moved_issue_key" Posição: 22 at com.atlassian.jira.startup.DatabaseLauncher.cleanupDatabaseTableName(DatabaseLauncher.java:222) at com.atlassian.jira.startup.DatabaseLauncher.cleanupDatabaseTableNames(DatabaseLauncher.java:180) at com.atlassian.jira.startup.DatabaseLauncher.start(DatabaseLauncher.java:72) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$postDbLaunch$2(DefaultJiraLauncher.java:148) at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:305) at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:202) at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:144) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$start$0(DefaultJiraLauncher.java:109) at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:31) at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:107) at com.atlassian.jira.startup.LauncherContextListener.initSlowStuff(LauncherContextListener.java:162) at java.base/java.lang.Thread.run(Unknown Source) Caused by: org.postgresql.util.PSQLException: ERRO: não existe a relação "moved_issue_key" Posição: 22 at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2725) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2412) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:371) at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:502) at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:419) at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:341) at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:326) at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:302) at org.postgresql.jdbc.PgStatement.executeQuery(PgStatement.java:251) at org.apache.commons.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:318) at org.apache.commons.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:318) at com.atlassian.jira.startup.DatabaseLauncher.cleanupDatabaseTableName(DatabaseLauncher.java:206) ... 11 more
Hi @Kawan Diogo
It looks like there are missing database tables (pluginstate and moved_issue_key). For some reason, Jira didn't fully initialize the database during the setup and that reason needs to be fixed.
I'd suggest
- verify your db connection settings and connect to the database with the credentials in your dbconfig.xml, then run below SQL to see the problem
SELECT * FROM pluginstate;
- your jirauser might not have necessary permissions to create those tables. Ensure that user has full permissions. In postgre, you can achieve with the below SQL
GRANT ALL PRIVILEGES ON DATABASE jiradb TO jirauser;
- If the permissions are the cause I'd suggest dropping the jira database and restart installation
Thank you very much for the response, @Tuncay Senturk
I had already done those checks and verified the permissions, but I forgot to do a simple test by dropping the corrupted table and creating a new one while ensuring the proper access.
I was able to complete the Jira setup properly, and it's now up and running.
Again, thank you very much for the support.
Best regards.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
That's good news! I am glad you were able to complete the installation.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.