Qifan Chen has posted comments on this change. ( http://gerrit.cloudera.org:8080/17815 )
Change subject: WIP IMPALA-10873: Push down EQUALS, IS NULL and IN-list predicate to ORC reader ...................................................................... Patch Set 2: (2 comments) http://gerrit.cloudera.org:8080/#/c/17815/2/be/src/exec/hdfs-orc-scanner.cc File be/src/exec/hdfs-orc-scanner.cc: http://gerrit.cloudera.org:8080/#/c/17815/2/be/src/exec/hdfs-orc-scanner.cc@1046 PS2, Line 1046: for (int i = 1; i < eval->root().children().size(); ++i) { : // ORC reader only supports pushing down predicates that constant parts are literal. : // We could get non-literal expr if expr rewrites are disabled. : if (!eval->root().GetChild(i)->IsLiteral()) return false; : in_list.emplace_back(GetLiteralSearchArguments( : eval, i, slot_desc->type(), &predicate_type)); : } > This loop is for generating 'in_list', the vector<orc::Literal>. The check Does the constant-folding happen in FE? http://gerrit.cloudera.org:8080/#/c/17815/2/fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java File fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java: http://gerrit.cloudera.org:8080/#/c/17815/2/fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java@603 PS2, Line 603: EQ > Sorry, I mean EQUALS predicate. We have a check at line 595. I see. Yeah, push directly is nice. Done. -- To view, visit http://gerrit.cloudera.org:8080/17815 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iaa89f080fe2e87d94fc8ea7f1be83e087fa34225 Gerrit-Change-Number: 17815 Gerrit-PatchSet: 2 Gerrit-Owner: Quanlong Huang <huangquanl...@gmail.com> Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com> Gerrit-Reviewer: Qifan Chen <qc...@cloudera.com> Gerrit-Reviewer: Quanlong Huang <huangquanl...@gmail.com> Gerrit-Comment-Date: Tue, 31 Aug 2021 13:06:33 +0000 Gerrit-HasComments: Yes