Coverage Report

Created: 2026-07-09 16:31

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
25.9k
    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
25.9k
    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
25.9k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
49
119
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
49
34
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
49
556
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
49
399
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
49
15.6k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
49
3.59k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
49
106
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIfLb1ELb1EEC2Eb
Line
Count
Source
49
146
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIdLb1ELb1EEC2Eb
Line
Count
Source
49
59
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
49
61
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
49
715
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
49
2.88k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
Line
Count
Source
49
4
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
49
869
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
49
30
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
49
508
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
49
120
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
49
30
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIjLb1ELb1EEC2Eb
Line
Count
Source
49
14
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIoLb1ELb1EEC2Eb
Line
Count
Source
49
10
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
50
860
    ~MinMaxNumFunc() override = default;
51
52
7.96k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
7.96k
        if (is_column_nullable(*column)) {
54
5.11k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
5.11k
            const auto& col = nullable->get_nested_column_ptr();
56
5.11k
            const auto& nullmap = nullable->get_null_map_data();
57
5.11k
            if (nullable->has_null()) {
58
4.46k
                _update_batch(col, nullmap, start);
59
4.46k
                _contain_null = true;
60
4.46k
            } else {
61
658
                _update_batch(col, start);
62
658
            }
63
5.11k
        } else {
64
2.84k
            _update_batch(column, start);
65
2.84k
        }
