Uploaded image for project: 'Jira Software Data Center'
  1. Jira Software Data Center
  2. JSWSERVER-16513

JIRA 7.6 DVCS Sync fails with PSQLException

XMLWordPrintable

      Summary

      DVCS fails with SQL Caught PSQLException for delete from "public"."AO_E8B6CC_MESSAGE"

      Environment

      • Clean JIRA 7.6.1 or upgraded instance
      • Postgres (supported version)
      • Github

      Steps to Reproduce

      1. Connect to GitHub

      Expected Results

      It works

      Actual Results

      Operation fails. You can see the following error in the log:

      2018-03-28 08:58:25,387 http-nio-8080-exec-21 ERROR admin 538x208x1 1jkt6tr 172.21.44.34 /secure/admin/AddGithubOrganization!finish.jspa [c.a.j.p.d.sync.impl.DefaultSynchronizer] Caught PSQLException for delete from "public"."AO_E8B6CC_MESSAGE"
      com.querydsl.core.QueryException: Caught PSQLException for delete from "public"."AO_E8B6CC_MESSAGE"
      	at com.querydsl.sql.DefaultSQLExceptionTranslator.translate(DefaultSQLExceptionTranslator.java:50)
      	at com.querydsl.sql.Configuration.translate(Configuration.java:453)
      	at com.querydsl.sql.dml.SQLDeleteClause.execute(SQLDeleteClause.java:209)
      	at com.atlassian.jira.plugins.dvcs.dao.impl.querydsl.MessageDaoQueryDsl.lambda$deleteAllByTag$6(MessageDaoQueryDsl.java:158)
      	at com.atlassian.pocketknife.internal.querydsl.DatabaseAccessorImpl.lambda$execute$0(DatabaseAccessorImpl.java:66)
      	at com.atlassian.sal.core.rdbms.DefaultTransactionalExecutor.executeInternal(DefaultTransactionalExecutor.java:86)
      	at com.atlassian.sal.core.rdbms.DefaultTransactionalExecutor.lambda$execute$0(DefaultTransactionalExecutor.java:42)
      	at com.atlassian.jira.database.DatabaseAccessorImpl.runInManagedTransaction(DatabaseAccessorImpl.java:125)
      	... 2 filtered
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at com.atlassian.plugin.util.ContextClassLoaderSettingInvocationHandler.invoke(ContextClassLoaderSettingInvocationHandler.java:26)
      	at com.sun.proxy.$Proxy374.runInManagedTransaction(Unknown Source)
      	... 2 filtered
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at com.atlassian.plugin.osgi.bridge.external.HostComponentFactoryBean$DynamicServiceInvocationHandler.invoke(HostComponentFactoryBean.java:136)
      	at com.sun.proxy.$Proxy374.runInManagedTransaction(Unknown Source)
      	at com.atlassian.sal.jira.rdbms.JiraHostConnectionAccessor.runInStartedOrExistingTransaction(JiraHostConnectionAccessor.java:130)
      	at com.atlassian.sal.jira.rdbms.JiraHostConnectionAccessor.execute(JiraHostConnectionAccessor.java:60)
      	at com.atlassian.sal.core.rdbms.DefaultTransactionalExecutor.execute(DefaultTransactionalExecutor.java:39)
      	at com.atlassian.pocketknife.internal.querydsl.DatabaseAccessorImpl.execute(DatabaseAccessorImpl.java:64)
      	at com.atlassian.pocketknife.internal.querydsl.DatabaseAccessorImpl.runInTransaction(DatabaseAccessorImpl.java:40)
      	at com.atlassian.jira.plugins.dvcs.dao.impl.querydsl.MessageDaoQueryDsl.deleteAllByTag(MessageDaoQueryDsl.java:128)
      	at com.atlassian.jira.plugins.dvcs.service.MessagingServiceImpl.cancel(MessagingServiceImpl.java:317)
      	at com.atlassian.jira.plugins.dvcs.sync.impl.DefaultSynchronizer.stopSynchronization(DefaultSynchronizer.java:293)
      	at com.atlassian.jira.plugins.dvcs.sync.impl.DefaultSynchronizer.removeRepoDataForFullSync(DefaultSynchronizer.java:231)
      	at com.atlassian.jira.plugins.dvcs.sync.impl.DefaultSynchronizer.doSync(DefaultSynchronizer.java:159)
      	at com.atlassian.jira.plugins.dvcs.service.RepositorySyncServiceImpl.doSync(RepositorySyncServiceImpl.java:469)
      	at com.atlassian.jira.plugins.dvcs.service.RepositorySyncServiceImpl.syncNewRepo(RepositorySyncServiceImpl.java:415)
      	at com.atlassian.jira.plugins.dvcs.service.RepositorySyncServiceImpl.syncRepos(RepositorySyncServiceImpl.java:401)
      	at com.atlassian.jira.plugins.dvcs.service.RepositorySyncServiceImpl.syncAllInOrganization(RepositorySyncServiceImpl.java:380)
      	at com.atlassian.jira.plugins.dvcs.service.RepositorySyncServiceImpl.syncRepositoryList(RepositorySyncServiceImpl.java:202)
      	at com.atlassian.jira.plugins.dvcs.service.OrganizationServiceImpl.save(OrganizationServiceImpl.java:188)
      	at com.atlassian.jira.plugins.dvcs.spi.github.webwork.AddGithubOrganization.doAddOrganization(AddGithubOrganization.java:151)
      	at com.atlassian.jira.plugins.dvcs.spi.github.webwork.AddGithubOrganization.doFinish(AddGithubOrganization.java:120)
      	... 
      Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on table "AO_E8B6CC_MESSAGE" violates foreign key constraint "fk_ao_e8b6cc_message_queue_item_message_id" on table "AO_E8B6CC_MESSAGE_QUEUE_ITEM"
        Detail: Key (ID)=(3) is still referenced from table "AO_E8B6CC_MESSAGE_QUEUE_ITEM".
      	at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2455)
      	at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2155)
      	at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:288)
      	at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:430)
      	at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:168)
      	at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:135)
      	at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:98)
      	at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:98)
      	at com.querydsl.sql.dml.SQLDeleteClause.execute(SQLDeleteClause.java:195)
      	... 284 more
      

      Notes

      This appears to affect versions of JIRA running DVCS version 4.2.0. This issue is resolved along with several other database related issues in DVCS 4.2.1 which is bundled starting in JIRA 7.6.3

      Workaround

      Upgrade to 7.6.3 or higher

              Unassigned Unassigned
              ddiblasio David Di Blasio (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: