Uploaded image for project: 'Jira Cloud'
  1. Jira Cloud
  2. JRACLOUD-74672

Project Import on Jira Server fails due to incomplete entities related to Next Generation projects in entities.xml

    XMLWordPrintable

Details

    Description

      Issue Summary

      Project Import on Jira Server fails due to incomplete entities related to Next Generation projects, generated in exported entities.xml file.

      Steps to Reproduce

      1. Export XML from Jira Cloud for Project import purposes
      2. Do a Project Import on Jira Server instance, using the generated XML backup from step 1.

      Expected Results

      Project Import completes successfully.

      Actual Results

      Project Import fails.

      The below exception is thrown in the atlassian-jira.log file:

      2020-06-10 15:31:49,190 JiraTaskExecutionThread-45 WARN admin 931x251545x1 n3otp1 23.251.0.207,127.0.0.1 /secure/complete-project-import!resumeImportFromSimulation.jspa [c.a.j.i.project.handler.ChainedOfBizSaxHandler] Encountered a parsing exception.
      com.atlassian.jira.exception.ParseException: The updated of entityName '14011' is missing 
      	at com.atlassian.jira.imports.project.parser.EntityPropertyParserImpl.verifyRequiredAttribute(EntityPropertyParserImpl.java:43)
      	at com.atlassian.jira.imports.project.parser.EntityPropertyParserImpl.parse(EntityPropertyParserImpl.java:30)
      	at com.atlassian.jira.imports.project.handler.IssueRelatedEntitiesPartitionHandler.handleEntityProperty(IssueRelatedEntitiesPartitionHandler.java:155)
      	at com.atlassian.jira.imports.project.handler.IssueRelatedEntitiesPartitionHandler.handleEntity(IssueRelatedEntitiesPartitionHandler.java:112)
      	at com.atlassian.jira.imports.project.handler.ChainedOfBizSaxHandler.endTopLevelElement(ChainedOfBizSaxHandler.java:221)
      	at com.atlassian.jira.imports.project.handler.ChainedOfBizSaxHandler.endElement(ChainedOfBizSaxHandler.java:169)
      	at com.atlassian.jira.imports.project.handler.ChainedOfBizSaxHandler.endElement(ChainedOfBizSaxHandler.java:136)
      	at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
      	at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
      	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
      	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
      	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
      	at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
      	at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
      	at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
      	at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
      	at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
      	at com.atlassian.security.xml.RestrictedXMLReader.parse(RestrictedXMLReader.java:103)
      	at com.atlassian.jira.imports.xml.DefaultBackupXmlParser$XmlParser.parseXml(DefaultBackupXmlParser.java:115)
      	at com.atlassian.jira.imports.xml.DefaultBackupXmlParser.parse(DefaultBackupXmlParser.java:64)
      	at com.atlassian.jira.imports.xml.DefaultBackupXmlParser.parseXml(DefaultBackupXmlParser.java:52)
      	at com.atlassian.jira.imports.xml.DefaultBackupXmlParser.parseOfBizBackupXml(DefaultBackupXmlParser.java:41)
      	at com.atlassian.jira.imports.project.DefaultProjectImportManager.getCoreProjectImportData(DefaultProjectImportManager.java:335)
      	at com.atlassian.jira.imports.project.DefaultProjectImportManager.getProjectImportData(DefaultProjectImportManager.java:255)
      	at com.atlassian.jira.bc.imports.project.DefaultProjectImportService.getProjectImportData(DefaultProjectImportService.java:576)
      	at com.awnaba.projectconfigurator.transporter.engine.JiraDataImporter.jiraImportData(JiraDataImporter.java:277)
      	at com.awnaba.projectconfigurator.transporter.engine.JiraDataImporter.importData(JiraDataImporter.java:159)
      	at com.awnaba.projectconfigurator.transporter.engine.JiraDataImporter$DataImportCallable.call(JiraDataImporter.java:458)
      	at com.awnaba.projectconfigurator.transporter.engine.JiraDataImporter.importDataSynchronously(JiraDataImporter.java:428)
      	at com.awnaba.projectconfigurator.operationsapi.impl.ProjectCompleteImporterImpl.doDataLoadPhase(ProjectCompleteImporterImpl.java:409)
      	at com.awnaba.projectconfigurator.operationsapi.impl.ProjectCompleteImporterImpl.executeNextPhase(ProjectCompleteImporterImpl.java:297)
      	at com.awnaba.projectconfigurator.operationsapi.impl.ProjectCompleteImporterImpl.doCompleteImport(ProjectCompleteImporterImpl.java:265)
      	at com.awnaba.projectconfigurator.operationsapi.impl.ProjectCompleteImporterImpl.access$0(ProjectCompleteImporterImpl.java:258)
      	at com.awnaba.projectconfigurator.operationsapi.impl.ProjectCompleteImporterImpl$CompleteImporterTask.call(ProjectCompleteImporterImpl.java:537)
      	at com.awnaba.projectconfigurator.operationsapi.impl.ProjectCompleteImporterImpl$CompleteImporterTask.call(ProjectCompleteImporterImpl.java:1)
      	at com.awnaba.projectconfigurator.longrunningtasks.TaskHelperImpl$WrappingTask.safeCall(TaskHelperImpl.java:141)
      	at com.awnaba.projectconfigurator.longrunningtasks.TaskHelperImpl$WrappingTask.call(TaskHelperImpl.java:130)
      	at com.awnaba.projectconfigurator.longrunningtasks.TaskHelperImpl$WrappingTask.call(TaskHelperImpl.java:1)
      	at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:537)
      	at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:495)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at com.atlassian.jira.task.ForkedThreadExecutor$ForkedRunnableDecorator.run(ForkedThreadExecutor.java:216)
      	at java.lang.Thread.run(Thread.java:748)
      2020-06-10 15:31:49,201 JiraTaskExecutionThread-45 ERROR admin 931x251545x1 n3otp1 23.251.0.207,127.0.0.1 /secure/complete-project-import!resumeImportFromSimulation.jspa [c.a.j.imports.project.DefaultProjectImportService] There was a problem with the SAX parsing of the file '/opt/atlassian/jira/temp/com.awnaba.projectconfigurator1591795862404/data/data.zip' when performing a project import.
      

      Looking into entities.xml file, the following entity related to Next Generation projects has missing updated and created attributes:

      <EntityProperty id="14011" entityName="customfield_10147" entityId="10003" propertyKey="NEXT_GEN_FIELD_CONFIGURATION" value="{"options":[ ...
      ...
      

      Workaround

      Add updated / created attributes and dummy dates to rows that are missing these attributes:

      1. From the extracted XML backup, make a copy entities.xml file, just to be safe.
      2. Open entities.xml in the text editor
      3. Locate the EntityProperty with missing updated and created attributes and insert those with dummy values for those attributes. For example:
        <EntityProperty id="14011" entityName="customfield_10147" entityId="10003" propertyKey="NEXT_GEN_FIELD_CONFIGURATION" created="2019-07-03 16:03:34.446" updated="2019-07-03 16:03:35.000" value="{"options":[ ...
        ...
        
      4. Zip modified entities.xml and activeobjects.xml files
      5. Try reimporting the project

      Notes

      There might be more rows missing one or both attributes, so make sure to look for other rows as well. This command should give all entity definition rows that do not contain updated or created attribute

      $ grep '<EntityProperty id=' test.txt | egrep -v '(updated|created)'
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              mfilipan Marko Filipan
              Votes:
              17 Vote for this issue
              Watchers:
              32 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: