MCPcopy Create free account
hub / github.com/apache/impala / Insert

Method Insert

be/src/exec/filter-context.cc:91–107  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

89}
90
91void FilterContext::Insert(TupleRow* row) const noexcept {
92 if (filter->is_bloom_filter()) {
93 if (local_bloom_filter == nullptr) return;
94 void* val = expr_eval->GetValue(row);
95 uint32_t filter_hash = RawValue::GetHashValueFastHash32(
96 val, expr_eval->root().type(), RuntimeFilterBank::DefaultHashSeed());
97 local_bloom_filter->Insert(filter_hash);
98 } else if (filter->is_min_max_filter()) {
99 if (local_min_max_filter == nullptr || local_min_max_filter->AlwaysTrue()) return;
100 void* val = expr_eval->GetValue(row);
101 local_min_max_filter->Insert(val);
102 } else {
103 DCHECK(filter->is_in_list_filter());
104 if (local_in_list_filter == nullptr || local_in_list_filter->AlwaysTrue()) return;
105 local_in_list_filter->Insert(expr_eval->GetValue(row));
106 }
107}
108
109void FilterContext::InsertPerCompareOp(TupleRow* row) const noexcept {
110 if (filter->getCompareOp() == extdatasource::TComparisonOp::type::EQ) {

Callers 9

InsertRuntimeFiltersMethod · 0.45
FOREACH_ROW_LIMITFunction · 0.45
NullBuildRowTestMethod · 0.45
BasicTestMethod · 0.45
ScanTestMethod · 0.45
GrowTableTestMethod · 0.45
InsertFullTestMethod · 0.45

Calls 7

rootMethod · 0.80
is_bloom_filterMethod · 0.45
GetValueMethod · 0.45
typeMethod · 0.45
is_min_max_filterMethod · 0.45
AlwaysTrueMethod · 0.45
is_in_list_filterMethod · 0.45

Tested by 7

NullBuildRowTestMethod · 0.36
BasicTestMethod · 0.36
ScanTestMethod · 0.36
GrowTableTestMethod · 0.36
InsertFullTestMethod · 0.36