66
7.96k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
14
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
14
        if (is_column_nullable(*column)) {
54
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
14
            const auto& col = nullable->get_nested_column_ptr();
56
14
            const auto& nullmap = nullable->get_null_map_data();
57
14
            if (nullable->has_null()) {
58
14
                _update_batch(col, nullmap, start);
59
14
                _contain_null = true;
60
14
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
14
        } else {
64
0
            _update_batch(column, start);
65
0
        }
66
14
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_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 (is_column_nullable(*column)) {
54
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
2
            const auto& col = nullable->get_nested_column_ptr();
56
2
            const auto& nullmap = nullable->get_null_map_data();
57
2
            if (nullable->has_null()) {
58
2
                _update_batch(col, nullmap, start);
59
2
                _contain_null = true;
60
2
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
2
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
3
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
258
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
258
        if (is_column_nullable(*column)) {
54
253
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
253
            const auto& col = nullable->get_nested_column_ptr();
56
253
            const auto& nullmap = nullable->get_null_map_data();
57
253
            if (nullable->has_null()) {
58
209
                _update_batch(col, nullmap, start);
59
209
                _contain_null = true;
60
209
            } else {
61
44
                _update_batch(col, start);
62
44
            }
63
253
        } else {
64
5
            _update_batch(column, start);
65
5
        }
66
258
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
107
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
107
        if (is_column_nullable(*column)) {
54
106
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
106
            const auto& col = nullable->get_nested_column_ptr();
56
106
            const auto& nullmap = nullable->get_null_map_data();
57
106
            if (nullable->has_null()) {
58
106
                _update_batch(col, nullmap, start);
59
106
                _contain_null = true;
60
106
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
106
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
107
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
5.12k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
5.12k
        if (is_column_nullable(*column)) {
54
3.12k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3.12k
            const auto& col = nullable->get_nested_column_ptr();
56
3.12k
            const auto& nullmap = nullable->get_null_map_data();
57
3.12k
            if (nullable->has_null()) {
58
2.57k
                _update_batch(col, nullmap, start);
59
2.57k
                _contain_null = true;
60
2.57k
            } else {
61
550
                _update_batch(col, start);
62
550
            }
63
3.12k
        } else {
64
1.99k
            _update_batch(column, start);
65
1.99k
        }
66
5.12k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
1.22k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
1.22k
        if (is_column_nullable(*column)) {
54
783
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
783
            const auto& col = nullable->get_nested_column_ptr();
56
783
            const auto& nullmap = nullable->get_null_map_data();
57
783
            if (nullable->has_null()) {
58
759
                _update_batch(col, nullmap, start);
59
759
                _contain_null = true;
60
759
            } else {
61
24
                _update_batch(col, start);
62
24
            }
63
783
        } else {
64
444
            _update_batch(column, start);
65
444
        }
66
1.22k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
92
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
92
        if (is_column_nullable(*column)) {
54
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
2
            const auto& col = nullable->get_nested_column_ptr();
56
2
            const auto& nullmap = nullable->get_null_map_data();
57
2
            if (nullable->has_null()) {
58
2
                _update_batch(col, nullmap, start);
59
2
                _contain_null = true;
60
2
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
90
        } else {
64
90
            _update_batch(column, start);
65
90
        }
66
92
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE16insert_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 (is_column_nullable(*column)) {
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
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
47
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
47
        if (is_column_nullable(*column)) {
54
46
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
46
            const auto& col = nullable->get_nested_column_ptr();
56
46
            const auto& nullmap = nullable->get_null_map_data();
57
46
            if (nullable->has_null()) {
58
39
                _update_batch(col, nullmap, start);
59
39
                _contain_null = true;
60
39
            } else {
61
7
                _update_batch(col, start);
62
7
            }
63
46
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
47
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
24
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
24
        if (is_column_nullable(*column)) {
54
23
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
23
            const auto& col = nullable->get_nested_column_ptr();
56
23
            const auto& nullmap = nullable->get_null_map_data();
57
23
            if (nullable->has_null()) {
58
23
                _update_batch(col, nullmap, start);
59
23
                _contain_null = true;
60
23
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
23
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
24
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
52
245
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
245
        if (is_column_nullable(*column)) {
54
54
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
54
            const auto& col = nullable->get_nested_column_ptr();
56
54
            const auto& nullmap = nullable->get_null_map_data();
57
54
            if (nullable->has_null()) {
58
52
                _update_batch(col, nullmap, start);
59
52
                _contain_null = true;
60
52
            } else {
61
2
                _update_batch(col, start);
62
2
            }
63
191
        } else {
64
191
            _update_batch(column, start);
65
191
        }
66
245
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
52
365
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
365
        if (is_column_nullable(*column)) {
54
334
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
334
            const auto& col = nullable->get_nested_column_ptr();
56
334
            const auto& nullmap = nullable->get_null_map_data();
57
334
            if (nullable->has_null()) {
58
334
                _update_batch(col, nullmap, start);
59
334
                _contain_null = true;
60
334
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
334
        } else {
64
31
            _update_batch(column, start);
65
31
        }
66
365
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
2
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
2
        if (is_column_nullable(*column)) {
54
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
2
            const auto& col = nullable->get_nested_column_ptr();
56
2
            const auto& nullmap = nullable->get_null_map_data();
57
2
            if (nullable->has_null()) {
58
2
                _update_batch(col, nullmap, start);
59
2
                _contain_null = true;
60
2
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
2
        } else {
64
0
            _update_batch(column, start);
65
0
        }
66
2
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
52
218
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
218
        if (is_column_nullable(*column)) {
54
167
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
167
            const auto& col = nullable->get_nested_column_ptr();
56
167
            const auto& nullmap = nullable->get_null_map_data();
57
167
            if (nullable->has_null()) {
58
159
                _update_batch(col, nullmap, start);
59
159
                _contain_null = true;
60
159
            } else {
61
8
                _update_batch(col, start);
62
8
            }
63
167
        } else {
64
51
            _update_batch(column, start);
65
51
        }
66
218
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
52
15
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
15
        if (is_column_nullable(*column)) {
54
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
14
            const auto& col = nullable->get_nested_column_ptr();
56
14
            const auto& nullmap = nullable->get_null_map_data();
57
14
            if (nullable->has_null()) {
58
14
                _update_batch(col, nullmap, start);
59
14
                _contain_null = true;
60
14
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
14
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
15
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
52
140
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
140
        if (is_column_nullable(*column)) {
54
124
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
124
            const auto& col = nullable->get_nested_column_ptr();
56
124
            const auto& nullmap = nullable->get_null_map_data();
57
124
            if (nullable->has_null()) {
58
124
                _update_batch(col, nullmap, start);
59
124
                _contain_null = true;
60
124
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
124
        } else {
64
16
            _update_batch(column, start);
65
16
        }
66
140
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
49
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
49
        if (is_column_nullable(*column)) {
54
31
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
31
            const auto& col = nullable->get_nested_column_ptr();
56
31
            const auto& nullmap = nullable->get_null_map_data();
57
31
            if (nullable->has_null()) {
58
8
                _update_batch(col, nullmap, start);
59
8
                _contain_null = true;
60
23
            } else {
61
23
                _update_batch(col, start);
62
23
            }
63
31
        } else {
64
18
            _update_batch(column, start);
65
18
        }
66
49
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
52
15
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
15
        if (is_column_nullable(*column)) {
54
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
14
            const auto& col = nullable->get_nested_column_ptr();
56
14
            const auto& nullmap = nullable->get_null_map_data();
57
14
            if (nullable->has_null()) {
58
14
                _update_batch(col, nullmap, start);
59
14
                _contain_null = true;
60
14
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
14
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
15
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
5
        if (is_column_nullable(*column)) {
54
4
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
4
            const auto& col = nullable->get_nested_column_ptr();
56
4
            const auto& nullmap = nullable->get_null_map_data();
57
4
            if (nullable->has_null()) {
58
4
                _update_batch(col, nullmap, start);
59
4
                _contain_null = true;
60
4
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
4
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
5
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
3
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
3
        if (is_column_nullable(*column)) {
54
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
2
            const auto& col = nullable->get_nested_column_ptr();
56
2
            const auto& nullmap = nullable->get_null_map_data();
57
2
            if (nullable->has_null()) {
58
2
                _update_batch(col, nullmap, start);
59
2
                _contain_null = true;
60
2
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
2
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
3
    }
67
68
14.1k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
14.1k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
14.1k
        if constexpr (NeedMin) {
71
14.1k
            if constexpr (IsStringValue) {
72
385
                if (other_minmax->_min < _min || !_min_value_set) {
73
28
                    _min = other_minmax->_min;
74
28
                    _min_value_set = true;
75
28
                }
76
13.7k
            } else if (other_minmax->_min < _min) {
77
857
                _min = other_minmax->_min;
78
857
            }
79
14.1k
        }
80
14.1k
        if constexpr (NeedMax) {
81
14.1k
            if (other_minmax->_max > _max) {
82
885
                _max = other_minmax->_max;
83
885
            }
84
14.1k
        }
85
86
14.1k
        _contain_null |= minmax_func->contain_null();
87
14.1k
        return Status::OK();
88
14.1k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
87
    Status merge(MinMaxFuncBase* minmax_func) override {
69
87
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
87
        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
87
            } else if (other_minmax->_min < _min) {
77
1
                _min = other_minmax->_min;
78
1
            }
79
87
        }
80
87
        if constexpr (NeedMax) {
81
87
            if (other_minmax->_max > _max) {
82
1
                _max = other_minmax->_max;
83
1
            }
84
87
        }
85
86
87
        _contain_null |= minmax_func->contain_null();
87
87
        return Status::OK();
88
87
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
30
    Status merge(MinMaxFuncBase* minmax_func) override {
69
30
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
30
        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
30
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
30
        }
80
30
        if constexpr (NeedMax) {
81
30
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
30
        }
85
86
30
        _contain_null |= minmax_func->contain_null();
87
30
        return Status::OK();
88
30
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
70
    Status merge(MinMaxFuncBase* minmax_func) override {
69
70
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
70
        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
70
            } else if (other_minmax->_min < _min) {
77
5
                _min = other_minmax->_min;
78
5
            }
79
70
        }
80
70
        if constexpr (NeedMax) {
81
70
            if (other_minmax->_max > _max) {
82
5
                _max = other_minmax->_max;
83
5
            }
84
70
        }
85
86
70
        _contain_null |= minmax_func->contain_null();
87
70
        return Status::OK();
88
70
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
116
    Status merge(MinMaxFuncBase* minmax_func) override {
69
116
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
116
        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
116
            } else if (other_minmax->_min < _min) {
77
11
                _min = other_minmax->_min;
78
11
            }
79
116
        }
80
116
        if constexpr (NeedMax) {
81
116
            if (other_minmax->_max > _max) {
82
11
                _max = other_minmax->_max;
83
11
            }
84
116
        }
85
86
116
        _contain_null |= minmax_func->contain_null();
87
116
        return Status::OK();
88
116
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
9.25k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
9.25k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
9.25k
        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.25k
            } else if (other_minmax->_min < _min) {
77
562
                _min = other_minmax->_min;
78
562
            }
79
9.25k
        }
80
9.25k
        if constexpr (NeedMax) {
81
9.25k
            if (other_minmax->_max > _max) {
82
569
                _max = other_minmax->_max;
83
569
            }
84
9.25k
        }
85
86
9.25k
        _contain_null |= minmax_func->contain_null();
87
9.25k
        return Status::OK();
88
9.25k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
915
    Status merge(MinMaxFuncBase* minmax_func) override {
69
915
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
915
        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
915
            } else if (other_minmax->_min < _min) {
77
78
                _min = other_minmax->_min;
78
78
            }
79
915
        }
80
915
        if constexpr (NeedMax) {
81
915
            if (other_minmax->_max > _max) {
82
82
                _max = other_minmax->_max;
83
82
            }
84
915
        }
85
86
915
        _contain_null |= minmax_func->contain_null();
87
915
        return Status::OK();
88
915
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
74
    Status merge(MinMaxFuncBase* minmax_func) override {
69
74
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
74
        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
74
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
74
        }
80
74
        if constexpr (NeedMax) {
81
74
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
74
        }
85
86
74
        _contain_null |= minmax_func->contain_null();
87
74
        return Status::OK();
88
74
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
112
    Status merge(MinMaxFuncBase* minmax_func) override {
69
112
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
112
        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
112
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
112
        }
80
112
        if constexpr (NeedMax) {
81
112
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
112
        }
85
86
112
        _contain_null |= minmax_func->contain_null();
87
112
        return Status::OK();
88
112
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
36
    Status merge(MinMaxFuncBase* minmax_func) override {
69
36
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
36
        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
36
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
36
        }
80
36
        if constexpr (NeedMax) {
81
36
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
36
        }
85
86
36
        _contain_null |= minmax_func->contain_null();
87
36
        return Status::OK();
88
36
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
37
    Status merge(MinMaxFuncBase* minmax_func) override {
69
37
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
37
        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
37
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
37
        }
80
37
        if constexpr (NeedMax) {
81
37
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
37
        }
85
86
37
        _contain_null |= minmax_func->contain_null();
87
37
        return Status::OK();
88
37
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
435
    Status merge(MinMaxFuncBase* minmax_func) override {
69
435
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
435
        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
435
            } else if (other_minmax->_min < _min) {
77
65
                _min = other_minmax->_min;
78
65
            }
79
435
        }
80
435
        if constexpr (NeedMax) {
81
435
            if (other_minmax->_max > _max) {
82
54
                _max = other_minmax->_max;
83
54
            }
84
435
        }
85
86
435
        _contain_null |= minmax_func->contain_null();
87
435
        return Status::OK();
88
435
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
2.39k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
2.39k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
2.39k
        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.39k
            } else if (other_minmax->_min < _min) {
77
132
                _min = other_minmax->_min;
78
132
            }
79
2.39k
        }
80
2.39k
        if constexpr (NeedMax) {
81
2.39k
            if (other_minmax->_max > _max) {
82
144
                _max = other_minmax->_max;
83
144
            }
84
2.39k
        }
85
86
2.39k
        _contain_null |= minmax_func->contain_null();
87
2.39k
        return Status::OK();
88
2.39k
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
1
    Status merge(MinMaxFuncBase* minmax_func) override {
69
1
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
1
        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
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
1
        }
80
1
        if constexpr (NeedMax) {
81
1
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
1
        }
85
86
1
        _contain_null |= minmax_func->contain_null();
87
1
        return Status::OK();
88
1
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
385
    Status merge(MinMaxFuncBase* minmax_func) override {
69
385
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
385
        if constexpr (NeedMin) {
71
385
            if constexpr (IsStringValue) {
72
385
                if (other_minmax->_min < _min || !_min_value_set) {
73
28
                    _min = other_minmax->_min;
74
28
                    _min_value_set = true;
75
28
                }
76
            } else if (other_minmax->_min < _min) {
77
                _min = other_minmax->_min;
78
            }
79
385
        }
80
385
        if constexpr (NeedMax) {
81
385
            if (other_minmax->_max > _max) {
82
13
                _max = other_minmax->_max;
83
13
            }
84
385
        }
85
86
385
        _contain_null |= minmax_func->contain_null();
87
385
        return Status::OK();
88
385
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
6
    Status merge(MinMaxFuncBase* minmax_func) override {
69
6
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
6
        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
6
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
6
        }
80
6
        if constexpr (NeedMax) {
81
6
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
6
        }
85
86
6
        _contain_null |= minmax_func->contain_null();
87
6
        return Status::OK();
88
6
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
146
    Status merge(MinMaxFuncBase* minmax_func) override {
69
146
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
146
        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
146
            } else if (other_minmax->_min < _min) {
77
3
                _min = other_minmax->_min;
78
3
            }
79
146
        }
80
146
        if constexpr (NeedMax) {
81
146
            if (other_minmax->_max > _max) {
82
6
                _max = other_minmax->_max;
83
6
            }
84
146
        }
85
86
146
        _contain_null |= minmax_func->contain_null();
87
146
        return Status::OK();
88
146
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
35
    Status merge(MinMaxFuncBase* minmax_func) override {
69
35
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
35
        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
35
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
35
        }
80
35
        if constexpr (NeedMax) {
81
35
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
35
        }
85
86
35
        _contain_null |= minmax_func->contain_null();
87
35
        return Status::OK();
88
35
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
1
    Status merge(MinMaxFuncBase* minmax_func) override {
69
1
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
1
        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
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
1
        }
80
1
        if constexpr (NeedMax) {
81
1
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
1
        }
85
86
1
        _contain_null |= minmax_func->contain_null();
87
1
        return Status::OK();
88
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
3
    Status merge(MinMaxFuncBase* minmax_func) override {
69
3
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
3
        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
3
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
3
        }
80
3
        if constexpr (NeedMax) {
81
3
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
3
        }
85
86
3
        _contain_null |= minmax_func->contain_null();
87
3
        return Status::OK();
88
3
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
2
    Status merge(MinMaxFuncBase* minmax_func) override {
69
2
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
2
        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
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
2
        }
80
2
        if constexpr (NeedMax) {
81
2
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
2
        }
85
86
2
        _contain_null |= minmax_func->contain_null();
87
2
        return Status::OK();
88
2
    }
89
90
6.19k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
90
16
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
4
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
90
234
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
90
124
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
90
3.51k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
90
1.32k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
90
16
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
90
18
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
90
12
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
14
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
118
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
288
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
243
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
90
16
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
90
184
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
90
41
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
16
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_maxEv
Line
Count
Source
90
8
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_maxEv
Line
Count
Source
90
6
    void* get_max() override { return &_max; }
91
92
6.21k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
92
16
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
92
4
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
92
226
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
92
124
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
92
3.52k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
92
1.33k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
92
17
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
92
18
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
92
6
    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
118
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
92
292
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
92
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
92
243
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
92
16
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
92
184
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
92
43
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
92
16
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_minEv
Line
Count
Source
92
8
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_minEv
Line
Count
Source
92
6
    void* get_min() override { return &_min; }
93
94
1.32k
    Status assign(void* min_data, void* max_data) override {
95
1.32k
        if constexpr (IsStringValue) {
96
51
            _min_value_set = true;
97
51
        }
98
1.32k
        _min = *(T*)min_data;
99
1.32k
        _max = *(T*)max_data;
100
1.32k
        return Status::OK();
101
1.32k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
5
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
5
        _min = *(T*)min_data;
99
5
        _max = *(T*)max_data;
100
5
        return Status::OK();
101
5
    }
_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
35
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
35
        _min = *(T*)min_data;
99
35
        _max = *(T*)max_data;
100
35
        return Status::OK();
101
35
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
93
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
93
        _min = *(T*)min_data;
99
93
        _max = *(T*)max_data;
100
93
        return Status::OK();
101
93
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
805
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
805
        _min = *(T*)min_data;
99
805
        _max = *(T*)max_data;
100
805
        return Status::OK();
101
805
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
97
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
97
        _min = *(T*)min_data;
99
97
        _max = *(T*)max_data;
100
97
        return Status::OK();
101
97
    }
_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
5
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
5
        _min = *(T*)min_data;
99
5
        _max = *(T*)max_data;
100
5
        return Status::OK();
101
5
    }
_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
75
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
75
        _min = *(T*)min_data;
99
75
        _max = *(T*)max_data;
100
75
        return Status::OK();
101
75
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
94
135
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
135
        _min = *(T*)min_data;
99
135
        _max = *(T*)max_data;
100
135
        return Status::OK();
101
135
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE6assignEPvS3_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE6assignEPvS8_
Line
Count
Source
94
51
    Status assign(void* min_data, void* max_data) override {
95
51
        if constexpr (IsStringValue) {
96
51
            _min_value_set = true;
97
51
        }
98
51
        _min = *(T*)min_data;
99
51
        _max = *(T*)max_data;
100
51
        return Status::OK();
101
51
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
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_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
5
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
5
        _min = *(T*)min_data;
99
5
        _max = *(T*)max_data;
100
5
        return Status::OK();
101
5
    }
_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
1.61k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
44
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
101
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
1.05k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
122
    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
4
    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
74
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
134
    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
48
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
22
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
6
    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
1.61k
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
1.61k
        if constexpr (NeedMin) {
108
1.61k
            f(filter->mutable_min_val(), _min);
109
1.61k
        }
110
1.61k
        if constexpr (NeedMax) {
111
1.61k
            f(filter->mutable_max_val(), _max);
112
1.61k
        }
113
1.61k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
4
        if constexpr (NeedMin) {
108
4
            f(filter->mutable_min_val(), _min);
109
4
        }
110
4
        if constexpr (NeedMax) {
111
4
            f(filter->mutable_max_val(), _max);
112
4
        }
113
4
    }
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
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
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
101
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
101
        if constexpr (NeedMin) {
108
101
            f(filter->mutable_min_val(), _min);
109
101
        }
110
101
        if constexpr (NeedMax) {
111
101
            f(filter->mutable_max_val(), _max);
112
101
        }
113
101
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
1.05k
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
1.05k
        if constexpr (NeedMin) {
108
1.05k
            f(filter->mutable_min_val(), _min);
109
1.05k
        }
110
1.05k
        if constexpr (NeedMax) {
111
1.05k
            f(filter->mutable_max_val(), _max);
112
1.05k
        }
113
1.05k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
122
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
122
        if constexpr (NeedMin) {
108
122
            f(filter->mutable_min_val(), _min);
109
122
        }
110
122
        if constexpr (NeedMax) {
111
122
            f(filter->mutable_max_val(), _max);
112
122
        }
113
122
    }
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
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
4
        if constexpr (NeedMin) {
108
4
            f(filter->mutable_min_val(), _min);
109
4
        }
110
4
        if constexpr (NeedMax) {
111
4
            f(filter->mutable_max_val(), _max);
112
4
        }
113
4
    }
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
74
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
74
        if constexpr (NeedMin) {
108
74
            f(filter->mutable_min_val(), _min);
109
74
        }
110
74
        if constexpr (NeedMax) {
111
74
            f(filter->mutable_max_val(), _max);
112
74
        }
113
74
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
134
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
134
        if constexpr (NeedMin) {
108
134
            f(filter->mutable_min_val(), _min);
109
134
        }
110
134
        if constexpr (NeedMax) {
111
134
            f(filter->mutable_max_val(), _max);
112
134
        }
113
134
    }
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
48
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
48
        if constexpr (NeedMin) {
108
48
            f(filter->mutable_min_val(), _min);
109
48
        }
110
48
        if constexpr (NeedMax) {
111
48
            f(filter->mutable_max_val(), _max);
112
48
        }
113
48
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
22
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
22
        if constexpr (NeedMin) {
108
22
            f(filter->mutable_min_val(), _min);
109
22
        }
110
22
        if constexpr (NeedMax) {
111
22
            f(filter->mutable_max_val(), _max);
112
22
        }
113
22
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
6
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
6
        if constexpr (NeedMin) {
108
6
            f(filter->mutable_min_val(), _min);
109
6
        }
110
6
        if constexpr (NeedMax) {
111
6
            f(filter->mutable_max_val(), _max);
112
6
        }
113
6
    }
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
218
                              size_t start, size_t size) {
117
2.51k
        for (size_t i = start; i < size; i++) {
118
2.29k
            if (nullmap == nullptr || !nullmap[i]) {
119
2.27k
                if constexpr (NeedMin) {
120
2.27k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
261
                        _min = column_string.get_data_at(i).to_string();
122
261
                        _min_value_set = true;
123
261
                    }
124
2.27k
                }
125
2.27k
                if constexpr (NeedMax) {
126
2.27k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
518
                        _max = column_string.get_data_at(i).to_string();
128
518
                    }
129
2.27k
                }
130
2.27k
            }
131
2.29k
        }
132
218
    }
