Hi,
when running cloud migration we encountered the following error:
2023-06-19 09:50:38,534+0200 plugin-transaction-0 INFO [c.a.jira.plugin.PluginTransactionListener] [JIRA-STATS] [plugin-transaction] numberStartEvents:854, numberEndEvents:854, numberSendEvents:571, numberEventsInTransactions:14930, numberOfPluginEnableEvents:293
java.lang.ClassCastException: com.opensymphony.workflow.loader.ConditionsDescriptor cannot be cast to com.opensymphony.workflow.loader.ConditionDescriptor
at com.atlassian.jira.migration.workers.attachments.csvgenerator.AppWorkflowRulesCsvExtractor.searchForRules(AppWorkflowRulesCsvExtractor.kt:77)
at com.atlassian.jira.migration.workers.attachments.csvgenerator.AppWorkflowRulesCsvExtractor.getRecords(AppWorkflowRulesCsvExtractor.kt:49)
at com.atlassian.jira.migration.workers.site.V3SiteDataProcessor$generateWorkflowRulesCsv$1.invoke(V3SiteDataWorker.kt:362)
at com.atlassian.jira.migration.workers.site.V3SiteDataProcessor$generateWorkflowRulesCsv$1.invoke(V3SiteDataWorker.kt:358)
at com.atlassian.jira.migration.tracking.tasks.process.OperationProcessor$runTimedOperation$1.invoke(OperationProcessor.kt:42)
at com.atlassian.jira.migration.tracking.tasks.process.OperationProcessor$runTimedOperation$1.invoke(OperationProcessor.kt:41)
at com.atlassian.jira.migration.tracking.tasks.process.OperationProcessor$runTimedOperationWithResult$1.invoke(OperationProcessor.kt:64)
at com.atlassian.jira.migration.events.JiraEventDetectionService.runAndDetect(JiraEventDetectionService.kt:69)
at com.atlassian.jira.migration.tracking.tasks.process.OperationProcessor.runTimedOperationWithResult(OperationProcessor.kt:61)
at com.atlassian.jira.migration.tracking.tasks.process.OperationProcessor.runTimedOperation(OperationProcessor.kt:41)
at com.atlassian.jira.migration.tracking.tasks.process.OperationProcessor.runTimedOperation$default(OperationProcessor.kt:35)
at com.atlassian.jira.migration.workers.site.V3SiteDataProcessor.generateWorkflowRulesCsv(V3SiteDataWorker.kt:358)
at com.atlassian.jira.migration.workers.site.V3SiteDataProcessor.generateCsvFiles(V3SiteDataWorker.kt:326)
at com.atlassian.jira.migration.workers.site.V3SiteDataProcessor.generateEnrichedBackup(V3SiteDataWorker.kt:279)
at com.atlassian.jira.migration.workers.site.V3SiteDataProcessor.process(V3SiteDataWorker.kt:247)
at com.atlassian.jira.migration.workers.site.V3SiteDataWorker.process(V3SiteDataWorker.kt:108)
at com.atlassian.jira.migration.tracking.polling.Poller.dispatchTask(Poller.kt:153)
at com.atlassian.jira.migration.tracking.polling.Poller.pollForTaskAndDispatch(Poller.kt:148)
at com.atlassian.jira.migration.tracking.polling.Poller.pollForTaskAndDispatchNoThrow(Poller.kt:89)
at com.atlassian.jira.migration.tracking.polling.Poller.doPoll(Poller.kt:74)
at com.atlassian.jira.migration.tracking.polling.AbstractPoller.execute(AbstractPoller.kt:67)
at com.atlassian.jira.migration.tracking.polling.AbstractPoller.access$execute(AbstractPoller.kt:18)
at com.atlassian.jira.migration.tracking.polling.AbstractPoller$startPolling$1.invoke(AbstractPoller.kt:38)
at com.atlassian.jira.migration.tracking.polling.AbstractPoller$startPolling$1.invoke(AbstractPoller.kt:38)
at com.atlassian.jira.migration.tracking.utils.ThreadUtils.safeExecutePeriodicallyUntilStopped(ThreadUtils.kt:39)
at com.atlassian.jira.migration.tracking.polling.AbstractPoller.startPolling(AbstractPoller.kt:37)
at com.atlassian.jira.migration.tracking.MigrationTracker.addAndStartWorkPoller$lambda$4$lambda$3(MigrationTracker.kt:78)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
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)
The migration then aborts with an error.
Regards
I don't see any bug or kba to this error so I will assume this is something new.
com.opensymphony.workflow.loader.ConditionsDescriptor cannot be cast to com.opensymphony.workflow.loader.ConditionDescriptor
Conditions can be "sub-grouped" in the workflow, by either "all of" or "any of". I think this is what this is about. Either, Cloud doesn't have or know about the ability to "group" conditions, or it's in a format it doesn't know how to work with, or, maybe you're using a plugin which is not compatible with Cloud, and it ends up creating an empty group that it doesn't know how to handle, or it's something else.
You might try to remove the condition groups from the workflow(s) and see if it works. Ultimately it might be good to throw a ticket to Atlassian so that they can include this in the KBA as well, because I'm pretty much convinced it has to do with condition groups. (Because those are the classes inside the workflow descriptor, and I dealt with those classes a few times.)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.