This is an automated email from the ASF dual-hosted git repository. mboehm7 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/systemml.git
commit 96a719bc384f0c60dc1994be49d72d91d2031dea Author: Matthias Boehm <mboe...@gmail.com> AuthorDate: Tue May 12 22:26:14 2020 +0200 [SYSTEMDS-238] Fix lineage merge on parfor w/ conditional control flow This patch makes a minor robustness fix to the parfor lineage merge for the case that certain workers did not make any updates of result variables due to conditional control flow in the parfor body. --- .../org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java b/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java index 1c98c34..812cf2c 100644 --- a/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java +++ b/src/main/java/org/apache/sysds/runtime/controlprogram/ParForProgramBlock.java @@ -1351,7 +1351,8 @@ public class ParForProgramBlock extends ForProgramBlock LineageItem current = lineages[0].get(var._name); for( int i=1; i<lineages.length; i++ ) { LineageItem next = lineages[i].get(var._name); - current = LineageItemUtils.replace(next, retIn, current); + if( next != null ) //robustness for cond. control flow + current = LineageItemUtils.replace(next, retIn, current); } ec.getLineage().set(var._name, current); }