_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
217
                              size_t start, size_t size) {
117
2.50k
        for (size_t i = start; i < size; i++) {
118
2.28k
            if (nullmap == nullptr || !nullmap[i]) {
119
2.27k
                if constexpr (NeedMin) {
120
2.27k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
260
                        _min = column_string.get_data_at(i).to_string();
122
260
                        _min_value_set = true;
123
260
                    }
124
2.27k
                }
125
2.27k
                if constexpr (NeedMax) {
126
2.27k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
510
                        _max = column_string.get_data_at(i).to_string();
128
510
                    }
129
2.27k
                }
130
2.27k
            }
131
2.28k
        }
132
217
    }
133
134
3.51k
    void _update_batch(const ColumnPtr& column, size_t start) {
135
3.51k
        const auto size = column->size();
136
3.51k
        if constexpr (std::is_same_v<T, std::string>) {
137
59
            if (column->is_column_string64()) {
138
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
1
                                     size);
140
58
            } else {
141
58
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
58
                                     size);
143
58
            }
144
3.45k
        } else {
145
3.45k
            const T* data = (T*)column->get_raw_data().data;
146
2.17M
            for (size_t i = start; i < size; i++) {
147
2.16M
                if constexpr (NeedMin) {
148
2.16M
                    _min = std::min(_min, *(data + i));
149
2.16M
                }
150
2.16M
                if constexpr (NeedMax) {
151
2.16M
                    _max = std::max(_max, *(data + i));
152
2.16M
                }
153
2.16M
            }
154
3.45k
        }
