Coverage Report

Created: 2026-05-29 14:43

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/minmax_predicate.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <gen_cpp/internal_service.pb.h>
21
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_string.h"
24
#include "core/type_limit.h"
25
#include "exprs/filter_base.h"
26
27
namespace doris {
28
29
// only used in Runtime Filter
30
class MinMaxFuncBase : public FilterBase {
31
public:
32
30.4k
    MinMaxFuncBase(bool null_aware) : FilterBase(null_aware) {}
33
    virtual void insert_fixed_len(const ColumnPtr& column, size_t start) = 0;
34
    virtual void* get_max() = 0;
35
    virtual void* get_min() = 0;
36
    // assign minmax data
37
    virtual Status assign(void* min_data, void* max_data) = 0;
38
    // merge from other minmax_func
39
    virtual Status merge(MinMaxFuncBase* minmax_func) = 0;
40
30.4k
    virtual ~MinMaxFuncBase() = default;
41
42
    virtual void to_pb(PMinMaxFilter* filter) = 0;
43
};
44
45
template <class T, bool NeedMax = true, bool NeedMin = true>
46
class MinMaxNumFunc : public MinMaxFuncBase {
47
public:
48
    static constexpr bool IsStringValue = std::is_same_v<T, std::string>;
49
30.4k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
49
217
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
49
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
49
496
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
49
328
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
49
17.1k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
49
4.77k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
49
129
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIfLb1ELb1EEC2Eb
Line
Count
Source
49
290
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIdLb1ELb1EEC2Eb
Line
Count
Source
49
15
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
49
46
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
49
889
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
49
3.48k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
Line
Count
Source
49
6
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
49
1.34k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
49
99
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
49
811
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
49
236
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
49
43
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIjLb1ELb1EEC2Eb
Line
Count
Source
49
19
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIoLb1ELb1EEC2Eb
Line
Count
Source
49
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
50
1.34k
    ~MinMaxNumFunc() override = default;
51
52
7.65k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
7.65k
        if (column->is_nullable()) {
54
5.81k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
5.81k
            const auto& col = nullable->get_nested_column_ptr();
56
5.81k
            const auto& nullmap = nullable->get_null_map_data();
57
5.81k
            if (nullable->has_null()) {
58
4.92k
                _update_batch(col, nullmap, start);
59
4.92k
                _contain_null = true;
60
4.92k
            } else {
61
887
                _update_batch(col, start);
62
887
            }
63
5.81k
        } else {
64
1.83k
            _update_batch(column, start);
65
1.83k
        }
66
7.65k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
24
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
24
        if (column->is_nullable()) {
54
24
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
24
            const auto& col = nullable->get_nested_column_ptr();
56
24
            const auto& nullmap = nullable->get_null_map_data();
57
24
            if (nullable->has_null()) {
58
24
                _update_batch(col, nullmap, start);
59
24
                _contain_null = true;
60
24
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
24
        } else {
64
0
            _update_batch(column, start);
65
0
        }
66
24
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
1
        if (column->is_nullable()) {
54
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
0
            const auto& col = nullable->get_nested_column_ptr();
56
0
            const auto& nullmap = nullable->get_null_map_data();
57
0
            if (nullable->has_null()) {
58
0
                _update_batch(col, nullmap, start);
59
0
                _contain_null = true;
60
0
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
1
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
184
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
184
        if (column->is_nullable()) {
54
173
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
173
            const auto& col = nullable->get_nested_column_ptr();
56
173
            const auto& nullmap = nullable->get_null_map_data();
57
173
            if (nullable->has_null()) {
58
135
                _update_batch(col, nullmap, start);
59
135
                _contain_null = true;
60
135
            } else {
61
38
                _update_batch(col, start);
62
38
            }
63
173
        } else {
64
11
            _update_batch(column, start);
65
11
        }
66
184
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
82
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
82
        if (column->is_nullable()) {
54
81
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
81
            const auto& col = nullable->get_nested_column_ptr();
56
81
            const auto& nullmap = nullable->get_null_map_data();
57
81
            if (nullable->has_null()) {
58
81
                _update_batch(col, nullmap, start);
59
81
                _contain_null = true;
60
81
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
81
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
82
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
4.89k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
4.89k
        if (column->is_nullable()) {
54
3.51k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3.51k
            const auto& col = nullable->get_nested_column_ptr();
56
3.51k
            const auto& nullmap = nullable->get_null_map_data();
57
3.51k
            if (nullable->has_null()) {
58
2.80k
                _update_batch(col, nullmap, start);
59
2.80k
                _contain_null = true;
60
2.80k
            } else {
61
716
                _update_batch(col, start);
62
716
            }
63
3.51k
        } else {
64
1.38k
            _update_batch(column, start);
65
1.38k
        }
66
4.89k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
1.02k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
1.02k
        if (column->is_nullable()) {
54
909
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
909
            const auto& col = nullable->get_nested_column_ptr();
56
909
            const auto& nullmap = nullable->get_null_map_data();
57
909
            if (nullable->has_null()) {
58
881
                _update_batch(col, nullmap, start);
59
881
                _contain_null = true;
60
881
            } else {
61
28
                _update_batch(col, start);
62
28
            }
63
909
        } else {
64
113
            _update_batch(column, start);
65
113
        }
66
1.02k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
38
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
38
        if (column->is_nullable()) {
54
8
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
8
            const auto& col = nullable->get_nested_column_ptr();
56
8
            const auto& nullmap = nullable->get_null_map_data();
57
8
            if (nullable->has_null()) {
58
8
                _update_batch(col, nullmap, start);
59
8
                _contain_null = true;
60
8
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
30
        } else {
64
30
            _update_batch(column, start);
65
30
        }
66
38
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
33
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
33
        if (column->is_nullable()) {
54
32
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
32
            const auto& col = nullable->get_nested_column_ptr();
56
32
            const auto& nullmap = nullable->get_null_map_data();
57
32
            if (nullable->has_null()) {
58
32
                _update_batch(col, nullmap, start);
59
32
                _contain_null = true;
60
32
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
32
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
33
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
7
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
7
        if (column->is_nullable()) {
54
6
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
6
            const auto& col = nullable->get_nested_column_ptr();
56
6
            const auto& nullmap = nullable->get_null_map_data();
57
6
            if (nullable->has_null()) {
58
2
                _update_batch(col, nullmap, start);
59
2
                _contain_null = true;
60
4
            } else {
61
4
                _update_batch(col, start);
62
4
            }
63
6
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
7
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
8
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
8
        if (column->is_nullable()) {
54
6
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
6
            const auto& col = nullable->get_nested_column_ptr();
56
6
            const auto& nullmap = nullable->get_null_map_data();
57
6
            if (nullable->has_null()) {
58
6
                _update_batch(col, nullmap, start);
59
6
                _contain_null = true;
60
6
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
6
        } else {
64
2
            _update_batch(column, start);
65
2
        }
66
8
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
52
227
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
227
        if (column->is_nullable()) {
54
65
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
65
            const auto& col = nullable->get_nested_column_ptr();
56
65
            const auto& nullmap = nullable->get_null_map_data();
57
65
            if (nullable->has_null()) {
58
63
                _update_batch(col, nullmap, start);
59
63
                _contain_null = true;
60
63
            } else {
61
2
                _update_batch(col, start);
62
2
            }
63
162
        } else {
64
162
            _update_batch(column, start);
65
162
        }
66
227
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
52
398
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
398
        if (column->is_nullable()) {
54
387
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
387
            const auto& col = nullable->get_nested_column_ptr();
56
387
            const auto& nullmap = nullable->get_null_map_data();
57
387
            if (nullable->has_null()) {
58
387
                _update_batch(col, nullmap, start);
59
387
                _contain_null = true;
60
387
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
387
        } else {
64
11
            _update_batch(column, start);
65
11
        }
66
398
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
3
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
3
        if (column->is_nullable()) {
54
3
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3
            const auto& col = nullable->get_nested_column_ptr();
56
3
            const auto& nullmap = nullable->get_null_map_data();
57
3
            if (nullable->has_null()) {
58
3
                _update_batch(col, nullmap, start);
59
3
                _contain_null = true;
60
3
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
3
        } else {
64
0
            _update_batch(column, start);
65
0
        }
66
3
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
52
342
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
342
        if (column->is_nullable()) {
54
294
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
294
            const auto& col = nullable->get_nested_column_ptr();
56
294
            const auto& nullmap = nullable->get_null_map_data();
57
294
            if (nullable->has_null()) {
58
236
                _update_batch(col, nullmap, start);
59
236
                _contain_null = true;
60
236
            } else {
61
58
                _update_batch(col, start);
62
58
            }
63
294
        } else {
64
48
            _update_batch(column, start);
65
48
        }
66
342
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
52
42
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
42
        if (column->is_nullable()) {
54
41
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
41
            const auto& col = nullable->get_nested_column_ptr();
56
41
            const auto& nullmap = nullable->get_null_map_data();
57
41
            if (nullable->has_null()) {
58
41
                _update_batch(col, nullmap, start);
59
41
                _contain_null = true;
60
41
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
41
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
42
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
52
203
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
203
        if (column->is_nullable()) {
54
174
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
174
            const auto& col = nullable->get_nested_column_ptr();
56
174
            const auto& nullmap = nullable->get_null_map_data();
57
174
            if (nullable->has_null()) {
58
174
                _update_batch(col, nullmap, start);
59
174
                _contain_null = true;
60
174
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
174
        } else {
64
29
            _update_batch(column, start);
65
29
        }
66
203
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
102
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
102
        if (column->is_nullable()) {
54
60
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
60
            const auto& col = nullable->get_nested_column_ptr();
56
60
            const auto& nullmap = nullable->get_null_map_data();
57
60
            if (nullable->has_null()) {
58
19
                _update_batch(col, nullmap, start);
59
19
                _contain_null = true;
60
41
            } else {
61
41
                _update_batch(col, start);
62
41
            }
63
60
        } else {
64
42
            _update_batch(column, start);
65
42
        }
66
102
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
52
20
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
20
        if (column->is_nullable()) {
54
19
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
19
            const auto& col = nullable->get_nested_column_ptr();
56
19
            const auto& nullmap = nullable->get_null_map_data();
57
19
            if (nullable->has_null()) {
58
19
                _update_batch(col, nullmap, start);
59
19
                _contain_null = true;
60
19
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
19
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
20
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
17
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
17
        if (column->is_nullable()) {
54
16
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
16
            const auto& col = nullable->get_nested_column_ptr();
56
16
            const auto& nullmap = nullable->get_null_map_data();
57
16
            if (nullable->has_null()) {
58
16
                _update_batch(col, nullmap, start);
59
16
                _contain_null = true;
60
16
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
16
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
17
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
1
        if (column->is_nullable()) {
54
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
0
            const auto& col = nullable->get_nested_column_ptr();
56
0
            const auto& nullmap = nullable->get_null_map_data();
57
0
            if (nullable->has_null()) {
58
0
                _update_batch(col, nullmap, start);
59
0
                _contain_null = true;
60
0
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
1
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
1
    }
67
68
16.3k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
16.3k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
16.3k
        if constexpr (NeedMin) {
71
16.3k
            if constexpr (IsStringValue) {
72
711
                if (other_minmax->_min < _min || !_min_value_set) {
73
31
                    _min = other_minmax->_min;
74
31
                    _min_value_set = true;
75
31
                }
76
15.6k
            } else if (other_minmax->_min < _min) {
77
1.16k
                _min = other_minmax->_min;
78
1.16k
            }
79
16.3k
        }
80
16.3k
        if constexpr (NeedMax) {
81
16.3k
            if (other_minmax->_max > _max) {
82
1.25k
                _max = other_minmax->_max;
83
1.25k
            }
84
16.3k
        }
85
86
16.3k
        _contain_null |= minmax_func->contain_null();
87
16.3k
        return Status::OK();
88
16.3k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
168
    Status merge(MinMaxFuncBase* minmax_func) override {
69
168
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
168
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
168
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
168
        }
80
168
        if constexpr (NeedMax) {
81
168
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
168
        }
85
86
168
        _contain_null |= minmax_func->contain_null();
87
168
        return Status::OK();
88
168
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
102
    Status merge(MinMaxFuncBase* minmax_func) override {
69
102
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
102
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
102
            } else if (other_minmax->_min < _min) {
77
6
                _min = other_minmax->_min;
78
6
            }
79
102
        }
80
102
        if constexpr (NeedMax) {
81
102
            if (other_minmax->_max > _max) {
82
9
                _max = other_minmax->_max;
83
9
            }
84
102
        }
85
86
102
        _contain_null |= minmax_func->contain_null();
87
102
        return Status::OK();
88
102
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
40
    Status merge(MinMaxFuncBase* minmax_func) override {
69
40
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
40
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
40
            } else if (other_minmax->_min < _min) {
77
14
                _min = other_minmax->_min;
78
14
            }
79
40
        }
80
40
        if constexpr (NeedMax) {
81
40
            if (other_minmax->_max > _max) {
82
12
                _max = other_minmax->_max;
83
12
            }
84
40
        }
85
86
40
        _contain_null |= minmax_func->contain_null();
87
40
        return Status::OK();
88
40
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
9.96k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
9.96k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
9.96k
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
9.96k
            } else if (other_minmax->_min < _min) {
77
863
                _min = other_minmax->_min;
78
863
            }
79
9.96k
        }
80
9.96k
        if constexpr (NeedMax) {
81
9.96k
            if (other_minmax->_max > _max) {
82
905
                _max = other_minmax->_max;
83
905
            }
84
9.96k
        }
85
86
9.96k
        _contain_null |= minmax_func->contain_null();
87
9.96k
        return Status::OK();
88
9.96k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
1.40k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
1.40k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
1.40k
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
1.40k
            } else if (other_minmax->_min < _min) {
77
100
                _min = other_minmax->_min;
78
100
            }
79
1.40k
        }
80
1.40k
        if constexpr (NeedMax) {
81
1.40k
            if (other_minmax->_max > _max) {
82
110
                _max = other_minmax->_max;
83
110
            }
84
1.40k
        }
85
86
1.40k
        _contain_null |= minmax_func->contain_null();
87
1.40k
        return Status::OK();
88
1.40k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
77
    Status merge(MinMaxFuncBase* minmax_func) override {
69
77
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
77
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
77
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
77
        }
80
77
        if constexpr (NeedMax) {
81
77
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
77
        }
85
86
77
        _contain_null |= minmax_func->contain_null();
87
77
        return Status::OK();
88
77
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
224
    Status merge(MinMaxFuncBase* minmax_func) override {
69
224
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
224
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
224
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
224
        }
80
224
        if constexpr (NeedMax) {
81
224
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
224
        }
85
86
224
        _contain_null |= minmax_func->contain_null();
87
224
        return Status::OK();
88
224
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
18
    Status merge(MinMaxFuncBase* minmax_func) override {
69
18
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
18
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
18
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
18
        }
80
18
        if constexpr (NeedMax) {
81
18
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
18
        }
85
86
18
        _contain_null |= minmax_func->contain_null();
87
18
        return Status::OK();
88
18
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
551
    Status merge(MinMaxFuncBase* minmax_func) override {
69
551
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
551
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
551
            } else if (other_minmax->_min < _min) {
77
34
                _min = other_minmax->_min;
78
34
            }
79
551
        }
80
551
        if constexpr (NeedMax) {
81
551
            if (other_minmax->_max > _max) {
82
39
                _max = other_minmax->_max;
83
39
            }
84
551
        }
85
86
551
        _contain_null |= minmax_func->contain_null();
87
551
        return Status::OK();
88
551
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
2.73k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
2.73k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
2.73k
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
2.73k
            } else if (other_minmax->_min < _min) {
77
132
                _min = other_minmax->_min;
78
132
            }
79
2.73k
        }
80
2.73k
        if constexpr (NeedMax) {
81
2.73k
            if (other_minmax->_max > _max) {
82
150
                _max = other_minmax->_max;
83
150
            }
84
2.73k
        }
85
86
2.73k
        _contain_null |= minmax_func->contain_null();
87
2.73k
        return Status::OK();
88
2.73k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
711
    Status merge(MinMaxFuncBase* minmax_func) override {
69
711
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
711
        if constexpr (NeedMin) {
71
711
            if constexpr (IsStringValue) {
72
711
                if (other_minmax->_min < _min || !_min_value_set) {
73
31
                    _min = other_minmax->_min;
74
31
                    _min_value_set = true;
75
31
                }
76
            } else if (other_minmax->_min < _min) {
77
                _min = other_minmax->_min;
78
            }
79
711
        }
80
711
        if constexpr (NeedMax) {
81
711
            if (other_minmax->_max > _max) {
82
15
                _max = other_minmax->_max;
83
15
            }
84
711
        }
85
86
711
        _contain_null |= minmax_func->contain_null();
87
711
        return Status::OK();
88
711
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
5
    Status merge(MinMaxFuncBase* minmax_func) override {
69
5
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
5
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
5
            } else if (other_minmax->_min < _min) {
77
5
                _min = other_minmax->_min;
78
5
            }
79
5
        }
80
5
        if constexpr (NeedMax) {
81
5
            if (other_minmax->_max > _max) {
82
5
                _max = other_minmax->_max;
83
5
            }
84
5
        }
85
86
5
        _contain_null |= minmax_func->contain_null();
87
5
        return Status::OK();
88
5
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
282
    Status merge(MinMaxFuncBase* minmax_func) override {
69
282
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
282
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
282
            } else if (other_minmax->_min < _min) {
77
6
                _min = other_minmax->_min;
78
6
            }
79
282
        }
80
282
        if constexpr (NeedMax) {
81
282
            if (other_minmax->_max > _max) {
82
4
                _max = other_minmax->_max;
83
4
            }
84
282
        }
85
86
282
        _contain_null |= minmax_func->contain_null();
87
282
        return Status::OK();
88
282
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
41
    Status merge(MinMaxFuncBase* minmax_func) override {
69
41
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
41
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
41
            } else if (other_minmax->_min < _min) {
77
4
                _min = other_minmax->_min;
78
4
            }
79
41
        }
80
41
        if constexpr (NeedMax) {
81
41
            if (other_minmax->_max > _max) {
82
4
                _max = other_minmax->_max;
83
4
            }
84
41
        }
85
86
41
        _contain_null |= minmax_func->contain_null();
87
41
        return Status::OK();
88
41
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
15
    Status merge(MinMaxFuncBase* minmax_func) override {
69
15
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
15
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
15
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
15
        }
80
15
        if constexpr (NeedMax) {
81
15
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
15
        }
85
86
15
        _contain_null |= minmax_func->contain_null();
87
15
        return Status::OK();
88
15
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
15
    Status merge(MinMaxFuncBase* minmax_func) override {
69
15
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
15
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
15
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
15
        }
80
15
        if constexpr (NeedMax) {
81
15
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
15
        }
85
86
15
        _contain_null |= minmax_func->contain_null();
87
15
        return Status::OK();
88
15
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
89
90
6.77k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
90
25
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
90
163
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
90
110
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
90
3.36k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
90
1.67k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
90
25
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
90
34
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
90
4
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
16
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
156
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
463
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
3
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
310
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
90
48
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
90
269
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
90
86
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
15
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_maxEv
Line
Count
Source
90
3
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_maxEv
Line
Count
Source
90
2
    void* get_max() override { return &_max; }
91
92
6.77k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
92
25
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
92
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
92
155
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
92
110
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
92
3.35k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
92
1.68k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
92
27
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
92
34
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
92
8
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
92
16
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
92
155
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
92
465
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
92
3
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
92
305
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
92
48
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
92
269
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
92
90
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
92
15
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_minEv
Line
Count
Source
92
3
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_minEv
Line
Count
Source
92
2
    void* get_min() override { return &_min; }
93
94
1.75k
    Status assign(void* min_data, void* max_data) override {
95
1.75k
        if constexpr (IsStringValue) {
96
47
            _min_value_set = true;
97
47
        }
98
1.75k
        _min = *(T*)min_data;
99
1.75k
        _max = *(T*)max_data;
100
1.75k
        return Status::OK();
101
1.75k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
33
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
33
        _min = *(T*)min_data;
99
33
        _max = *(T*)max_data;
100
33
        return Status::OK();
101
33
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
73
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
73
        _min = *(T*)min_data;
99
73
        _max = *(T*)max_data;
100
73
        return Status::OK();
101
73
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1.19k
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1.19k
        _min = *(T*)min_data;
99
1.19k
        _max = *(T*)max_data;
100
1.19k
        return Status::OK();
101
1.19k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
161
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
161
        _min = *(T*)min_data;
99
161
        _max = *(T*)max_data;
100
161
        return Status::OK();
101
161
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
3
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
3
        _min = *(T*)min_data;
99
3
        _max = *(T*)max_data;
100
3
        return Status::OK();
101
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
2
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
2
        _min = *(T*)min_data;
99
2
        _max = *(T*)max_data;
100
2
        return Status::OK();
101
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
94
57
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
57
        _min = *(T*)min_data;
99
57
        _max = *(T*)max_data;
100
57
        return Status::OK();
101
57
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
94
145
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
145
        _min = *(T*)min_data;
99
145
        _max = *(T*)max_data;
100
145
        return Status::OK();
101
145
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE6assignEPvS3_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE6assignEPvS8_
Line
Count
Source
94
47
    Status assign(void* min_data, void* max_data) override {
95
47
        if constexpr (IsStringValue) {
96
47
            _min_value_set = true;
97
47
        }
98
47
        _min = *(T*)min_data;
99
47
        _max = *(T*)max_data;
100
47
        return Status::OK();
101
47
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
94
11
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
11
        _min = *(T*)min_data;
99
11
        _max = *(T*)max_data;
100
11
        return Status::OK();
101
11
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE6assignEPvS4_
Line
Count
Source
94
11
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
11
        _min = *(T*)min_data;
99
11
        _max = *(T*)max_data;
100
11
        return Status::OK();
101
11
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
13
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
13
        _min = *(T*)min_data;
99
13
        _max = *(T*)max_data;
100
13
        return Status::OK();
101
13
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE6assignEPvS7_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
102
103
2.04k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
32
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
72
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
1.39k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
215
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
5
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
57
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
144
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
44
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
10
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
25
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
42
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIoLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
104
105
private:
106
2.04k
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
2.04k
        if constexpr (NeedMin) {
108
2.04k
            f(filter->mutable_min_val(), _min);
109
2.04k
        }
110
2.04k
        if constexpr (NeedMax) {
111
2.04k
            f(filter->mutable_max_val(), _max);
112
2.04k
        }
113
2.04k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7_set_pbIZNS_13get_convertorIaEEDavEUlPNS_12PColumnValueERKaE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
32
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
32
        if constexpr (NeedMin) {
108
32
            f(filter->mutable_min_val(), _min);
109
32
        }
110
32
        if constexpr (NeedMax) {
111
32
            f(filter->mutable_max_val(), _max);
112
32
        }
113
32
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
72
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
72
        if constexpr (NeedMin) {
108
72
            f(filter->mutable_min_val(), _min);
109
72
        }
110
72
        if constexpr (NeedMax) {
111
72
            f(filter->mutable_max_val(), _max);
112
72
        }
113
72
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
1.39k
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
1.39k
        if constexpr (NeedMin) {
108
1.39k
            f(filter->mutable_min_val(), _min);
109
1.39k
        }
110
1.39k
        if constexpr (NeedMax) {
111
1.39k
            f(filter->mutable_max_val(), _max);
112
1.39k
        }
113
1.39k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
215
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
215
        if constexpr (NeedMin) {
108
215
            f(filter->mutable_min_val(), _min);
109
215
        }
110
215
        if constexpr (NeedMax) {
111
215
            f(filter->mutable_max_val(), _max);
112
215
        }
113
215
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
5
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
5
        if constexpr (NeedMin) {
108
5
            f(filter->mutable_min_val(), _min);
109
5
        }
110
5
        if constexpr (NeedMax) {
111
5
            f(filter->mutable_max_val(), _max);
112
5
        }
113
5
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
57
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
57
        if constexpr (NeedMin) {
108
57
            f(filter->mutable_min_val(), _min);
109
57
        }
110
57
        if constexpr (NeedMax) {
111
57
            f(filter->mutable_max_val(), _max);
112
57
        }
113
57
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
144
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
144
        if constexpr (NeedMin) {
108
144
            f(filter->mutable_min_val(), _min);
109
144
        }
110
144
        if constexpr (NeedMax) {
111
144
            f(filter->mutable_max_val(), _max);
112
144
        }
113
144
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS6_EEDavEUlPNS_12PColumnValueERKS6_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
44
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
44
        if constexpr (NeedMin) {
108
44
            f(filter->mutable_min_val(), _min);
109
44
        }
110
44
        if constexpr (NeedMax) {
111
44
            f(filter->mutable_max_val(), _max);
112
44
        }
113
44
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
10
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
10
        if constexpr (NeedMin) {
108
10
            f(filter->mutable_min_val(), _min);
109
10
        }
110
10
        if constexpr (NeedMax) {
111
10
            f(filter->mutable_max_val(), _max);
112
10
        }
113
10
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
25
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
25
        if constexpr (NeedMin) {
108
25
            f(filter->mutable_min_val(), _min);
109
25
        }
110
25
        if constexpr (NeedMax) {
111
25
            f(filter->mutable_max_val(), _max);
112
25
        }
113
25
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
42
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
42
        if constexpr (NeedMin) {
108
42
            f(filter->mutable_min_val(), _min);
109
42
        }
110
42
        if constexpr (NeedMax) {
111
42
            f(filter->mutable_max_val(), _max);
112
42
        }
113
42
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS5_EEDavEUlPNS_12PColumnValueERKS5_E_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE7_set_pbIZNS_13get_convertorIjEEDavEUlPNS_12PColumnValueERKjE_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIoLb1ELb1EE7_set_pbIZNS_13get_convertorIoEEDavEUlPNS_12PColumnValueERKoE_EEvPNS_13PMinMaxFilterET_
114
115
    void _update_batch_string(const auto& column_string, const uint8_t* __restrict nullmap,
116
342
                              size_t start, size_t size) {
117
989
        for (size_t i = start; i < size; i++) {
118
647
            if (nullmap == nullptr || !nullmap[i]) {
119
619
                if constexpr (NeedMin) {
120
619
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
358
                        _min = column_string.get_data_at(i).to_string();
122
358
                        _min_value_set = true;
123
358
                    }
124
619
                }
125
619
                if constexpr (NeedMax) {
126
619
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
354
                        _max = column_string.get_data_at(i).to_string();
128
354
                    }
129
619
                }
130
619
            }
131
647
        }
132
342
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE20_update_batch_stringINS_9ColumnStrImEEEEvRKT_PKhmm
Line
Count
Source
116
1
                              size_t start, size_t size) {
117
9
        for (size_t i = start; i < size; i++) {
118
8
            if (nullmap == nullptr || !nullmap[i]) {
119
8
                if constexpr (NeedMin) {
120
8
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
1
                        _min = column_string.get_data_at(i).to_string();
122
1
                        _min_value_set = true;
123
1
                    }
124
8
                }
125
8
                if constexpr (NeedMax) {
126
8
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
8
                        _max = column_string.get_data_at(i).to_string();
128
8
                    }
129
8
                }
130
8
            }
131
8
        }
132
1
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE20_update_batch_stringINS_9ColumnStrIjEEEEvRKT_PKhmm
Line
Count
Source
116
341
                              size_t start, size_t size) {
117
980
        for (size_t i = start; i < size; i++) {
118
639
            if (nullmap == nullptr || !nullmap[i]) {
119
611
                if constexpr (NeedMin) {
120
611
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
357
                        _min = column_string.get_data_at(i).to_string();
122
357
                        _min_value_set = true;
123
357
                    }
124
611
                }
125
611
                if constexpr (NeedMax) {
126
611
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
346
                        _max = column_string.get_data_at(i).to_string();
128
346
                    }
129
611
                }
130
611
            }
131
639
        }
132
341
    }
133
134
2.72k
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2.72k
        const auto size = column->size();
136
2.72k
        if constexpr (std::is_same_v<T, std::string>) {
137
106
            if (column->is_column_string64()) {
138
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
1
                                     size);
140
105
            } else {
141
105
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
105
                                     size);
143
105
            }
144
2.62k
        } else {
145
2.62k
            const T* data = (T*)column->get_raw_data().data;
146
632k
            for (size_t i = start; i < size; i++) {
147
629k
                if constexpr (NeedMin) {
148
629k
                    _min = std::min(_min, *(data + i));
149
629k
                }
150
629k
                if constexpr (NeedMax) {
151
629k
                    _max = std::max(_max, *(data + i));
152
629k
                }
153
629k
            }
154
2.62k
        }
155
2.72k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
49
    void _update_batch(const ColumnPtr& column, size_t start) {
135
49
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
49
        } else {
145
49
            const T* data = (T*)column->get_raw_data().data;
146
152
            for (size_t i = start; i < size; i++) {
147
103
                if constexpr (NeedMin) {
148
103
                    _min = std::min(_min, *(data + i));
149
103
                }
150
103
                if constexpr (NeedMax) {
151
103
                    _max = std::max(_max, *(data + i));
152
103
                }
153
103
            }
154
49
        }
155
49
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
2.09k
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2.09k
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
2.09k
        } else {
145
2.09k
            const T* data = (T*)column->get_raw_data().data;
146
630k
            for (size_t i = start; i < size; i++) {
147
628k
                if constexpr (NeedMin) {
148
628k
                    _min = std::min(_min, *(data + i));
149
628k
                }
150
628k
                if constexpr (NeedMax) {
151
628k
                    _max = std::max(_max, *(data + i));
152
628k
                }
153
628k
            }
154
2.09k
        }
155
2.09k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
144
    void _update_batch(const ColumnPtr& column, size_t start) {
135
144
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
144
        } else {
145
144
            const T* data = (T*)column->get_raw_data().data;
146
664
            for (size_t i = start; i < size; i++) {
147
520
                if constexpr (NeedMin) {
148
520
                    _min = std::min(_min, *(data + i));
149
520
                }
150
520
                if constexpr (NeedMax) {
151
520
                    _max = std::max(_max, *(data + i));
152
520
                }
153
520
            }
154
144
        }
155
144
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
30
    void _update_batch(const ColumnPtr& column, size_t start) {
135
30
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
30
        } else {
145
30
            const T* data = (T*)column->get_raw_data().data;
146
92
            for (size_t i = start; i < size; i++) {
147
62
                if constexpr (NeedMin) {
148
62
                    _min = std::min(_min, *(data + i));
149
62
                }
150
62
                if constexpr (NeedMax) {
151
62
                    _max = std::max(_max, *(data + i));
152
62
                }
153
62
            }
154
30
        }
155
30
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
5
    void _update_batch(const ColumnPtr& column, size_t start) {
135
5
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
5
        } else {
145
5
            const T* data = (T*)column->get_raw_data().data;
146
12
            for (size_t i = start; i < size; i++) {
147
7
                if constexpr (NeedMin) {
148
7
                    _min = std::min(_min, *(data + i));
149
7
                }
150
7
                if constexpr (NeedMax) {
151
7
                    _max = std::max(_max, *(data + i));
152
7
                }
153
7
            }
154
5
        }
155
5
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
2
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
2
        } else {
145
2
            const T* data = (T*)column->get_raw_data().data;
146
8
            for (size_t i = start; i < size; i++) {
147
6
                if constexpr (NeedMin) {
148
6
                    _min = std::min(_min, *(data + i));
149
6
                }
150
6
                if constexpr (NeedMax) {
151
6
                    _max = std::max(_max, *(data + i));
152
6
                }
153
6
            }
154
2
        }
155
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
134
164
    void _update_batch(const ColumnPtr& column, size_t start) {
135
164
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
164
        } else {
145
164
            const T* data = (T*)column->get_raw_data().data;
146
477
            for (size_t i = start; i < size; i++) {
147
313
                if constexpr (NeedMin) {
148
313
                    _min = std::min(_min, *(data + i));
149
313
                }
150
313
                if constexpr (NeedMax) {
151
313
                    _max = std::max(_max, *(data + i));
152
313
                }
153
313
            }
154
164
        }
155
164
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
134
11
    void _update_batch(const ColumnPtr& column, size_t start) {
135
11
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
11
        } else {
145
11
            const T* data = (T*)column->get_raw_data().data;
146
45
            for (size_t i = start; i < size; i++) {
147
34
                if constexpr (NeedMin) {
148
34
                    _min = std::min(_min, *(data + i));
149
34
                }
150
34
                if constexpr (NeedMax) {
151
34
                    _max = std::max(_max, *(data + i));
152
34
                }
153
34
            }
154
11
        }
155
11
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
134
106
    void _update_batch(const ColumnPtr& column, size_t start) {
135
106
        const auto size = column->size();
136
106
        if constexpr (std::is_same_v<T, std::string>) {
137
106
            if (column->is_column_string64()) {
138
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
1
                                     size);
140
105
            } else {
141
105
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
105
                                     size);
143
105
            }
144
        } else {
145
            const T* data = (T*)column->get_raw_data().data;
146
            for (size_t i = start; i < size; i++) {
147
                if constexpr (NeedMin) {
148
                    _min = std::min(_min, *(data + i));
149
                }
150
                if constexpr (NeedMax) {
151
                    _max = std::max(_max, *(data + i));
152
                }
153
            }
154
        }
155
106
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
134
29
    void _update_batch(const ColumnPtr& column, size_t start) {
135
29
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
29
        } else {
145
29
            const T* data = (T*)column->get_raw_data().data;
146
145
            for (size_t i = start; i < size; i++) {
147
116
                if constexpr (NeedMin) {
148
116
                    _min = std::min(_min, *(data + i));
149
116
                }
150
116
                if constexpr (NeedMax) {
151
116
                    _max = std::max(_max, *(data + i));
152
116
                }
153
116
            }
154
29
        }
155
29
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
84
    void _update_batch(const ColumnPtr& column, size_t start) {
135
84
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
84
        } else {
145
84
            const T* data = (T*)column->get_raw_data().data;
146
237
            for (size_t i = start; i < size; i++) {
147
153
                if constexpr (NeedMin) {
148
153
                    _min = std::min(_min, *(data + i));
149
153
                }
150
153
                if constexpr (NeedMax) {
151
153
                    _max = std::max(_max, *(data + i));
152
153
                }
153
153
            }
154
84
        }
155
84
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
156
157
4.92k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
4.92k
        const auto size = column->size();
159
4.92k
        if constexpr (std::is_same_v<T, std::string>) {
160
236
            if (column->is_column_string64()) {
161
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
0
                                     start, size);
163
236
            } else {
164
236
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
236
                                     start, size);
166
236
            }
167
4.69k
        } else {
168
4.69k
            const T* data = (T*)column->get_raw_data().data;
169
6.91M
            for (size_t i = start; i < size; i++) {
170
6.91M
                if (!nullmap[i]) {
171
6.87M
                    if constexpr (NeedMin) {
172
6.87M
                        _min = std::min(_min, *(data + i));
173
6.87M
                    }
174
6.87M
                    if constexpr (NeedMax) {
175
6.87M
                        _max = std::max(_max, *(data + i));
176
6.87M
                    }
177
6.87M
                }
178
6.91M
            }
179
4.69k
        }
