impala-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zach Amsden (Code Review)" <>
Subject [Impala-ASF-CR] IMPALA-4864 Speed up single slot predicates with dictionaries
Date Fri, 16 Jun 2017 23:43:17 GMT
Zach Amsden has posted comments on this change.

Change subject: IMPALA-4864 Speed up single slot predicates with dictionaries

Patch Set 18:


I could remove the conjunct cost propagation to the backend, but there doesn't seem to be
much else to try here.  I fought hard for this one but was unable to get a clear win.

Special purpose benchmarks (filtered out rows which do timestamp / string conversion) might
show a benefit, but is it worth the cost in terms of complexity?
File be/src/exec/

Line 738:     runtime_filter_position_map_.find(scalar_reader->slot_desc_->id());
use slot_desc->id() instead of scalar_reader->slot_desc

Line 913:     if (conjuncts == nullptr && runtime_filters.size() == 0) continue;
bug (rare but possible if runtime filters get disabled): deferred_dict_init_list.push_back(scalar_reader)
File be/src/exec/parquet-scratch-tuple-batch.h:

Line 90:           &tuple_mem));
All diffs here could be reverted as using a spare byte in scratch tuple was discontinued.
 Should not make a difference overall to perf however.
File common/thrift/PlanNodes.thrift:

Line 516:   25: optional list<i32> conjunct_costs
This was a desperate attempt to catch a win which didn't seem to pay off.

To view, visit
To unsubscribe, visit

Gerrit-MessageType: comment
Gerrit-Change-Id: I65981c89e5292086809ec1268f5a273f4c1fe054
Gerrit-PatchSet: 18
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Zach Amsden <>
Gerrit-Reviewer: Joe McDonnell <>
Gerrit-Reviewer: Marcel Kornacker <>
Gerrit-Reviewer: Michael Ho <>
Gerrit-Reviewer: Tim Armstrong <>
Gerrit-Reviewer: Zach Amsden <>
Gerrit-HasComments: Yes

View raw message