155
3.51k
    }
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
178
            for (size_t i = start; i < size; i++) {
147
129
                if constexpr (NeedMin) {
148
129
                    _min = std::min(_min, *(data + i));
149
129
                }
150
129
                if constexpr (NeedMax) {
151
129
                    _max = std::max(_max, *(data + i));
152
129
                }
153
129
            }
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.55k
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2.55k
        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.55k
        } else {
145
2.55k
            const T* data = (T*)column->get_raw_data().data;
146
2.16M
            for (size_t i = start; i < size; i++) {
147
2.16M
                if constexpr (NeedMin) {
148
2.16M
                    _min = std::min(_min, *(data + i));
149
2.16M
                }
150
2.16M
                if constexpr (NeedMax) {
151
2.16M
                    _max = std::max(_max, *(data + i));
152
2.16M
                }
153
2.16M
            }
154
2.55k
        }
155
2.55k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
470
    void _update_batch(const ColumnPtr& column, size_t start) {
135
470
        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
470
        } else {
145
470
            const T* data = (T*)column->get_raw_data().data;
146
1.30k
            for (size_t i = start; i < size; i++) {
147
831
                if constexpr (NeedMin) {
148
831
                    _min = std::min(_min, *(data + i));
149
831
                }
150
831
                if constexpr (NeedMax) {
151
831
                    _max = std::max(_max, *(data + i));
152
831
                }
153
831
            }
154
470
        }
155
470
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
90
    void _update_batch(const ColumnPtr& column, size_t start) {
135
90
        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
90
        } else {
145
90
            const T* data = (T*)column->get_raw_data().data;
146
195
            for (size_t i = start; i < size; i++) {
147
105
                if constexpr (NeedMin) {
148
105
                    _min = std::min(_min, *(data + i));
149
105
                }
150
105
                if constexpr (NeedMax) {
151
105
                    _max = std::max(_max, *(data + i));
152
105
                }
153
105
            }
154
90
        }
155
90
    }
_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
8
    void _update_batch(const ColumnPtr& column, size_t start) {
135
8
        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
8
        } else {
145
8
            const T* data = (T*)column->get_raw_data().data;
146
18
            for (size_t i = start; i < size; i++) {
147
10
                if constexpr (NeedMin) {
148
10
                    _min = std::min(_min, *(data + i));
149
10
                }
150
10
                if constexpr (NeedMax) {
151
10
                    _max = std::max(_max, *(data + i));
152
10
                }
153
10
            }
154
8
        }
155
8
    }
_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
193
    void _update_batch(const ColumnPtr& column, size_t start) {
135
193
        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
193
        } else {
145
193
            const T* data = (T*)column->get_raw_data().data;
146
543
            for (size_t i = start; i < size; i++) {
147
350
                if constexpr (NeedMin) {
148
350
                    _min = std::min(_min, *(data + i));
149
350
                }
150
350
                if constexpr (NeedMax) {
151
350
                    _max = std::max(_max, *(data + i));
152
350
                }
153
350
            }
154
193
        }