180
4.92k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
24
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
24
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
24
        } else {
168
24
            const T* data = (T*)column->get_raw_data().data;
169
72
            for (size_t i = start; i < size; i++) {
170
48
                if (!nullmap[i]) {
171
32
                    if constexpr (NeedMin) {
172
32
                        _min = std::min(_min, *(data + i));
173
32
                    }
174
32
                    if constexpr (NeedMax) {
175
32
                        _max = std::max(_max, *(data + i));
176
32
                    }
177
32
                }
178
48
            }
179
24
        }
180
24
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
135
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
135
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
135
        } else {
168
135
            const T* data = (T*)column->get_raw_data().data;
169
470
            for (size_t i = start; i < size; i++) {
170
335
                if (!nullmap[i]) {
171
326
                    if constexpr (NeedMin) {
172
326
                        _min = std::min(_min, *(data + i));
173
326
                    }
174
326
                    if constexpr (NeedMax) {
175
326
                        _max = std::max(_max, *(data + i));
176
326
                    }
177
326
                }
178
335
            }
179
135
        }
180
135
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
81
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
81
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
81
        } else {
168
81
            const T* data = (T*)column->get_raw_data().data;
169
437
            for (size_t i = start; i < size; i++) {
170
356
                if (!nullmap[i]) {
171
287
                    if constexpr (NeedMin) {
172
287
                        _min = std::min(_min, *(data + i));
173
287
                    }
174
287
                    if constexpr (NeedMax) {
175
287
                        _max = std::max(_max, *(data + i));
176
287
                    }
177
287
                }
178
356
            }
179
81
        }
