[ https://issues.apache.org/jira/browse/OOZIE-3561?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16979311#comment-16979311 ]
Denes Bodo commented on OOZIE-3561: ----------------------------------- I managed to reproduce the issue by using only unit tests: # Create a workflow with similar content: {noformat} <workflow-app xmlns="uri:oozie:workflow:0.5" name="test-wf"> <start to="a1"/> <action name="a1"><fs><mkdir path='/tmp'/></fs><ok to="a2"/><error to="a2"/></action> <action name="a2"><fs><mkdir path='/tmp'/></fs><ok to="a3"/><error to="a3"/></action> <action name="a3"><fs><mkdir path='/tmp'/></fs><ok to="z"/><error to="z"/></action> <end name="z"/> </workflow-app> {noformat} # create a test like: {code:java} public void test40ActionsInARow() throws WorkflowException, IOException { LiteWorkflowAppParser parser = newLiteWorkflowAppParser(); try { parser.validateAndParse(IOUtils.getResourceAsReader( "wf-actions-40.xml", -1), new Configuration()); } catch (final WorkflowException e) { e.printStackTrace(); Assert.fail("This workflow has to be correct."); } } {code} With 40 actions, the check couldn't finish within 10 minutes. > Forkjoin validation is slow when there are many actions in chain > ---------------------------------------------------------------- > > Key: OOZIE-3561 > URL: https://issues.apache.org/jira/browse/OOZIE-3561 > Project: Oozie > Issue Type: Bug > Components: core > Affects Versions: 5.1.0 > Reporter: Denes Bodo > Assignee: Denes Bodo > Priority: Critical > Labels: performance > > In case we have a workflow which has, let's say, 80 actions after each other: > {{a1 -> a2 -> ... a80}} > then the validator code "never" finishes. > Currently the validation (in my understanding) does depth first checks from > the start node and runs in time of n! . This is confirmed as when we split > this huge workflow into two 40-element workflow then we get 2x ~40!-step in > validation instead of ~80! steps. > Guys, could you please confirm or disprove my theory? > Thanks -- This message was sent by Atlassian Jira (v8.3.4#803005)