Michael Ho has uploaded this change for review. ( http://gerrit.cloudera.org:8080/8623
Change subject: IMPALA-6187: Fix missing conjuncts evaluation with empty projection ...................................................................... IMPALA-6187: Fix missing conjuncts evaluation with empty projection Previously, scanners will assume that there are no conjuncts associated with a scan node when there are no materialized slots (e.g. count(*)). This is not necessarily the case as one can write queries such as select count(*) from tpch.lineitem where rand() * 10 < 0; In which case, the conjuncts should still be evaluated once per row. This change fixes the problem in the short-circuit handling logic for count(*) to evaluate the conjuncts once per row and only commits a row to the output row batch if the conjuncts evaluate to true. Testing done: Added the example above to the scanner test Change-Id: Ib530f1fdcd2c6de699977db163b3f6eb38481517 --- M be/src/exec/hdfs-avro-scanner.cc M be/src/exec/hdfs-parquet-scanner.cc M be/src/exec/hdfs-rcfile-scanner.cc M be/src/exec/hdfs-scanner.cc M be/src/exec/hdfs-scanner.h M be/src/exec/hdfs-sequence-scanner.cc M be/src/exec/hdfs-text-scanner.cc M be/src/exec/kudu-scanner.cc M be/src/exec/kudu-scanner.h M testdata/workloads/functional-query/queries/QueryTest/scanners.test 10 files changed, 74 insertions(+), 18 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/23/8623/1 -- To view, visit http://gerrit.cloudera.org:8080/8623 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ib530f1fdcd2c6de699977db163b3f6eb38481517 Gerrit-Change-Number: 8623 Gerrit-PatchSet: 1 Gerrit-Owner: Michael Ho <k...@cloudera.com>