180
81
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
2.80k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
2.80k
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
2.80k
        } else {
168
2.80k
            const T* data = (T*)column->get_raw_data().data;
169
6.90M
            for (size_t i = start; i < size; i++) {
170
6.90M
                if (!nullmap[i]) {
171
6.86M
                    if constexpr (NeedMin) {
172
6.86M
                        _min = std::min(_min, *(data + i));
173
6.86M
                    }
174
6.86M
                    if constexpr (NeedMax) {
175
6.86M
                        _max = std::max(_max, *(data + i));
176
6.86M
                    }
177
6.86M
                }
178
6.90M
            }
179
2.80k
        }
180
2.80k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
880
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
880
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
880
        } else {
168
880
            const T* data = (T*)column->get_raw_data().data;
169
3.94k
            for (size_t i = start; i < size; i++) {
170
3.06k
                if (!nullmap[i]) {
171
2.72k
                    if constexpr (NeedMin) {
172
2.72k
                        _min = std::min(_min, *(data + i));
173
2.72k
                    }
174
2.72k
                    if constexpr (NeedMax) {
175
2.72k
                        _max = std::max(_max, *(data + i));
176
2.72k
                    }
177
2.72k
                }
178
3.06k
            }
179
880
        }
180
880
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
8
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
8
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
8
        } else {
168
8
            const T* data = (T*)column->get_raw_data().data;
169
20
            for (size_t i = start; i < size; i++) {
170
12
                if (!nullmap[i]) {
171
12
                    if constexpr (NeedMin) {
172
12
                        _min = std::min(_min, *(data + i));
173
12
                    }
174
12
                    if constexpr (NeedMax) {
175
12
                        _max = std::max(_max, *(data + i));
176
12
                    }
177
12
                }
178
12
            }
179
8
        }
