-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3486/#review4635
-----------------------------------------------------------


a couple of minor comments, other than that looks good


trunk/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java
<https://reviews.apache.org/r/3486/#comment10307>

    all these changes from private to public seem unnecessary



trunk/core/src/test/java/org/apache/oozie/service/TestLiteWorkflowAppService.java
<https://reviews.apache.org/r/3486/#comment10308>

    several false changes in this file


- Alejandro


On 2012-01-26 22:42:27, Virag Kothari wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/3486/
> -----------------------------------------------------------
> 
> (Updated 2012-01-26 22:42:27)
> 
> 
> Review request for oozie, Mohammad Islam and Angelo K. Huang.
> 
> 
> Summary
> -------
> 
> Validate fork and join at wf submission time
> https://issues.apache.org/jira/browse/OOZIE-636
> 
> Brief description of algo:
> 
> A modified dfs algorithm is used. Two stacks, one for dfs traversal and other 
> for maintaining fork join status, are kept.  When a fork is encountered 
> during traversal, it is added to the forkjoin stack and number of paths 
> associated with the fork is also stored.  When a node’s child is seen as a 
> join, the join is added to the forkJoin stack and the no. of paths to it is 
> updated. When the number of paths for fork and join are equal, then the 
> fork/join pair is removed from the forkJoin stack and join is pushed to the 
> dfsStack.
> 
> Nodes other than fork and join are only pushed to the dfs stack.
> If a action node is seen, only the node's "ok-to" transition is considered
> 
> 
> While(!stack.isEmpty()){
>       Node n = DfsStack.pop()
>         n.traversed =  true;
>               If(n.type==fork){
>                       ForkJoinStack.push(new Element(n, n.paths) );
>               }
>               List<Node> childs = getUnvisitedChildnodes(n)   
>               For(Node n: childs){
>                       If (n.type==join){
>                       Boolean b=isForkJoinCleared(ForkJoinStack)      
>                       If(!b){
>                               Continue;
>                       }
>                       stack.push(n);
>                       n.traversed =  true;
>               }                               
> }
> 
> 
> This addresses bug OOZIE-636.
>     https://issues.apache.org/jira/browse/OOZIE-636
> 
> 
> Diffs
> -----
> 
>   trunk/core/src/test/resources/wf-schema-valid.xml 1236413 
>   
> trunk/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java
>  1236413 
>   
> trunk/core/src/test/java/org/apache/oozie/service/TestLiteWorkflowAppService.java
>  1236413 
>   
> trunk/core/src/test/java/org/apache/oozie/workflow/lite/TestLiteWorkflowAppParser.java
>  1236413 
>   trunk/core/src/main/java/org/apache/oozie/ErrorCode.java 1236413 
> 
> Diff: https://reviews.apache.org/r/3486/diff
> 
> 
> Testing
> -------
> 
> Test case to validate fork-join added
> 
> 
> Thanks,
> 
> Virag
> 
>

Reply via email to