>From Ali Alsuliman <[email protected]>:

Attention is currently required from: [email protected].
Ali Alsuliman has posted comments on this change. ( 
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100 )

Change subject: [ASTERIXDB-3531][COMP] Push projections into unnest operator
......................................................................


Patch Set 8:

(6 comments)

File 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/AbstractUnnestNonMapOperator.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100/comment/2752f55e_317af48c
PS8, Line 102: public VariablePropagationPolicy getVariablePropagationPolicy() {
We can use 'FilteredVariablePropagationPolicy':
if (isProjectPushed()) {
  return FilteredVariablePropagationPolicy(getProjectVariables());
}
return new VariablePropagationPolicy() {
...


File 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitorJson.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100/comment/03e974cd_67eeaee1
PS8, Line 1098: "project-variables"
We can replace this with PROJECT_VARIABLES_FIELD


File 
hyracks-fullstack/algebricks/algebricks-rewriter/src/main/java/org/apache/hyracks/algebricks/rewriter/rules/EmbedProjectRule.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100/comment/1af9afa4_ceb20b0f
PS8, Line 49: LogicalOperatorTag.UNNEST
How about LogicalOperatorTag.LEFT_OUTER_UNNEST?


File 
hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/std/UnnestRuntimeFactory.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100/comment/af70aa58_a8cb8508
PS8, Line 75: projectionList.length
Is there a test case where projectionList is empty (because all variables are 
projected away)?


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100/comment/d0e63d85_cf263e0f
PS8, Line 90: "unnest " + outCol + " <- " + unnestingFactory;
Change it to:
"unnest " + outCol + (positionalCol >= 0 ? " at " + positionalCol : "") + " <- 
" + unnestingFactory + " project: " + projectionList;


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100/comment/04cc8543_3abec04a
PS8, Line 149: for (int f = 0; f < projectionList.length; f++) {
We can simplify it:
int col = projectionList[f];
if (col == outCol) {

} else if (col == positionalCol) {

} else {

}

outColPos and positionalColIndex can be removed.



--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19100
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: I83842976792f54017eff60fcc597bdd4ec6dc8c9
Gerrit-Change-Number: 19100
Gerrit-PatchSet: 8
Gerrit-Owner: [email protected]
Gerrit-Reviewer: Ali Alsuliman <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Attention: [email protected]
Gerrit-Comment-Date: Tue, 03 Dec 2024 00:35:52 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment

Reply via email to