180
8
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
32
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
32
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
32
        } else {
168
32
            const T* data = (T*)column->get_raw_data().data;
169
80
            for (size_t i = start; i < size; i++) {
170
48
                if (!nullmap[i]) {
171
40
                    if constexpr (NeedMin) {
172
40
                        _min = std::min(_min, *(data + i));
173
40
                    }
174
40
                    if constexpr (NeedMax) {
175
40
                        _max = std::max(_max, *(data + i));
176
40
                    }
177
40
                }
178
48
            }
179
32
        }
180
32
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
2
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
2
        } else {
168
2
            const T* data = (T*)column->get_raw_data().data;
169
10
            for (size_t i = start; i < size; i++) {
170
8
                if (!nullmap[i]) {
171
8
                    if constexpr (NeedMin) {
172
8
                        _min = std::min(_min, *(data + i));
173
8
                    }
174
8
                    if constexpr (NeedMax) {
175
8
                        _max = std::max(_max, *(data + i));
176
8
                    }
177
8
                }
178
8
            }
179
2
        }
180
2
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
6
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
6
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
6
        } else {
168
6
            const T* data = (T*)column->get_raw_data().data;
169
42
            for (size_t i = start; i < size; i++) {
170
36
                if (!nullmap[i]) {
171
36
                    if constexpr (NeedMin) {
172
36
                        _min = std::min(_min, *(data + i));
173
36
                    }
174
36
                    if constexpr (NeedMax) {
175
36
                        _max = std::max(_max, *(data + i));
176
36
                    }
177
36
                }
178
36
            }
179
6
        }
