Missing data in field layouts for upgrade task causes import to fail on Jira Cloud

XMLWordPrintable

    • 1
    • Severity 3 - Minor

      Summary

      Missing data in field layouts for upgrade task causes import to fail on Jira Cloud

      Expected Results

      Jira import completes successfully

      Actual Results

      The following errors are found in logs:

      2018-04-30 10:16:33.792	ERROR	com.atlassian.jira.upgrade.UpgradeServiceImpl.privacy-safe	There was an error running the upgrades:	 	 
      2018-04-30 10:16:33.779	ERROR	cloud.atlassian.upgrade.core.DefaultUpgradeTaskFactoryProcessor	Upgrade task [Ensure existing DonutWorld projects have layout and screens mapped per issue type.,buildNumber=100083] failed	Caught BatchUpdateException for insert into "public"."fieldlayoutitem" ("created", "fieldidentifier", "fieldlayout", "ishidden", "isrequired", "renderertype", "updated") values (?, ?, ?, ?, ?, ?, ?)	com.querydsl.core.QueryException: Caught BatchUpdateException for insert into "public"."fieldlayoutitem" ("created", "fieldidentifier", "fieldlayout", "ishidden", "isrequired", "renderertype", "updated") values (?, ?, ?, ?, ?, ?, ?) at com.querydsl.sql.support.JavaSE7SQLExceptionWrapper.wrap(JavaSE7SQLExceptionWrapper.java:41) at com.querydsl.sql.DefaultSQLExceptionTranslator.translate(DefaultSQLExceptionTranslator.java:48) at com.querydsl.sql.Configuration.translate(Configuration.java:508) at com.querydsl.sql.dml.AbstractSQLInsertClause.execute(AbstractSQLInsertClause.java:436) at com.atlassian.jira.upgrade.tasks.UpgradeTask_Build100083.copyDefaultLayout(UpgradeTask_Build100083.java:247) at com.atlassian.jira.upgrade.tasks.UpgradeTask_Build100083.lambda$runUpgrade$0(UpgradeTask_Build100083.java:202) at com.atlassian.jira.database.DefaultQueryDslAccessor.lambda$execute$1(DefaultQueryDslAccessor.java:57) at com.atlassian.jira.database.DatabaseAccessorImpl.lambda$runInTransaction$0(DatabaseAccessorImpl.java:67) at com.atlassian.jira.database.DatabaseAccessorImpl.executeQuery(DatabaseAccessorImpl.java:36) at com.atlassian.jira.database.DatabaseAccessorImpl.runInTransaction(DatabaseAccessorImpl.java:62) at com.atlassian.jira.database.DefaultQueryDslAccessor.execute(DefaultQueryDslAccessor.java:56) at com.atlassian.jira.upgrade.tasks.UpgradeTask_Build100083.runUpgrade(UpgradeTask_Build100083.java:58) at cloud.atlassian.upgrade.core.DefaultUpgradeTaskFactoryProcessor.runOneUpgradeTask(DefaultUpgradeTaskFactoryProcessor.java:92) at cloud.atlassian.upgrade.core.DefaultUpgradeTaskFactoryProcessor.lambda$performUpgrades$2(DefaultUpgradeTaskFactoryProcessor.java:65) at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:174) at java.util.stream.SortedOps$RefSortingSink.end(SortedOps.java:395) at java.util.stream.Sink$ChainedReference.end(Sink.java:258) at java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:499) at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485) at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:152) at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:464) at cloud.atlassian.upgrade.core.DefaultUpgradeTaskFactoryProcessor.performUpgrades(DefaultUpgradeTaskFactoryProcessor.java:66) at cloud.atlassian.upgrade.core.DefaultUpgradeTaskManager.lambda$runPendingUpgrades$0(DefaultUpgradeTaskManager.java:38) at java.util.Optional.map(Optional.java:215) at cloud.atlassian.upgrade.core.DefaultUpgradeTaskManager.runPendingUpgrades(DefaultUpgradeTaskManager.java:38) at com.atlassian.jira.upgrade.UpgradeServiceImpl.lambda$executePendingUpgrades$12(UpgradeServiceImpl.java:260) at com.atlassian.jira.upgrade.UpgradeServiceImpl.lambda$executeUpgradeMethod$13(UpgradeServiceImpl.java:270) at com.atlassian.jira.upgrade.UpgradeServiceImpl.runActionWithLock(UpgradeServiceImpl.java:313) at com.atlassian.jira.upgrade.UpgradeServiceImpl.executeUpgradeMethod(UpgradeServiceImpl.java:267) at com.atlassian.jira.upgrade.UpgradeServiceImpl.executePendingUpgrades(UpgradeServiceImpl.java:260) at com.atlassian.jira.upgrade.UpgradeServiceImpl.lambda$runUpgradesForImport$3(UpgradeServiceImpl.java:145) at com.atlassian.jira.upgrade.UpgradeServiceImpl.runWithTaskLogging(UpgradeServiceImpl.java:371) at com.atlassian.jira.upgrade.UpgradeServiceImpl.runUpgradesForImport(UpgradeServiceImpl.java:140) at com.atlassian.jira.bc.dataimport.CloudImportService.runUpgradesForImport(CloudImportService.java:286) at com.atlassian.jira.bc.dataimport.CloudImportService.performDbImport(CloudImportService.java:236) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.performTasksOnImportDb(CloudImportTaskRunner.java:306) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.performTasksOnImportDb(CloudImportTaskRunner.java:358) at com.atlassian.jira.bc.dataimport.CloudImportTaskRunner.lambda$null$1(CloudImportTaskRunner.java:167) at com.atlassian.connpool.impl.AbstractConnectionPoolProvider.withPrivatePool(AbstractConnectionPoolProvider.java:133) at com.atlassian.jira.connpool.JiraViburConnectionPoolProvider.withPrivatePool(JiraViburConnectionPoolProvider.java:94) at com.atlassian.jira.bc.dataimport.AbstractBackupTaskRunner.lambda$null$0(AbstractBackupTaskRunner.java:63) at java.util.Optional.map(Optional.java:215) at com.atlassian.jira.bc.dataimport.AbstractBackupTaskRunner.lambda$runWithSeparateContextAsync$1(AbstractBackupTaskRunner.java:62) at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Suppressed: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "uk-fieldlayout-fieldidentifier" Detail: Key (fieldlayout, fieldidentifier)=(11500, customfield_15716) already exists. at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2477) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2190) at org.postgresql.core.v3.QueryExecutorImpl.flushIfDeadlockRisk(QueryExecutorImpl.java:1325) at org.postgresql.core.v3.QueryExecutorImpl.sendQuery(QueryExecutorImpl.java:1350) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:458) at org.postgresql.jdbc.PgStatement.executeBatch(PgStatement.java:791) at org.postgresql.jdbc.PgPreparedStatement.executeBatch(PgPreparedStatement.java:1563) at sun.reflect.GeneratedMethodAccessor1763.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.vibur.dbcp.proxy.AbstractInvocationHandler.targetInvoke(AbstractInvocationHandler.java:145) at org.vibur.dbcp.proxy.StatementInvocationHandler.doProcessExecute(StatementInvocationHandler.java:204) at org.vibur.dbcp.proxy.StatementInvocationHandler.on(StatementInvocationHandler.java:195) at com.atlassian.jira.connpool.JiraViburConnectionPoolProvider.lambda$null$5(JiraViburConnectionPoolProvider.java:149) at org.vibur.dbcp.proxy.StatementInvocationHandler.processExecute(StatementInvocationHandler.java:137) at org.vibur.dbcp.proxy.StatementInvocationHandler.restrictedInvoke(StatementInvocationHandler.java:91) at org.vibur.dbcp.proxy.StatementInvocationHandler.restrictedInvoke(StatementInvocationHandler.java:41) at org.vibur.dbcp.proxy.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:81) at com.sun.proxy.$Proxy5018.executeBatch(Unknown Source) at com.querydsl.sql.dml.AbstractSQLClause.executeBatch(AbstractSQLClause.java:193) at com.querydsl.sql.dml.AbstractSQLClause.executeBatch(AbstractSQLClause.java:203) at com.querydsl.sql.dml.AbstractSQLInsertClause.execute(AbstractSQLInsertClause.java:430) ... 45 more Caused by: java.sql.BatchUpdateException: Batch entry 1 insert into "public"."fieldlayoutitem" ("created", "description", "fieldidentifier", "fieldlayout", "ishidden", "isrequired", "renderertype", "updated") values ('2017-11-28 14:40:00.600433+00'::timestamp with time zone, 'Email address', 'customfield_15716', 11500, 'false', 'false', 'jira-text-renderer', '2017-11-28 14:40:00.600433+00'::timestamp with time zone) was aborted: ERROR: duplicate key value violates unique constraint "uk-fieldlayout-fieldidentifier" Detail: Key (fieldlayout, fieldidentifier)=(11500, customfield_15716) already exists. Call getNextException to see other errors in the batch. at org.postgresql.jdbc.BatchResultHandler.handleError(BatchResultHandler.java:148) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2191) at org.postgresql.core.v3.QueryExecutorImpl.flushIfDeadlockRisk(QueryExecutorImpl.java:1325) at org.postgresql.core.v3.QueryExecutorImpl.sendQuery(QueryExecutorImpl.java:1350) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:458) at org.postgresql.jdbc.PgStatement.executeBatch(PgStatement.java:791) at org.postgresql.jdbc.PgPreparedStatement.executeBatch(PgPreparedStatement.java:1563) at sun.reflect.GeneratedMethodAccessor1763.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.vibur.dbcp.proxy.AbstractInvocationHandler.targetInvoke(AbstractInvocationHandler.java:145) at org.vibur.dbcp.proxy.StatementInvocationHandler.doProcessExecute(StatementInvocationHandler.java:204) at org.vibur.dbcp.proxy.StatementInvocationHandler.on(StatementInvocationHandler.java:195) at com.atlassian.jira.connpool.JiraViburConnectionPoolProvider.lambda$null$5(JiraViburConnectionPoolProvider.java:149) at org.vibur.dbcp.proxy.StatementInvocationHandler.processExecute(StatementInvocationHandler.java:137) at org.vibur.dbcp.proxy.StatementInvocationHandler.restrictedInvoke(StatementInvocationHandler.java:91) at org.vibur.dbcp.proxy.StatementInvocationHandler.restrictedInvoke(StatementInvocationHandler.java:41) at org.vibur.dbcp.proxy.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:81) at com.sun.proxy.$Proxy5018.executeBatch(Unknown Source) at com.querydsl.sql.dml.AbstractSQLClause.executeBatch(AbstractSQLClause.java:193) at com.querydsl.sql.dml.AbstractSQLClause.executeBatch(AbstractSQLClause.java:203) at com.querydsl.sql.dml.AbstractSQLInsertClause.execute(AbstractSQLInsertClause.java:430) ... 45 more [CIRCULAR REFERENCE:org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "uk-fieldlayout-fieldidentifier" Detail: Key (fieldlayout, fieldidentifier)=(11500, customfield_15716) already exists.]
      

      Workaround

      None

            Assignee:
            Unassigned
            Reporter:
            Houston B.
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: