>From Glenn Galvizo <[email protected]>: Glenn Galvizo has submitted this change. ( https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17223 )
Change subject: [NO-ISSUE][COMP] Deep-copy fix in array index recognition ...................................................................... [NO-ISSUE][COMP] Deep-copy fix in array index recognition - user model changes: no - storage format changes: no - interface changes: no Change-Id: I217dfed91b8af814c380b99537789b17e8d0a3a6 Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17223 Tested-by: Ali Alsuliman <[email protected]> Reviewed-by: Ali Alsuliman <[email protected]> --- M asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/array/AbstractOperatorFromSubplanRewrite.java 1 file changed, 19 insertions(+), 6 deletions(-) Approvals: Ali Alsuliman: Looks good to me, approved; Verified Anon. E. Moose #1000171: diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/array/AbstractOperatorFromSubplanRewrite.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/array/AbstractOperatorFromSubplanRewrite.java index ba70aff..9a370c6 100644 --- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/array/AbstractOperatorFromSubplanRewrite.java +++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/array/AbstractOperatorFromSubplanRewrite.java @@ -156,9 +156,7 @@ switch (workingOriginalOperator.getOperatorTag()) { case UNNEST: UnnestOperator originalUnnest = (UnnestOperator) workingOriginalOperator; - UnnestOperator newUnnest = - new UnnestOperator(originalUnnest.getVariable(), originalUnnest.getExpressionRef()); - newUnnest.setSourceLocation(sourceLocation); + UnnestOperator newUnnest = (UnnestOperator) OperatorManipulationUtil.deepCopy(originalUnnest); workingNewOperator.getInputs().add(new MutableObject<>(newUnnest)); workingNewOperator = newUnnest; bottommostNewUnnest = (UnnestOperator) workingNewOperator; @@ -166,8 +164,7 @@ case ASSIGN: AssignOperator originalAssign = (AssignOperator) workingOriginalOperator; - AssignOperator newAssign = - new AssignOperator(originalAssign.getVariables(), originalAssign.getExpressions()); + AssignOperator newAssign = (AssignOperator) OperatorManipulationUtil.deepCopy(originalAssign); newAssign.setSourceLocation(sourceLocation); workingNewOperator.getInputs().add(new MutableObject<>(newAssign)); workingNewOperator = newAssign; @@ -508,7 +505,7 @@ if (splitIntoConjuncts(conjunct.getValue(), innerExprConjuncts)) { conjuncts.addAll(innerExprConjuncts); } else { - conjuncts.add(conjunct); + conjuncts.add(new MutableObject<>(conjunct.getValue().cloneExpression())); } } return true; -- To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17223 To unsubscribe, or for help writing mail filters, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Change-Id: I217dfed91b8af814c380b99537789b17e8d0a3a6 Gerrit-Change-Number: 17223 Gerrit-PatchSet: 2 Gerrit-Owner: Glenn Galvizo <[email protected]> Gerrit-Reviewer: Ali Alsuliman <[email protected]> Gerrit-Reviewer: Anon. E. Moose #1000171 Gerrit-Reviewer: Glenn Galvizo <[email protected]> Gerrit-Reviewer: Jenkins <[email protected]> Gerrit-MessageType: merged