180
6
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
63
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
63
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
63
        } else {
168
63
            const T* data = (T*)column->get_raw_data().data;
169
531
            for (size_t i = start; i < size; i++) {
170
468
                if (!nullmap[i]) {
171
443
                    if constexpr (NeedMin) {
172
443
                        _min = std::min(_min, *(data + i));
173
443
                    }
174
443
                    if constexpr (NeedMax) {
175
443
                        _max = std::max(_max, *(data + i));
176
443
                    }
177
443
                }
178
468
            }
179
63
        }
180
63
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
387
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
387
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
387
        } else {
168
387
            const T* data = (T*)column->get_raw_data().data;
169
900
            for (size_t i = start; i < size; i++) {
170
513
                if (!nullmap[i]) {
171
495
                    if constexpr (NeedMin) {
172
495
                        _min = std::min(_min, *(data + i));
173
495
                    }
174
495
                    if constexpr (NeedMax) {
175
495
                        _max = std::max(_max, *(data + i));
176
495
                    }
177
495
                }
178
513
            }
179
387
        }
180
387
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
3
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
3
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
3
        } else {
168
3
            const T* data = (T*)column->get_raw_data().data;
169
12
            for (size_t i = start; i < size; i++) {
170
9
                if (!nullmap[i]) {
171
9
                    if constexpr (NeedMin) {
172
9
                        _min = std::min(_min, *(data + i));
173
9
                    }
174
9
                    if constexpr (NeedMax) {
175
9
                        _max = std::max(_max, *(data + i));
176
9
                    }
177
9
                }
178
9
            }
179
3
        }