155
193
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
134
31
    void _update_batch(const ColumnPtr& column, size_t start) {
135
31
        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
31
        } else {
145
31
            const T* data = (T*)column->get_raw_data().data;
146
134
            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
31
        }
155
31
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
134
59
    void _update_batch(const ColumnPtr& column, size_t start) {
135
59
        const auto size = column->size();
136
59
        if constexpr (std::is_same_v<T, std::string>) {
137
59
            if (column->is_column_string64()) {
138
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
1
                                     size);
140
58
            } else {
141
58
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
58
                                     size);
143
58
            }
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
59
    }
_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
16
    void _update_batch(const ColumnPtr& column, size_t start) {
135
16
        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
16
        } else {
145
16
            const T* data = (T*)column->get_raw_data().data;
146
78
            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
16
        }
155
16
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
41
    void _update_batch(const ColumnPtr& column, size_t start) {
135
41
        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
41
        } else {
145
41
            const T* data = (T*)column->get_raw_data().data;
146
102
            for (size_t i = start; i < size; i++) {
147
61
                if constexpr (NeedMin) {
148
61
                    _min = std::min(_min, *(data + i));
149
61
                }
150
61
                if constexpr (NeedMax) {
151
61
                    _max = std::max(_max, *(data + i));
152
61
                }
153
61
            }
154
41
        }
