need more info to debug Trello importer error

Jeffrey Knurek April 27, 2014

I'm trying to use Trello Importer Plugin for JIM to import our existing issues into Jira. I found it works well for Trello boards that don't have much data, but it seems to fall apart whenever there is a special charater.

My current problem is this vague error:

Error converting XML to workflow descriptor.: root cause: The entity name must immediately follow the '&' in the entity reference. (line:540 col:68)

If I could find the xml that the importer generates I'd probably be able to track this down. But otherwise, I have no insight into which entity is causing the problem or where to fix the data in Trello.

1 answer

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

Post a new question

0 votes
Answer accepted
pborkowski
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 28, 2014

Hi Jeffrey

I'm having difficulties to find out where the importer fails with import. Are there any more specific informations in the log file that would help me to investigate your problem? A stacktrace would be perferct.

Cheers, Przemek

Jeffrey Knurek April 28, 2014

I've attached the log from the failed import (jiraImportersPlugin-6667341194988996173.log)

And a screenshot of the error displayed in Jira

pborkowski
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 29, 2014

It took me some time, but I finally was able to reproduce your problem. Trello Importer creates a dedicated workflow for your project during import. It's always called 'Trello Workflow for <here your project name>'. The exception occurs when you are starting an import and incompatible/edited Workflow with that name already exists.

This is a bug and I've created for that an issue under JIM project.

To workaround this issue, please make sure that worflow does not exisit before the import.

Cheers,

Przemek

Jeffrey Knurek April 29, 2014

Thanks a lot for tracking this down.

The bad news is that, the workaround seems to have put me in a worse state. I deleted all the inactive workflow schemes (one had a name similar) and then tried the import again. It failed with the same error. Then when I tried to go and clean out ALL existing workflows, I am getting system errors from Jira

Looking at the logs has the following error message:

Uncaught exception thrown by REST service: java.lang.RuntimeException: com.opensymphony.workflow.FactoryException: Error converting XML to workflow descriptor.: root cause: The value of attribute "status" associated with an element type "unconditional-result" must not contain the '&lt;' character. (line:785 col:57)
com.atlassian.cache.CacheException: java.lang.RuntimeException: com.opensymphony.workflow.FactoryException: Error converting XML to workflow descriptor.: root cause: The value of attribute "status" associated with an element type "unconditional-result" must not contain the '&lt;' character. (line:785 col:57)

going to http://localhost:8090/secure/admin/ViewStatuses.jspathrows a 500 error...

pborkowski
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 5, 2014

Hi Jeffrey,

This problem seems to be more complex and it's now not only connected to the Trello Importer. I think it would be best to open a Support issue under: support.atlassian.com.

What I can see in your issue, is that JIRA for some reason tries to create a workflow that contains names that are not encoded. Trello Importer tries to create Workflow statuses based on your Trello "column" names - if you have there some XML-illegal characters (e.g. '>') this could cause the importer to fail. I think you could try to perform a "simpler" import (some small Trello project with easy, XML-legal names), just to check if the importer is working at all for you.

Cheers,

Przemek

Jeffrey Knurek May 5, 2014

Thanks Przemek,

I opened a Support issue: problem-report-192097

I had noticed early on the problem with the Trello List names, so I copied the Trello board and moved all the cards into one List called "Open". Maybe there was some underlying problem with one of the first import attempts that broke Jira statuses.

I had previously done a "simple" import amongst all the failures which worked for me, so I was able to rule out that it wasn't a tool problem directly, but rather a data mapping problem.

I did a fresh install of Jira and ran the importer again. It provided a more managebale error message as it successfully imported 74 of the 233 issues attempted. Here is the relavant bit of the logs where this failure occurred:

Jeffrey Knurek May 5, 2014

ah - it seems that the problem now is that the importer is failing when it tries to import a Trello card that has attachments

2014-05-06 09:37:33,051 INFO - Importing issue: ExternalIssue{externalId=..., summary=...., issueType=Bug}
2014-05-06 09:37:33,993 INFO - ------------------------------
2014-05-06 09:37:33,993 INFO - Finished Importing : Issues
2014-05-06 09:37:33,993 INFO - ------------------------------
2014-05-06 09:37:33,994 ERROR - Unexpected failure occurred. Importer will stop immediately. Data may be in an unstable state
java.lang.NullPointerException
	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187)
	at com.google.common.cache.CustomConcurrentHashMap.getOrCompute(CustomConcurrentHashMap.java:3801)
	at com.google.common.cache.ComputingCache.get(ComputingCache.java:46)
	at com.atlassian.jira.plugins.importer.trello.fetch.TrelloApiImpl.getUser(TrelloApiImpl.java:161)
	...
	at com.sun.proxy.$Proxy5110.doImport(Unknown Source)
	at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:26)
	at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:15)
	at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:374)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at com.atlassian.jira.task.ForkedThreadExecutor$ForkedRunnableDecorator.run(ForkedThreadExecutor.java:250)
	at java.lang.Thread.run(Thread.java:744)

TAGS
AUG Leaders

Atlassian Community Events