180
3
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
236
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
236
        const auto size = column->size();
159
236
        if constexpr (std::is_same_v<T, std::string>) {
160
236
            if (column->is_column_string64()) {
161
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
0
                                     start, size);
163
236
            } else {
164
236
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
236
                                     start, size);
166
236
            }
167
        } else {
168
            const T* data = (T*)column->get_raw_data().data;
169
            for (size_t i = start; i < size; i++) {
170
                if (!nullmap[i]) {
171
                    if constexpr (NeedMin) {
172
                        _min = std::min(_min, *(data + i));
173
                    }
174
                    if constexpr (NeedMax) {
175
                        _max = std::max(_max, *(data + i));
176
                    }
177
                }
178
            }
179
        }
180
236
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
41
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
41
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
41
        } else {
168
41
            const T* data = (T*)column->get_raw_data().data;
169
135
            for (size_t i = start; i < size; i++) {
170
94
                if (!nullmap[i]) {
171
42
                    if constexpr (NeedMin) {
172
42
                        _min = std::min(_min, *(data + i));
173
42
                    }
174
42
                    if constexpr (NeedMax) {
175
42
                        _max = std::max(_max, *(data + i));
176
42
                    }
177
42
                }
178
94
            }
179
41
        }
180
41
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
174
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
174
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
174
        } else {
168
174
            const T* data = (T*)column->get_raw_data().data;
169
398
            for (size_t i = start; i < size; i++) {
170
224
                if (!nullmap[i]) {
171
209
                    if constexpr (NeedMin) {
172
209
                        _min = std::min(_min, *(data + i));
173
209
                    }
174
209
                    if constexpr (NeedMax) {
175
209
                        _max = std::max(_max, *(data + i));
176
209
                    }
177
209
                }
178
224
            }
179
174
        }