155
41
    }
_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.45k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
4.45k
        const auto size = column->size();
159
4.45k
        if constexpr (std::is_same_v<T, std::string>) {
160
159
            if (column->is_column_string64()) {
161
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
0
                                     start, size);
163
159
            } else {
164
159
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
159
                                     start, size);
166
159
            }
167
4.29k
        } else {
168
4.29k
            const T* data = (T*)column->get_raw_data().data;
169
1.91M
            for (size_t i = start; i < size; i++) {
170
1.92M
                if (!nullmap[i]) {
171
1.92M
                    if constexpr (NeedMin) {
172
1.92M
                        _min = std::min(_min, *(data + i));
173
1.92M
                    }
174
1.92M
                    if constexpr (NeedMax) {
175
1.92M
                        _max = std::max(_max, *(data + i));
176
1.92M
                    }
177
1.92M
                }
178
1.90M
            }
179
4.29k
        }
180
4.45k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
14
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
14
        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
14
        } else {
168
14
            const T* data = (T*)column->get_raw_data().data;
169
42
            for (size_t i = start; i < size; i++) {
170
28
                if (!nullmap[i]) {
171
19
                    if constexpr (NeedMin) {
172
19
                        _min = std::min(_min, *(data + i));
173
19
                    }
174
19
                    if constexpr (NeedMax) {
175
19
                        _max = std::max(_max, *(data + i));
176
19
                    }
177
19
                }
178
28
            }
179
14
        }
180
14
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_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
8
            for (size_t i = start; i < size; i++) {
170
6
                if (!nullmap[i]) {
171
6
                    if constexpr (NeedMin) {
172
6
                        _min = std::min(_min, *(data + i));
173
6
                    }
174
6
                    if constexpr (NeedMax) {
175
6
                        _max = std::max(_max, *(data + i));
176
6
                    }
177
6
                }
178
6
            }
179
2
        }
180
2
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
209
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
209
        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
209
        } else {
168
209
            const T* data = (T*)column->get_raw_data().data;
169
616
            for (size_t i = start; i < size; i++) {
170
407
                if (!nullmap[i]) {
171
399
                    if constexpr (NeedMin) {
172
399
                        _min = std::min(_min, *(data + i));
173
399
                    }
174
399
                    if constexpr (NeedMax) {
175
399
                        _max = std::max(_max, *(data + i));
176
399
                    }
177
399
                }
178
407
            }
179
209
        }
180
209
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
106
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
106
        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
106
        } else {
168
106
            const T* data = (T*)column->get_raw_data().data;
169
566
            for (size_t i = start; i < size; i++) {
170
460
                if (!nullmap[i]) {
171
390
                    if constexpr (NeedMin) {
172
390
                        _min = std::min(_min, *(data + i));
173
390
                    }
174
390
                    if constexpr (NeedMax) {
175
390
                        _max = std::max(_max, *(data + i));
176
390
                    }
177
390
                }
178
460
            }
179
106
        }
180
106
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
2.57k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
2.57k
        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.57k
        } else {
168
2.57k
            const T* data = (T*)column->get_raw_data().data;
169
1.70M
            for (size_t i = start; i < size; i++) {
170
1.71M
                if (!nullmap[i]) {
171
1.71M
                    if constexpr (NeedMin) {
172
1.71M
                        _min = std::min(_min, *(data + i));
173
1.71M
                    }
174
1.71M
                    if constexpr (NeedMax) {
175
1.71M
                        _max = std::max(_max, *(data + i));
176
1.71M
                    }
177
1.71M
                }
178
1.70M
            }
179
2.57k
        }
180
2.57k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
756
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
756
        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
756
        } else {
168
756
            const T* data = (T*)column->get_raw_data().data;
169
203k
            for (size_t i = start; i < size; i++) {
170
202k
                if (!nullmap[i]) {
171
202k
                    if constexpr (NeedMin) {
172
202k
                        _min = std::min(_min, *(data + i));
173
202k
                    }
174
202k
                    if constexpr (NeedMax) {
175
202k
                        _max = std::max(_max, *(data + i));
176
202k
                    }
177
202k
                }
178
202k
            }
179
756
        }
180
756
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_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
4
            for (size_t i = start; i < size; i++) {
170
2
                if (!nullmap[i]) {
171
2
                    if constexpr (NeedMin) {
172
2
                        _min = std::min(_min, *(data + i));
173
2
                    }
174
2
                    if constexpr (NeedMax) {
175
2
                        _max = std::max(_max, *(data + i));
176
2
                    }
177
2
                }
178
2
            }
179
2
        }
180
2
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_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
40
            for (size_t i = start; i < size; i++) {
170
24
                if (!nullmap[i]) {
171
20
                    if constexpr (NeedMin) {
172
20
                        _min = std::min(_min, *(data + i));
173
20
                    }
174
20
                    if constexpr (NeedMax) {
175
20
                        _max = std::max(_max, *(data + i));
176
20
                    }
177
20
                }
178
24
            }
179
16
        }
180
16
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
39
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
39
        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
