Skip to content

Commit 47ee04d

Browse files
committed
upd
1 parent 4c78bad commit 47ee04d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+257
-260
lines changed

be/src/vec/exprs/lambda_function/lambda_function.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class LambdaFunction {
3838
}
3939

4040
virtual doris::Status execute(VExprContext* context, const doris::vectorized::Block* block,
41-
Selector* selector, size_t count, ColumnPtr& result_column,
41+
const Selector* selector, size_t count, ColumnPtr& result_column,
4242
const DataTypePtr& result_type,
4343
const VExprSPtrs& children) const = 0;
4444

be/src/vec/exprs/lambda_function/varray_filter_function.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ class ArrayFilterFunction : public LambdaFunction {
5353
std::string get_name() const override { return name; }
5454

5555
doris::Status execute(VExprContext* context, const doris::vectorized::Block* block,
56-
Selector* expr_selector, size_t output_count, ColumnPtr& result_column,
57-
const DataTypePtr& result_type,
56+
const Selector* expr_selector, size_t output_count,
57+
ColumnPtr& result_column, const DataTypePtr& result_type,
5858
const VExprSPtrs& children) const override {
5959
///* array_filter(array, array<boolean>) *///
6060

be/src/vec/exprs/lambda_function/varray_map_function.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,9 @@ class ArrayMapFunction : public LambdaFunction {
7777

7878
std::string get_name() const override { return name; }
7979

80-
Status execute(VExprContext* context, const vectorized::Block* block, Selector* expr_selector,
81-
size_t count, ColumnPtr& result_column, const DataTypePtr& result_type,
82-
const VExprSPtrs& children) const override {
80+
Status execute(VExprContext* context, const vectorized::Block* block,
81+
const Selector* expr_selector, size_t count, ColumnPtr& result_column,
82+
const DataTypePtr& result_type, const VExprSPtrs& children) const override {
8383
LambdaArgs args_info;
8484
// collect used slot ref in lambda function body
8585
std::vector<int>& output_slot_ref_indexs = args_info.output_slot_ref_indexs;

be/src/vec/exprs/lambda_function/varray_sort_function.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ class ArraySortFunction : public LambdaFunction {
6767

6868
std::string get_name() const override { return name; }
6969

70-
Status execute(VExprContext* context, const vectorized::Block* block, Selector* expr_selector,
71-
size_t count, ColumnPtr& result_column, const DataTypePtr& result_type,
72-
const VExprSPtrs& children) const override {
70+
Status execute(VExprContext* context, const vectorized::Block* block,
71+
const Selector* expr_selector, size_t count, ColumnPtr& result_column,
72+
const DataTypePtr& result_type, const VExprSPtrs& children) const override {
7373
///* array_sort(lambda, arg) *///
7474

7575
DCHECK_EQ(children.size(), 2);

be/src/vec/exprs/short_circuit_evaluation_expr.cpp

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ std::string ShortCircuitExpr::debug_string() const {
8989
// These are issues with the exprs themselves, but for convenience, we handle this case uniformly in short-circuit expr.
9090
/// TODO: Once all exprs support size-0 columns in the future, this function can be removed.
9191
[[nodiscard]] Status try_early_return_on_empty(const VExprSPtr& expr, VExprContext* context,
92-
const Block* block, Selector* selector, size_t count,
93-
ColumnPtr& result_columnn) {
92+
const Block* block, const Selector* selector,
93+
size_t count, ColumnPtr& result_columnn) {
9494
if (count == 0) {
9595
result_columnn = expr->execute_type(block)->create_column();
9696
DCHECK_EQ(result_columnn->size(), 0);
@@ -177,9 +177,9 @@ void execute_if_selector(const ColumnPtr& cond_column, const Selector* selector,
177177
condition_view.for_each(null_func, true_func, false_func);
178178
}
179179

180-
Status ShortCircuitIfExpr::execute_column(VExprContext* context, const Block* block,
181-
Selector* selector, size_t count,
182-
ColumnPtr& result_column) const {
180+
Status ShortCircuitIfExpr::execute_column_impl(VExprContext* context, const Block* block,
181+
const Selector* selector, size_t count,
182+
ColumnPtr& result_column) const {
183183
DCHECK(_open_finished || block == nullptr) << debug_string();
184184
DCHECK(selector == nullptr || selector->size() == count);
185185
ColumnPtr cond_column;
@@ -255,9 +255,9 @@ void execute_case_selector(const ColumnPtr& cond_column, const Selector* executo
255255
}
256256
}
257257

258-
Status ShortCircuitCaseExpr::execute_column(VExprContext* context, const Block* block,
259-
Selector* selector, size_t count,
260-
ColumnPtr& result_column) const {
258+
Status ShortCircuitCaseExpr::execute_column_impl(VExprContext* context, const Block* block,
259+
const Selector* selector, size_t count,
260+
ColumnPtr& result_column) const {
261261
DCHECK(_open_finished || block == nullptr) << debug_string();
262262
DCHECK(selector == nullptr || selector->size() == count);
263263

@@ -274,7 +274,7 @@ Status ShortCircuitCaseExpr::execute_column(VExprContext* context, const Block*
274274
std::vector<ColumnAndSelector> columns_and_selectors;
275275
columns_and_selectors.resize(num_branches);
276276

277-
Selector* executor_selector = selector;
277+
const Selector* executor_selector = selector;
278278
size_t executor_count = count;
279279

280280
Selector* current_selector = nullptr;
@@ -374,9 +374,9 @@ void execute_ifnull_selector(const ColumnPtr& cond_column, const Selector* selec
374374
condition_view.for_each(null_func, not_null_func);
375375
}
376376

377-
Status ShortCircuitIfNullExpr::execute_column(VExprContext* context, const Block* block,
378-
Selector* selector, size_t count,
379-
ColumnPtr& result_column) const {
377+
Status ShortCircuitIfNullExpr::execute_column_impl(VExprContext* context, const Block* block,
378+
const Selector* selector, size_t count,
379+
ColumnPtr& result_column) const {
380380
DCHECK(_open_finished || block == nullptr) << debug_string();
381381
DCHECK(selector == nullptr || selector->size() == count);
382382
ColumnPtr expr1_column;
@@ -440,17 +440,17 @@ void execute_coalesce_selector(const ColumnPtr& cond_column, const Selector* exe
440440
}
441441
}
442442

443-
Status ShortCircuitCoalesceExpr::execute_column(VExprContext* context, const Block* block,
444-
Selector* selector, size_t count,
445-
ColumnPtr& result_column) const {
443+
Status ShortCircuitCoalesceExpr::execute_column_impl(VExprContext* context, const Block* block,
444+
const Selector* selector, size_t count,
445+
ColumnPtr& result_column) const {
446446
DCHECK(_open_finished || block == nullptr) << debug_string();
447447
DCHECK(selector == nullptr || selector->size() == count);
448448

449449
std::vector<ColumnAndSelector> columns_and_selectors;
450450
columns_and_selectors.resize(_children.size() +
451451
1); // the last one represents the selector for null output
452452

453-
Selector* executor_selector = selector;
453+
const Selector* executor_selector = selector;
454454
size_t executor_count = count;
455455

456456
Selector* current_selector = nullptr;

be/src/vec/exprs/short_circuit_evaluation_expr.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ class ShortCircuitIfExpr final : public ShortCircuitExpr {
6464

6565
const std::string& expr_name() const override { return IF_NAME; }
6666

67-
Status execute_column(VExprContext* context, const Block* block, Selector* selector,
68-
size_t count, ColumnPtr& result_column) const override;
67+
Status execute_column_impl(VExprContext* context, const Block* block, const Selector* selector,
68+
size_t count, ColumnPtr& result_column) const override;
6969

7070
private:
7171
inline static const std::string IF_NAME = "if";
@@ -76,8 +76,8 @@ class ShortCircuitCaseExpr final : public ShortCircuitExpr {
7676
ShortCircuitCaseExpr(const TExprNode& node);
7777
~ShortCircuitCaseExpr() override = default;
7878
const std::string& expr_name() const override { return CASE_NAME; }
79-
Status execute_column(VExprContext* context, const Block* block, Selector* selector,
80-
size_t count, ColumnPtr& result_column) const override;
79+
Status execute_column_impl(VExprContext* context, const Block* block, const Selector* selector,
80+
size_t count, ColumnPtr& result_column) const override;
8181

8282
private:
8383
const bool _has_else_expr;
@@ -91,8 +91,8 @@ class ShortCircuitIfNullExpr final : public ShortCircuitExpr {
9191
~ShortCircuitIfNullExpr() override = default;
9292

9393
const std::string& expr_name() const override { return IFNULL_NAME; }
94-
Status execute_column(VExprContext* context, const Block* block, Selector* selector,
95-
size_t count, ColumnPtr& result_column) const override;
94+
Status execute_column_impl(VExprContext* context, const Block* block, const Selector* selector,
95+
size_t count, ColumnPtr& result_column) const override;
9696

9797
private:
9898
inline static const std::string IFNULL_NAME = "ifnull";
@@ -104,8 +104,8 @@ class ShortCircuitCoalesceExpr final : public ShortCircuitExpr {
104104
ShortCircuitCoalesceExpr(const TExprNode& node) : ShortCircuitExpr(node) {}
105105
~ShortCircuitCoalesceExpr() override = default;
106106
const std::string& expr_name() const override { return COALESCE_NAME; }
107-
Status execute_column(VExprContext* context, const Block* block, Selector* selector,
108-
size_t count, ColumnPtr& result_column) const override;
107+
Status execute_column_impl(VExprContext* context, const Block* block, const Selector* selector,
108+
size_t count, ColumnPtr& result_column) const override;
109109

110110
private:
111111
inline static const std::string COALESCE_NAME = "coalesce";

be/src/vec/exprs/vbitmap_predicate.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ doris::Status vectorized::VBitmapPredicate::open(doris::RuntimeState* state,
7676
}
7777

7878
Status VBitmapPredicate::_do_execute(VExprContext* context, const Block* block,
79-
const uint8_t* __restrict filter, Selector* selector,
79+
const uint8_t* __restrict filter, const Selector* selector,
8080
size_t count, ColumnPtr& result_column) const {
8181
DCHECK(_open_finished || block == nullptr);
8282
DCHECK(!(filter != nullptr && selector != nullptr))
@@ -108,9 +108,9 @@ Status VBitmapPredicate::_do_execute(VExprContext* context, const Block* block,
108108
return Status::OK();
109109
}
110110

111-
Status VBitmapPredicate::execute_column(VExprContext* context, const Block* block,
112-
Selector* selector, size_t count,
113-
ColumnPtr& result_column) const {
111+
Status VBitmapPredicate::execute_column_impl(VExprContext* context, const Block* block,
112+
const Selector* selector, size_t count,
113+
ColumnPtr& result_column) const {
114114
return _do_execute(context, block, nullptr, selector, count, result_column);
115115
}
116116

be/src/vec/exprs/vbitmap_predicate.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ class VBitmapPredicate final : public VExpr {
4949

5050
~VBitmapPredicate() override = default;
5151

52-
Status execute_column(VExprContext* context, const Block* block, Selector* selector,
53-
size_t count, ColumnPtr& result_column) const override;
52+
Status execute_column_impl(VExprContext* context, const Block* block, const Selector* selector,
53+
size_t count, ColumnPtr& result_column) const override;
5454
Status execute_runtime_filter(VExprContext* context, const Block* block,
5555
const uint8_t* __restrict filter, size_t count,
5656
ColumnPtr& result_column, ColumnPtr* arg_column) const override;
@@ -78,7 +78,7 @@ class VBitmapPredicate final : public VExpr {
7878

7979
private:
8080
Status _do_execute(VExprContext* context, const Block* block, const uint8_t* __restrict filter,
81-
Selector* selector, size_t count, ColumnPtr& result_column) const;
81+
const Selector* selector, size_t count, ColumnPtr& result_column) const;
8282
std::shared_ptr<BitmapFilterFuncBase> _filter;
8383
inline static const std::string EXPR_NAME = "bitmap_predicate";
8484
};

be/src/vec/exprs/vbloom_predicate.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ void VBloomPredicate::close(VExprContext* context, FunctionContext::FunctionStat
7171
}
7272

7373
Status VBloomPredicate::_do_execute(VExprContext* context, const Block* block,
74-
const uint8_t* __restrict filter, Selector* selector,
74+
const uint8_t* __restrict filter, const Selector* selector,
7575
size_t count, ColumnPtr& result_column) const {
7676
DCHECK(_open_finished || block == nullptr);
7777
DCHECK(!(filter != nullptr && selector != nullptr))
@@ -95,9 +95,9 @@ Status VBloomPredicate::_do_execute(VExprContext* context, const Block* block,
9595
return Status::OK();
9696
}
9797

98-
Status VBloomPredicate::execute_column(VExprContext* context, const Block* block,
99-
Selector* selector, size_t count,
100-
ColumnPtr& result_column) const {
98+
Status VBloomPredicate::execute_column_impl(VExprContext* context, const Block* block,
99+
const Selector* selector, size_t count,
100+
ColumnPtr& result_column) const {
101101
return _do_execute(context, block, nullptr, selector, count, result_column);
102102
}
103103

be/src/vec/exprs/vbloom_predicate.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ class VBloomPredicate final : public VExpr {
4444
VBloomPredicate(const TExprNode& node);
4545
~VBloomPredicate() override = default;
4646

47-
Status execute_column(VExprContext* context, const Block* block, Selector* selector,
48-
size_t count, ColumnPtr& result_column) const override;
47+
Status execute_column_impl(VExprContext* context, const Block* block, const Selector* selector,
48+
size_t count, ColumnPtr& result_column) const override;
4949

5050
Status execute_runtime_filter(VExprContext* context, const Block* block,
5151
const uint8_t* __restrict filter, size_t count,
@@ -64,7 +64,7 @@ class VBloomPredicate final : public VExpr {
6464

6565
private:
6666
Status _do_execute(VExprContext* context, const Block* block, const uint8_t* __restrict filter,
67-
Selector* selector, size_t count, ColumnPtr& result_column) const;
67+
const Selector* selector, size_t count, ColumnPtr& result_column) const;
6868

6969
std::shared_ptr<BloomFilterFuncBase> _filter;
7070
inline static const std::string EXPR_NAME = "bloom_predicate";

0 commit comments

Comments
 (0)