180
174
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
19
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
19
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
19
        } else {
168
19
            const T* data = (T*)column->get_raw_data().data;
169
77
            for (size_t i = start; i < size; i++) {
170
58
                if (!nullmap[i]) {
171
51
                    if constexpr (NeedMin) {
172
51
                        _min = std::min(_min, *(data + i));
173
51
                    }
174
51
                    if constexpr (NeedMax) {
175
51
                        _max = std::max(_max, *(data + i));
176
51
                    }
177
51
                }
178
58
            }
179
19
        }
180
19
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
19
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
19
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
19
        } else {
168
19
            const T* data = (T*)column->get_raw_data().data;
169
1.64k
            for (size_t i = start; i < size; i++) {
170
1.62k
                if (!nullmap[i]) {
171
1.62k
                    if constexpr (NeedMin) {
172
1.62k
                        _min = std::min(_min, *(data + i));
173
1.62k
                    }
174
1.62k
                    if constexpr (NeedMax) {
175
1.62k
                        _max = std::max(_max, *(data + i));
176
1.62k
                    }
177
1.62k
                }
178
1.62k
            }
179
19
        }
180
19
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
16
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
16
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
16
        } else {
168
16
            const T* data = (T*)column->get_raw_data().data;
169
1.61k
            for (size_t i = start; i < size; i++) {
170
1.60k
                if (!nullmap[i]) {
171
1.45k
                    if constexpr (NeedMin) {
172
1.45k
                        _min = std::min(_min, *(data + i));
173
1.45k
                    }
174
1.45k
                    if constexpr (NeedMax) {
175
1.45k
                        _max = std::max(_max, *(data + i));
176
1.45k
                    }
177
1.45k
                }
178
1.60k
            }
179
16
        }
180
16
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
181
182
    T _max = type_limit<T>::min();
183
    T _min = type_limit<T>::max();
184
185
    bool _min_value_set = false;
186
};
187
188
template <class T>
189
using MinNumFunc = MinMaxNumFunc<T, false, true>;
190
191
template <class T>
192
using MaxNumFunc = MinMaxNumFunc<T, true, false>;
193
194
} // namespace doris