39
        } else {
168
39
            const T* data = (T*)column->get_raw_data().data;
169
84
            for (size_t i = start; i < size; i++) {
170
45
                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
45
            }
179
39
        }
180
39
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
23
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
23
        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
23
        } else {
168
23
            const T* data = (T*)column->get_raw_data().data;
169
188
            for (size_t i = start; i < size; i++) {
170
166
                if (!nullmap[i]) {
171
166
                    if constexpr (NeedMin) {
172
166
                        _min = std::min(_min, *(data + i));
173
166
                    }
174
166
                    if constexpr (NeedMax) {
175
166
                        _max = std::max(_max, *(data + i));
176
166
                    }
177
166
                }
178
165
            }
179
23
        }
180
23
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
52
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
52
        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
52
        } else {
168
52
            const T* data = (T*)column->get_raw_data().data;
169
2.15k
            for (size_t i = start; i < size; i++) {
170
2.10k
                if (!nullmap[i]) {
171
2.06k
                    if constexpr (NeedMin) {
172
2.06k
                        _min = std::min(_min, *(data + i));
173
2.06k
                    }
174
2.06k
                    if constexpr (NeedMax) {
175
2.06k
                        _max = std::max(_max, *(data + i));
176
2.06k
                    }
177
2.06k
                }
178
2.10k
            }
179
52
        }
180
52
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
334
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
334
        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
334
        } else {
168
334
            const T* data = (T*)column->get_raw_data().data;
169
751
            for (size_t i = start; i < size; i++) {
170
417
                if (!nullmap[i]) {
171
405
                    if constexpr (NeedMin) {
172
405
                        _min = std::min(_min, *(data + i));
173
405
                    }
174
405
                    if constexpr (NeedMax) {
175
405
                        _max = std::max(_max, *(data + i));
176
405
                    }
177
405
                }
178
417
            }
179
334
        }
180
334
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_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
8
            for (size_t i = start; i < size; i++) {
170
6
                if (!nullmap[i]) {
171
6
                    if constexpr (NeedMin) {
172
6
                        _min = std::min(_min, *(data + i));
173
6
                    }
174
6
                    if constexpr (NeedMax) {
175
6
                        _max = std::max(_max, *(data + i));
176
6
                    }
177
6
                }
178
6
            }
179
2
        }
180
2
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
159
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
159
        const auto size = column->size();
159
159
        if constexpr (std::is_same_v<T, std::string>) {
160
159
            if (column->is_column_string64()) {
161
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
0
                                     start, size);
163
159
            } else {
164
159
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
159
                                     start, size);
166
159
            }
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
159
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
14
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
14
        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
14
        } else {
168
14
            const T* data = (T*)column->get_raw_data().data;
169
66
            for (size_t i = start; i < size; i++) {
170
52
                if (!nullmap[i]) {
171
0
                    if constexpr (NeedMin) {
172
0
                        _min = std::min(_min, *(data + i));
173
0
                    }
174
0
                    if constexpr (NeedMax) {
175
0
                        _max = std::max(_max, *(data + i));
176
0
                    }
177
0
                }
178
52
            }
179
14
        }
180
14
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
124
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
124
        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
124
        } else {
168
124
            const T* data = (T*)column->get_raw_data().data;
169
263
            for (size_t i = start; i < size; i++) {
170
139
                if (!nullmap[i]) {
171
134
                    if constexpr (NeedMin) {
172
134
                        _min = std::min(_min, *(data + i));
173
134
                    }
174
134
                    if constexpr (NeedMax) {
175
134
                        _max = std::max(_max, *(data + i));
176
134
                    }
177
134
                }
178
139
            }
179
124
        }
180
124
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_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
39
            for (size_t i = start; i < size; i++) {
170
31
                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
31
            }
179
8
        }
180
8
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
14
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
14
        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
14
        } else {
168
14
            const T* data = (T*)column->get_raw_data().data;
169
286
            for (size_t i = start; i < size; i++) {
170
272
                if (!nullmap[i]) {
171
272
                    if constexpr (NeedMin) {
172
272
                        _min = std::min(_min, *(data + i));
173
272
                    }
174
272
                    if constexpr (NeedMax) {
175
272
                        _max = std::max(_max, *(data + i));
176
272
                    }
177
272
                }
178
272
            }
179
14
        }
180
14
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
4
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
4
        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
4
        } else {
168
4
            const T* data = (T*)column->get_raw_data().data;
169
226
            for (size_t i = start; i < size; i++) {
170
222
                if (!nullmap[i]) {
171
202
                    if constexpr (NeedMin) {
172
202
                        _min = std::min(_min, *(data + i));
173
202
                    }
174
202
                    if constexpr (NeedMax) {
175
202
                        _max = std::max(_max, *(data + i));
176
202
                    }
177
202
                }
178
222
            }
179
4
        }
180
4
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_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
24
            for (size_t i = start; i < size; i++) {
170
22
                if (!nullmap[i]) {
171
20
                    if constexpr (NeedMin) {
172
20
                        _min = std::min(_min, *(data + i));
173
20
                    }
174
20
                    if constexpr (NeedMax) {
175
20
                        _max = std::max(_max, *(data + i));
176
20
                    }
177
20
                }
178
22
            }
179
2
        }
180
2
    }
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