Coverage Report

Created: 2026-11-02 06:46

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
23.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
    // Deep copy. The returned object shares nothing with this one.
41
    virtual MinMaxFuncBase* clone() const = 0;
42
24.0k
    virtual ~MinMaxFuncBase() = default;
43
44
    virtual void to_pb(PMinMaxFilter* filter) = 0;
45
};
46
47
template <class T, bool NeedMax = true, bool NeedMin = true>
48
class MinMaxNumFunc : public MinMaxFuncBase {
49
public:
50
    static constexpr bool IsStringValue = std::is_same_v<T, std::string>;
51
23.9k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
1
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
51
16
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
51
1.86k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
51
1.42k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
14.3k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
3.28k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
180
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIfLb1ELb1EEC2Eb
Line
Count
Source
51
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIdLb1ELb1EEC2Eb
Line
Count
Source
51
22
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
59
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
596
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
395
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
83
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
51
874
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
192
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
430
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
123
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
51
32
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIjLb1ELb1EEC2Eb
Line
Count
Source
51
12
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIoLb1ELb1EEC2Eb
Line
Count
Source
51
49
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
52
872
    ~MinMaxNumFunc() override = default;
53
54
9.81k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
9.81k
        if (is_column_nullable(*column)) {
56
7.63k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
7.63k
            const auto& col = nullable->get_nested_column_ptr();
58
7.63k
            const auto& nullmap = nullable->get_null_map_data();
59
7.63k
            if (nullable->has_null()) {
60
6.89k
                _update_batch(col, nullmap, start);
61
6.89k
                _contain_null = true;
62
6.89k
            } else {
63
739
                _update_batch(col, start);
64
739
            }
65
7.63k
        } else {
66
2.18k
            _update_batch(column, start);
67
2.18k
        }
68
9.81k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
7
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
7
        if (is_column_nullable(*column)) {
56
6
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
6
            const auto& col = nullable->get_nested_column_ptr();
58
6
            const auto& nullmap = nullable->get_null_map_data();
59
6
            if (nullable->has_null()) {
60
6
                _update_batch(col, nullmap, start);
61
6
                _contain_null = true;
62
6
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
6
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
7
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1.01k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1.01k
        if (is_column_nullable(*column)) {
56
1.01k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1.01k
            const auto& col = nullable->get_nested_column_ptr();
58
1.01k
            const auto& nullmap = nullable->get_null_map_data();
59
1.01k
            if (nullable->has_null()) {
60
800
                _update_batch(col, nullmap, start);
61
800
                _contain_null = true;
62
800
            } else {
63
216
                _update_batch(col, start);
64
216
            }
65
1.01k
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
1.01k
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
652
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
652
        if (is_column_nullable(*column)) {
56
652
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
652
            const auto& col = nullable->get_nested_column_ptr();
58
652
            const auto& nullmap = nullable->get_null_map_data();
59
652
            if (nullable->has_null()) {
60
652
                _update_batch(col, nullmap, start);
61
652
                _contain_null = true;
62
652
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
652
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
652
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
5.35k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
5.35k
        if (is_column_nullable(*column)) {
56
3.65k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
3.65k
            const auto& col = nullable->get_nested_column_ptr();
58
3.65k
            const auto& nullmap = nullable->get_null_map_data();
59
3.65k
            if (nullable->has_null()) {
60
3.16k
                _update_batch(col, nullmap, start);
61
3.16k
                _contain_null = true;
62
3.16k
            } else {
63
492
                _update_batch(col, start);
64
492
            }
65
3.65k
        } else {
66
1.69k
            _update_batch(column, start);
67
1.69k
        }
68
5.35k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1.15k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1.15k
        if (is_column_nullable(*column)) {
56
1.06k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1.06k
            const auto& col = nullable->get_nested_column_ptr();
58
1.06k
            const auto& nullmap = nullable->get_null_map_data();
59
1.06k
            if (nullable->has_null()) {
60
1.06k
                _update_batch(col, nullmap, start);
61
1.06k
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
1.06k
        } else {
66
88
            _update_batch(column, start);
67
88
        }
68
1.15k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
87
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
87
        if (is_column_nullable(*column)) {
56
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
0
            const auto& col = nullable->get_nested_column_ptr();
58
0
            const auto& nullmap = nullable->get_null_map_data();
59
0
            if (nullable->has_null()) {
60
0
                _update_batch(col, nullmap, start);
61
0
                _contain_null = true;
62
0
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
87
        } else {
66
87
            _update_batch(column, start);
67
87
        }
68
87
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1
        if (is_column_nullable(*column)) {
56
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
0
            const auto& col = nullable->get_nested_column_ptr();
58
0
            const auto& nullmap = nullable->get_null_map_data();
59
0
            if (nullable->has_null()) {
60
0
                _update_batch(col, nullmap, start);
61
0
                _contain_null = true;
62
0
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
15
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
15
        if (is_column_nullable(*column)) {
56
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
14
            const auto& col = nullable->get_nested_column_ptr();
58
14
            const auto& nullmap = nullable->get_null_map_data();
59
14
            if (nullable->has_null()) {
60
8
                _update_batch(col, nullmap, start);
61
8
                _contain_null = true;
62
8
            } else {
63
6
                _update_batch(col, start);
64
6
            }
65
14
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
15
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
37
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
37
        if (is_column_nullable(*column)) {
56
35
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
35
            const auto& col = nullable->get_nested_column_ptr();
58
35
            const auto& nullmap = nullable->get_null_map_data();
59
35
            if (nullable->has_null()) {
60
35
                _update_batch(col, nullmap, start);
61
35
                _contain_null = true;
62
35
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
35
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
37
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
250
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
250
        if (is_column_nullable(*column)) {
56
80
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
80
            const auto& col = nullable->get_nested_column_ptr();
58
80
            const auto& nullmap = nullable->get_null_map_data();
59
80
            if (nullable->has_null()) {
60
79
                _update_batch(col, nullmap, start);
61
79
                _contain_null = true;
62
79
            } else {
63
1
                _update_batch(col, start);
64
1
            }
65
170
        } else {
66
170
            _update_batch(column, start);
67
170
        }
68
250
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
132
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
132
        if (is_column_nullable(*column)) {
56
76
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
76
            const auto& col = nullable->get_nested_column_ptr();
58
76
            const auto& nullmap = nullable->get_null_map_data();
59
76
            if (nullable->has_null()) {
60
74
                _update_batch(col, nullmap, start);
61
74
                _contain_null = true;
62
74
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
76
        } else {
66
56
            _update_batch(column, start);
67
56
        }
68
132
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
45
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
45
        if (is_column_nullable(*column)) {
56
45
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
45
            const auto& col = nullable->get_nested_column_ptr();
58
45
            const auto& nullmap = nullable->get_null_map_data();
59
45
            if (nullable->has_null()) {
60
45
                _update_batch(col, nullmap, start);
61
45
                _contain_null = true;
62
45
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
45
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
45
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
54
515
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
515
        if (is_column_nullable(*column)) {
56
485
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
485
            const auto& col = nullable->get_nested_column_ptr();
58
485
            const auto& nullmap = nullable->get_null_map_data();
59
485
            if (nullable->has_null()) {
60
480
                _update_batch(col, nullmap, start);
61
480
                _contain_null = true;
62
480
            } else {
63
5
                _update_batch(col, start);
64
5
            }
65
485
        } else {
66
30
            _update_batch(column, start);
67
30
        }
68
515
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
104
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
104
        if (is_column_nullable(*column)) {
56
103
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
103
            const auto& col = nullable->get_nested_column_ptr();
58
103
            const auto& nullmap = nullable->get_null_map_data();
59
103
            if (nullable->has_null()) {
60
103
                _update_batch(col, nullmap, start);
61
103
                _contain_null = true;
62
103
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
103
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
104
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
345
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
345
        if (is_column_nullable(*column)) {
56
324
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
324
            const auto& col = nullable->get_nested_column_ptr();
58
324
            const auto& nullmap = nullable->get_null_map_data();
59
324
            if (nullable->has_null()) {
60
324
                _update_batch(col, nullmap, start);
61
324
                _contain_null = true;
62
324
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
324
        } else {
66
21
            _update_batch(column, start);
67
21
        }
68
345
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
54
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
54
        if (is_column_nullable(*column)) {
56
31
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
31
            const auto& col = nullable->get_nested_column_ptr();
58
31
            const auto& nullmap = nullable->get_null_map_data();
59
31
            if (nullable->has_null()) {
60
12
                _update_batch(col, nullmap, start);
61
12
                _contain_null = true;
62
19
            } else {
63
19
                _update_batch(col, start);
64
19
            }
65
31
        } else {
66
23
            _update_batch(column, start);
67
23
        }
68
54
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
54
16
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
16
        if (is_column_nullable(*column)) {
56
15
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
15
            const auto& col = nullable->get_nested_column_ptr();
58
15
            const auto& nullmap = nullable->get_null_map_data();
59
15
            if (nullable->has_null()) {
60
15
                _update_batch(col, nullmap, start);
61
15
                _contain_null = true;
62
15
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
15
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
16
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
3
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3
        if (is_column_nullable(*column)) {
56
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2
            const auto& col = nullable->get_nested_column_ptr();
58
2
            const auto& nullmap = nullable->get_null_map_data();
59
2
            if (nullable->has_null()) {
60
2
                _update_batch(col, nullmap, start);
61
2
                _contain_null = true;
62
2
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
2
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
3
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
25
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
25
        if (is_column_nullable(*column)) {
56
24
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
24
            const auto& col = nullable->get_nested_column_ptr();
58
24
            const auto& nullmap = nullable->get_null_map_data();
59
24
            if (nullable->has_null()) {
60
24
                _update_batch(col, nullmap, start);
61
24
                _contain_null = true;
62
24
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
24
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
25
    }
69
70
11.5k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
11.5k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
11.5k
        if constexpr (NeedMin) {
73
11.5k
            if constexpr (IsStringValue) {
74
496
                if (other_minmax->_min < _min || !_min_value_set) {
75
49
                    _min = other_minmax->_min;
76
49
                    _min_value_set = true;
77
49
                }
78
11.0k
            } else if (other_minmax->_min < _min) {
79
1.06k
                _min = other_minmax->_min;
80
1.06k
            }
81
11.5k
        }
82
11.5k
        if constexpr (NeedMax) {
83
11.5k
            if (other_minmax->_max > _max) {
84
1.19k
                _max = other_minmax->_max;
85
1.19k
            }
86
11.5k
        }
87
88
11.5k
        _contain_null |= minmax_func->contain_null();
89
11.5k
        return Status::OK();
90
11.5k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
4
    Status merge(MinMaxFuncBase* minmax_func) override {
71
4
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
4
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
4
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
4
        }
82
4
        if constexpr (NeedMax) {
83
4
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
4
        }
87
88
4
        _contain_null |= minmax_func->contain_null();
89
4
        return Status::OK();
90
4
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
770
    Status merge(MinMaxFuncBase* minmax_func) override {
71
770
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
770
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
770
            } else if (other_minmax->_min < _min) {
79
108
                _min = other_minmax->_min;
80
108
            }
81
770
        }
82
770
        if constexpr (NeedMax) {
83
770
            if (other_minmax->_max > _max) {
84
118
                _max = other_minmax->_max;
85
118
            }
86
770
        }
87
88
770
        _contain_null |= minmax_func->contain_null();
89
770
        return Status::OK();
90
770
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
521
    Status merge(MinMaxFuncBase* minmax_func) override {
71
521
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
521
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
521
            } else if (other_minmax->_min < _min) {
79
46
                _min = other_minmax->_min;
80
46
            }
81
521
        }
82
521
        if constexpr (NeedMax) {
83
521
            if (other_minmax->_max > _max) {
84
61
                _max = other_minmax->_max;
85
61
            }
86
521
        }
87
88
521
        _contain_null |= minmax_func->contain_null();
89
521
        return Status::OK();
90
521
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
7.41k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
7.41k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
7.41k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
7.41k
            } else if (other_minmax->_min < _min) {
79
734
                _min = other_minmax->_min;
80
734
            }
81
7.41k
        }
82
7.41k
        if constexpr (NeedMax) {
83
7.41k
            if (other_minmax->_max > _max) {
84
796
                _max = other_minmax->_max;
85
796
            }
86
7.41k
        }
87
88
7.41k
        _contain_null |= minmax_func->contain_null();
89
7.41k
        return Status::OK();
90
7.41k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
1.31k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
1.31k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
1.31k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
1.31k
            } else if (other_minmax->_min < _min) {
79
87
                _min = other_minmax->_min;
80
87
            }
81
1.31k
        }
82
1.31k
        if constexpr (NeedMax) {
83
1.31k
            if (other_minmax->_max > _max) {
84
101
                _max = other_minmax->_max;
85
101
            }
86
1.31k
        }
87
88
1.31k
        _contain_null |= minmax_func->contain_null();
89
1.31k
        return Status::OK();
90
1.31k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
59
    Status merge(MinMaxFuncBase* minmax_func) override {
71
59
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
59
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
59
            } else if (other_minmax->_min < _min) {
79
7
                _min = other_minmax->_min;
80
7
            }
81
59
        }
82
59
        if constexpr (NeedMax) {
83
59
            if (other_minmax->_max > _max) {
84
7
                _max = other_minmax->_max;
85
7
            }
86
59
        }
87
88
59
        _contain_null |= minmax_func->contain_null();
89
59
        return Status::OK();
90
59
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
5
    Status merge(MinMaxFuncBase* minmax_func) override {
71
5
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
5
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
5
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
5
        }
82
5
        if constexpr (NeedMax) {
83
5
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
5
        }
87
88
5
        _contain_null |= minmax_func->contain_null();
89
5
        return Status::OK();
90
5
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
36
    Status merge(MinMaxFuncBase* minmax_func) override {
71
36
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
36
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
36
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
36
        }
82
36
        if constexpr (NeedMax) {
83
36
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
36
        }
87
88
36
        _contain_null |= minmax_func->contain_null();
89
36
        return Status::OK();
90
36
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
280
    Status merge(MinMaxFuncBase* minmax_func) override {
71
280
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
280
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
280
            } else if (other_minmax->_min < _min) {
79
46
                _min = other_minmax->_min;
80
46
            }
81
280
        }
82
280
        if constexpr (NeedMax) {
83
280
            if (other_minmax->_max > _max) {
84
51
                _max = other_minmax->_max;
85
51
            }
86
280
        }
87
88
280
        _contain_null |= minmax_func->contain_null();
89
280
        return Status::OK();
90
280
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
147
    Status merge(MinMaxFuncBase* minmax_func) override {
71
147
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
147
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
147
            } else if (other_minmax->_min < _min) {
79
18
                _min = other_minmax->_min;
80
18
            }
81
147
        }
82
147
        if constexpr (NeedMax) {
83
147
            if (other_minmax->_max > _max) {
84
16
                _max = other_minmax->_max;
85
16
            }
86
147
        }
87
88
147
        _contain_null |= minmax_func->contain_null();
89
147
        return Status::OK();
90
147
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
37
    Status merge(MinMaxFuncBase* minmax_func) override {
71
37
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
37
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
37
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
37
        }
82
37
        if constexpr (NeedMax) {
83
37
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
37
        }
87
88
37
        _contain_null |= minmax_func->contain_null();
89
37
        return Status::OK();
90
37
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
496
    Status merge(MinMaxFuncBase* minmax_func) override {
71
496
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
496
        if constexpr (NeedMin) {
73
496
            if constexpr (IsStringValue) {
74
496
                if (other_minmax->_min < _min || !_min_value_set) {
75
49
                    _min = other_minmax->_min;
76
49
                    _min_value_set = true;
77
49
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
496
        }
82
496
        if constexpr (NeedMax) {
83
496
            if (other_minmax->_max > _max) {
84
24
                _max = other_minmax->_max;
85
24
            }
86
496
        }
87
88
496
        _contain_null |= minmax_func->contain_null();
89
496
        return Status::OK();
90
496
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
80
    Status merge(MinMaxFuncBase* minmax_func) override {
71
80
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
80
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
80
            } else if (other_minmax->_min < _min) {
79
11
                _min = other_minmax->_min;
80
11
            }
81
80
        }
82
80
        if constexpr (NeedMax) {
83
80
            if (other_minmax->_max > _max) {
84
13
                _max = other_minmax->_max;
85
13
            }
86
80
        }
87
88
80
        _contain_null |= minmax_func->contain_null();
89
80
        return Status::OK();
90
80
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
325
    Status merge(MinMaxFuncBase* minmax_func) override {
71
325
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
325
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
325
            } else if (other_minmax->_min < _min) {
79
5
                _min = other_minmax->_min;
80
5
            }
81
325
        }
82
325
        if constexpr (NeedMax) {
83
325
            if (other_minmax->_max > _max) {
84
5
                _max = other_minmax->_max;
85
5
            }
86
325
        }
87
88
325
        _contain_null |= minmax_func->contain_null();
89
325
        return Status::OK();
90
325
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
9
    Status merge(MinMaxFuncBase* minmax_func) override {
71
9
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
9
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
9
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
9
        }
82
9
        if constexpr (NeedMax) {
83
9
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
9
        }
87
88
9
        _contain_null |= minmax_func->contain_null();
89
9
        return Status::OK();
90
9
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
2
    Status merge(MinMaxFuncBase* minmax_func) override {
71
2
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
2
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
2
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
2
        }
82
2
        if constexpr (NeedMax) {
83
2
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
2
        }
87
88
2
        _contain_null |= minmax_func->contain_null();
89
2
        return Status::OK();
90
2
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
18
    Status merge(MinMaxFuncBase* minmax_func) override {
71
18
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
18
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
18
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
18
        }
82
18
        if constexpr (NeedMax) {
83
18
            if (other_minmax->_max > _max) {
84
2
                _max = other_minmax->_max;
85
2
            }
86
18
        }
87
88
18
        _contain_null |= minmax_func->contain_null();
89
18
        return Status::OK();
90
18
    }
91
92
1.00k
    MinMaxFuncBase* clone() const override {
93
1.00k
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
1.00k
        cloned->_max = _max;
95
1.00k
        cloned->_min = _min;
96
1.00k
        cloned->_min_value_set = _min_value_set;
97
1.00k
        cloned->_contain_null = _contain_null;
98
1.00k
        return cloned;
99
1.00k
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIhLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5cloneEv
Line
Count
Source
92
2
    MinMaxFuncBase* clone() const override {
93
2
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
2
        cloned->_max = _max;
95
2
        cloned->_min = _min;
96
2
        cloned->_min_value_set = _min_value_set;
97
2
        cloned->_contain_null = _contain_null;
98
2
        return cloned;
99
2
    }
_ZNK5doris13MinMaxNumFuncIaLb1ELb1EE5cloneEv
Line
Count
Source
92
100
    MinMaxFuncBase* clone() const override {
93
100
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
100
        cloned->_max = _max;
95
100
        cloned->_min = _min;
96
100
        cloned->_min_value_set = _min_value_set;
97
100
        cloned->_contain_null = _contain_null;
98
100
        return cloned;
99
100
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
77
    MinMaxFuncBase* clone() const override {
93
77
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
77
        cloned->_max = _max;
95
77
        cloned->_min = _min;
96
77
        cloned->_min_value_set = _min_value_set;
97
77
        cloned->_contain_null = _contain_null;
98
77
        return cloned;
99
77
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
551
    MinMaxFuncBase* clone() const override {
93
551
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
551
        cloned->_max = _max;
95
551
        cloned->_min = _min;
96
551
        cloned->_min_value_set = _min_value_set;
97
551
        cloned->_contain_null = _contain_null;
98
551
        return cloned;
99
551
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
122
    MinMaxFuncBase* clone() const override {
93
122
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
122
        cloned->_max = _max;
95
122
        cloned->_min = _min;
96
122
        cloned->_min_value_set = _min_value_set;
97
122
        cloned->_contain_null = _contain_null;
98
122
        return cloned;
99
122
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
Line
Count
Source
92
11
    MinMaxFuncBase* clone() const override {
93
11
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
11
        cloned->_max = _max;
95
11
        cloned->_min = _min;
96
11
        cloned->_min_value_set = _min_value_set;
97
11
        cloned->_contain_null = _contain_null;
98
11
        return cloned;
99
11
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIfLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIdLb1ELb1EE5cloneEv
Line
Count
Source
92
1
    MinMaxFuncBase* clone() const override {
93
1
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
1
        cloned->_max = _max;
95
1
        cloned->_min = _min;
96
1
        cloned->_min_value_set = _min_value_set;
97
1
        cloned->_contain_null = _contain_null;
98
1
        return cloned;
99
1
    }
_ZNK5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5cloneEv
Line
Count
Source
92
5
    MinMaxFuncBase* clone() const override {
93
5
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
5
        cloned->_max = _max;
95
5
        cloned->_min = _min;
96
5
        cloned->_min_value_set = _min_value_set;
97
5
        cloned->_contain_null = _contain_null;
98
5
        return cloned;
99
5
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
26
    MinMaxFuncBase* clone() const override {
93
26
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
26
        cloned->_max = _max;
95
26
        cloned->_min = _min;
96
26
        cloned->_min_value_set = _min_value_set;
97
26
        cloned->_contain_null = _contain_null;
98
26
        return cloned;
99
26
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
16
    MinMaxFuncBase* clone() const override {
93
16
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
16
        cloned->_max = _max;
95
16
        cloned->_min = _min;
96
16
        cloned->_min_value_set = _min_value_set;
97
16
        cloned->_contain_null = _contain_null;
98
16
        return cloned;
99
16
    }
_ZNK5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5cloneEv
Line
Count
Source
92
8
    MinMaxFuncBase* clone() const override {
93
8
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
8
        cloned->_max = _max;
95
8
        cloned->_min = _min;
96
8
        cloned->_min_value_set = _min_value_set;
97
8
        cloned->_contain_null = _contain_null;
98
8
        return cloned;
99
8
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5cloneEv
Line
Count
Source
92
39
    MinMaxFuncBase* clone() const override {
93
39
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
39
        cloned->_max = _max;
95
39
        cloned->_min = _min;
96
39
        cloned->_min_value_set = _min_value_set;
97
39
        cloned->_contain_null = _contain_null;
98
39
        return cloned;
99
39
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5cloneEv
Line
Count
Source
92
14
    MinMaxFuncBase* clone() const override {
93
14
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
14
        cloned->_max = _max;
95
14
        cloned->_min = _min;
96
14
        cloned->_min_value_set = _min_value_set;
97
14
        cloned->_contain_null = _contain_null;
98
14
        return cloned;
99
14
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5cloneEv
Line
Count
Source
92
21
    MinMaxFuncBase* clone() const override {
93
21
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
21
        cloned->_max = _max;
95
21
        cloned->_min = _min;
96
21
        cloned->_min_value_set = _min_value_set;
97
21
        cloned->_contain_null = _contain_null;
98
21
        return cloned;
99
21
    }
_ZNK5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5cloneEv
Line
Count
Source
92
4
    MinMaxFuncBase* clone() const override {
93
4
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
4
        cloned->_max = _max;
95
4
        cloned->_min = _min;
96
4
        cloned->_min_value_set = _min_value_set;
97
4
        cloned->_contain_null = _contain_null;
98
4
        return cloned;
99
4
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
Line
Count
Source
92
2
    MinMaxFuncBase* clone() const override {
93
2
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
2
        cloned->_max = _max;
95
2
        cloned->_min = _min;
96
2
        cloned->_min_value_set = _min_value_set;
97
2
        cloned->_contain_null = _contain_null;
98
2
        return cloned;
99
2
    }
_ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
Line
Count
Source
92
5
    MinMaxFuncBase* clone() const override {
93
5
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
5
        cloned->_max = _max;
95
5
        cloned->_min = _min;
96
5
        cloned->_min_value_set = _min_value_set;
97
5
        cloned->_contain_null = _contain_null;
98
5
        return cloned;
99
5
    }
100
101
5.33k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
101
1
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
8
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
101
489
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
340
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
2.98k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
842
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
52
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
101
5
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
15
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
133
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
116
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
9
    void* get_max() override { return &_max; }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
173
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
50
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
44
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
36
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
17
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_maxEv
Line
Count
Source
101
6
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_maxEv
Line
Count
Source
101
14
    void* get_max() override { return &_max; }
102
103
5.39k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
103
1
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
103
8
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
103
476
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
339
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
3.01k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
869
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
46
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
103
5
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
103
15
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
132
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
118
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
9
    void* get_min() override { return &_min; }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
173
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
50
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
44
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
55
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
103
17
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_minEv
Line
Count
Source
103
6
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_minEv
Line
Count
Source
103
14
    void* get_min() override { return &_min; }
104
105
1.69k
    Status assign(void* min_data, void* max_data) override {
106
1.69k
        if constexpr (IsStringValue) {
107
59
            _min_value_set = true;
108
59
        }
109
1.69k
        _min = *(T*)min_data;
110
1.69k
        _max = *(T*)max_data;
111
1.69k
        return Status::OK();
112
1.69k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
55
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
55
        _min = *(T*)min_data;
110
55
        _max = *(T*)max_data;
111
55
        return Status::OK();
112
55
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
181
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
181
        _min = *(T*)min_data;
110
181
        _max = *(T*)max_data;
111
181
        return Status::OK();
112
181
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1.10k
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1.10k
        _min = *(T*)min_data;
110
1.10k
        _max = *(T*)max_data;
111
1.10k
        return Status::OK();
112
1.10k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
123
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
123
        _min = *(T*)min_data;
110
123
        _max = *(T*)max_data;
111
123
        return Status::OK();
112
123
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
13
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
13
        _min = *(T*)min_data;
110
13
        _max = *(T*)max_data;
111
13
        return Status::OK();
112
13
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
2
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
2
        _min = *(T*)min_data;
110
2
        _max = *(T*)max_data;
111
2
        return Status::OK();
112
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
75
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
75
        _min = *(T*)min_data;
110
75
        _max = *(T*)max_data;
111
75
        return Status::OK();
112
75
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
31
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
31
        _min = *(T*)min_data;
110
31
        _max = *(T*)max_data;
111
31
        return Status::OK();
112
31
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE6assignEPvS3_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE6assignEPvS8_
Line
Count
Source
105
59
    Status assign(void* min_data, void* max_data) override {
106
59
        if constexpr (IsStringValue) {
107
59
            _min_value_set = true;
108
59
        }
109
59
        _min = *(T*)min_data;
110
59
        _max = *(T*)max_data;
111
59
        return Status::OK();
112
59
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
21
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
21
        _min = *(T*)min_data;
110
21
        _max = *(T*)max_data;
111
21
        return Status::OK();
112
21
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
5
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
5
        _min = *(T*)min_data;
110
5
        _max = *(T*)max_data;
111
5
        return Status::OK();
112
5
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
7
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
7
        _min = *(T*)min_data;
110
7
        _max = *(T*)max_data;
111
7
        return Status::OK();
112
7
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE6assignEPvS7_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
7
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
7
        _min = *(T*)min_data;
110
7
        _max = *(T*)max_data;
111
7
        return Status::OK();
112
7
    }
113
114
2.36k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
156
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
321
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
1.40k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
202
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
12
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
7
    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
114
74
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
30
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
104
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
20
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
21
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
6
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
115
116
private:
117
2.36k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2.36k
        if constexpr (NeedMin) {
119
2.36k
            f(filter->mutable_min_val(), _min);
120
2.36k
        }
121
2.36k
        if constexpr (NeedMax) {
122
2.36k
            f(filter->mutable_max_val(), _max);
123
2.36k
        }
124
2.36k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7_set_pbIZNS_13get_convertorIaEEDavEUlPNS_12PColumnValueERKaE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
156
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
156
        if constexpr (NeedMin) {
119
156
            f(filter->mutable_min_val(), _min);
120
156
        }
121
156
        if constexpr (NeedMax) {
122
156
            f(filter->mutable_max_val(), _max);
123
156
        }
124
156
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
322
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
322
        if constexpr (NeedMin) {
119
322
            f(filter->mutable_min_val(), _min);
120
322
        }
121
322
        if constexpr (NeedMax) {
122
322
            f(filter->mutable_max_val(), _max);
123
322
        }
124
322
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
1.40k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.40k
        if constexpr (NeedMin) {
119
1.40k
            f(filter->mutable_min_val(), _min);
120
1.40k
        }
121
1.40k
        if constexpr (NeedMax) {
122
1.40k
            f(filter->mutable_max_val(), _max);
123
1.40k
        }
124
1.40k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
202
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
202
        if constexpr (NeedMin) {
119
202
            f(filter->mutable_min_val(), _min);
120
202
        }
121
202
        if constexpr (NeedMax) {
122
202
            f(filter->mutable_max_val(), _max);
123
202
        }
124
202
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
12
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
12
        if constexpr (NeedMin) {
119
12
            f(filter->mutable_min_val(), _min);
120
12
        }
121
12
        if constexpr (NeedMax) {
122
12
            f(filter->mutable_max_val(), _max);
123
12
        }
124
12
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
7
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
7
        if constexpr (NeedMin) {
119
7
            f(filter->mutable_min_val(), _min);
120
7
        }
121
7
        if constexpr (NeedMax) {
122
7
            f(filter->mutable_max_val(), _max);
123
7
        }
124
7
    }
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
117
74
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
74
        if constexpr (NeedMin) {
119
74
            f(filter->mutable_min_val(), _min);
120
74
        }
121
74
        if constexpr (NeedMax) {
122
74
            f(filter->mutable_max_val(), _max);
123
74
        }
124
74
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
30
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
30
        if constexpr (NeedMin) {
119
30
            f(filter->mutable_min_val(), _min);
120
30
        }
121
30
        if constexpr (NeedMax) {
122
30
            f(filter->mutable_max_val(), _max);
123
30
        }
124
30
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
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
117
104
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
104
        if constexpr (NeedMin) {
119
104
            f(filter->mutable_min_val(), _min);
120
104
        }
121
104
        if constexpr (NeedMax) {
122
104
            f(filter->mutable_max_val(), _max);
123
104
        }
124
104
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
20
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
20
        if constexpr (NeedMin) {
119
20
            f(filter->mutable_min_val(), _min);
120
20
        }
121
20
        if constexpr (NeedMax) {
122
20
            f(filter->mutable_max_val(), _max);
123
20
        }
124
20
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
4
        if constexpr (NeedMin) {
119
4
            f(filter->mutable_min_val(), _min);
120
4
        }
121
4
        if constexpr (NeedMax) {
122
4
            f(filter->mutable_max_val(), _max);
123
4
        }
124
4
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
21
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
21
        if constexpr (NeedMin) {
119
21
            f(filter->mutable_min_val(), _min);
120
21
        }
121
21
        if constexpr (NeedMax) {
122
21
            f(filter->mutable_max_val(), _max);
123
21
        }
124
21
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS5_EEDavEUlPNS_12PColumnValueERKS5_E_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE7_set_pbIZNS_13get_convertorIjEEDavEUlPNS_12PColumnValueERKjE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7_set_pbIZNS_13get_convertorIoEEDavEUlPNS_12PColumnValueERKoE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
6
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
6
        if constexpr (NeedMin) {
119
6
            f(filter->mutable_min_val(), _min);
120
6
        }
121
6
        if constexpr (NeedMax) {
122
6
            f(filter->mutable_max_val(), _max);
123
6
        }
124
6
    }
125
126
    void _update_batch_string(const auto& column_string, const uint8_t* __restrict nullmap,
127
515
                              size_t start, size_t size) {
128
5.50k
        for (size_t i = start; i < size; i++) {
129
4.99k
            if (nullmap == nullptr || !nullmap[i]) {
130
4.96k
                if constexpr (NeedMin) {
131
4.96k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
678
                        _min = column_string.get_data_at(i).to_string();
133
678
                        _min_value_set = true;
134
678
                    }
135
4.96k
                }
136
4.96k
                if constexpr (NeedMax) {
137
4.96k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
1.33k
                        _max = column_string.get_data_at(i).to_string();
139
1.33k
                    }
140
4.96k
                }
141
4.96k
            }
142
4.99k
        }
143
515
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE20_update_batch_stringINS_9ColumnStrImEEEEvRKT_PKhmm
Line
Count
Source
127
1
                              size_t start, size_t size) {
128
9
        for (size_t i = start; i < size; i++) {
129
8
            if (nullmap == nullptr || !nullmap[i]) {
130
8
                if constexpr (NeedMin) {
131
8
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
1
                        _min = column_string.get_data_at(i).to_string();
133
1
                        _min_value_set = true;
134
1
                    }
135
8
                }
136
8
                if constexpr (NeedMax) {
137
8
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
8
                        _max = column_string.get_data_at(i).to_string();
139
8
                    }
140
8
                }
141
8
            }
142
8
        }
143
1
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE20_update_batch_stringINS_9ColumnStrIjEEEEvRKT_PKhmm
Line
Count
Source
127
514
                              size_t start, size_t size) {
128
5.49k
        for (size_t i = start; i < size; i++) {
129
4.98k
            if (nullmap == nullptr || !nullmap[i]) {
130
4.95k
                if constexpr (NeedMin) {
131
4.95k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
677
                        _min = column_string.get_data_at(i).to_string();
133
677
                        _min_value_set = true;
134
677
                    }
135
4.95k
                }
136
4.95k
                if constexpr (NeedMax) {
137
4.95k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
1.32k
                        _max = column_string.get_data_at(i).to_string();
139
1.32k
                    }
140
4.95k
                }
141
4.95k
            }
142
4.98k
        }
143
514
    }
144
145
2.91k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.91k
        const auto size = column->size();
147
2.91k
        if constexpr (std::is_same_v<T, std::string>) {
148
35
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
34
            } else {
152
34
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
34
                                     size);
154
34
            }
155
2.88k
        } else {
156
2.88k
            const T* data = (T*)column->get_raw_data().data;
157
1.31M
            for (size_t i = start; i < size; i++) {
158
1.31M
                if constexpr (NeedMin) {
159
1.31M
                    _min = std::min(_min, *(data + i));
160
1.31M
                }
161
1.31M
                if constexpr (NeedMax) {
162
1.31M
                    _max = std::max(_max, *(data + i));
163
1.31M
                }
164
1.31M
            }
165
2.88k
        }
166
2.91k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
215
    void _update_batch(const ColumnPtr& column, size_t start) {
146
215
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
215
        } else {
156
215
            const T* data = (T*)column->get_raw_data().data;
157
677
            for (size_t i = start; i < size; i++) {
158
462
                if constexpr (NeedMin) {
159
462
                    _min = std::min(_min, *(data + i));
160
462
                }
161
462
                if constexpr (NeedMax) {
162
462
                    _max = std::max(_max, *(data + i));
163
462
                }
164
462
            }
165
215
        }
166
215
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
2.18k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.18k
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
2.18k
        } else {
156
2.18k
            const T* data = (T*)column->get_raw_data().data;
157
1.31M
            for (size_t i = start; i < size; i++) {
158
1.30M
                if constexpr (NeedMin) {
159
1.30M
                    _min = std::min(_min, *(data + i));
160
1.30M
                }
161
1.30M
                if constexpr (NeedMax) {
162
1.30M
                    _max = std::max(_max, *(data + i));
163
1.30M
                }
164
1.30M
            }
165
2.18k
        }
166
2.18k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
86
    void _update_batch(const ColumnPtr& column, size_t start) {
146
86
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
86
        } else {
156
86
            const T* data = (T*)column->get_raw_data().data;
157
542
            for (size_t i = start; i < size; i++) {
158
456
                if constexpr (NeedMin) {
159
456
                    _min = std::min(_min, *(data + i));
160
456
                }
161
456
                if constexpr (NeedMax) {
162
456
                    _max = std::max(_max, *(data + i));
163
456
                }
164
456
            }
165
86
        }
166
86
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
87
    void _update_batch(const ColumnPtr& column, size_t start) {
146
87
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
87
        } else {
156
87
            const T* data = (T*)column->get_raw_data().data;
157
252
            for (size_t i = start; i < size; i++) {
158
165
                if constexpr (NeedMin) {
159
165
                    _min = std::min(_min, *(data + i));
160
165
                }
161
165
                if constexpr (NeedMax) {
162
165
                    _max = std::max(_max, *(data + i));
163
165
                }
164
165
            }
165
87
        }
166
87
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
7
    void _update_batch(const ColumnPtr& column, size_t start) {
146
7
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
7
        } else {
156
7
            const T* data = (T*)column->get_raw_data().data;
157
16
            for (size_t i = start; i < size; i++) {
158
9
                if constexpr (NeedMin) {
159
9
                    _min = std::min(_min, *(data + i));
160
9
                }
161
9
                if constexpr (NeedMax) {
162
9
                    _max = std::max(_max, *(data + i));
163
9
                }
164
9
            }
165
7
        }
166
7
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
2
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
2
        } else {
156
2
            const T* data = (T*)column->get_raw_data().data;
157
8
            for (size_t i = start; i < size; i++) {
158
6
                if constexpr (NeedMin) {
159
6
                    _min = std::min(_min, *(data + i));
160
6
                }
161
6
                if constexpr (NeedMax) {
162
6
                    _max = std::max(_max, *(data + i));
163
6
                }
164
6
            }
165
2
        }
166
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
170
    void _update_batch(const ColumnPtr& column, size_t start) {
146
170
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
170
        } else {
156
170
            const T* data = (T*)column->get_raw_data().data;
157
3.78k
            for (size_t i = start; i < size; i++) {
158
3.61k
                if constexpr (NeedMin) {
159
3.61k
                    _min = std::min(_min, *(data + i));
160
3.61k
                }
161
3.61k
                if constexpr (NeedMax) {
162
3.61k
                    _max = std::max(_max, *(data + i));
163
3.61k
                }
164
3.61k
            }
165
170
        }
166
170
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
58
    void _update_batch(const ColumnPtr& column, size_t start) {
146
58
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
58
        } else {
156
58
            const T* data = (T*)column->get_raw_data().data;
157
230
            for (size_t i = start; i < size; i++) {
158
172
                if constexpr (NeedMin) {
159
172
                    _min = std::min(_min, *(data + i));
160
172
                }
161
172
                if constexpr (NeedMax) {
162
172
                    _max = std::max(_max, *(data + i));
163
172
                }
164
172
            }
165
58
        }
166
58
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
145
35
    void _update_batch(const ColumnPtr& column, size_t start) {
146
35
        const auto size = column->size();
147
35
        if constexpr (std::is_same_v<T, std::string>) {
148
35
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
34
            } else {
152
34
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
34
                                     size);
154
34
            }
155
        } else {
156
            const T* data = (T*)column->get_raw_data().data;
157
            for (size_t i = start; i < size; i++) {
158
                if constexpr (NeedMin) {
159
                    _min = std::min(_min, *(data + i));
160
                }
161
                if constexpr (NeedMax) {
162
                    _max = std::max(_max, *(data + i));
163
                }
164
            }
165
        }
166
35
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
145
21
    void _update_batch(const ColumnPtr& column, size_t start) {
146
21
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
21
        } else {
156
21
            const T* data = (T*)column->get_raw_data().data;
157
146
            for (size_t i = start; i < size; i++) {
158
125
                if constexpr (NeedMin) {
159
125
                    _min = std::min(_min, *(data + i));
160
125
                }
161
125
                if constexpr (NeedMax) {
162
125
                    _max = std::max(_max, *(data + i));
163
125
                }
164
125
            }
165
21
        }
166
21
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
42
    void _update_batch(const ColumnPtr& column, size_t start) {
146
42
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
42
        } else {
156
42
            const T* data = (T*)column->get_raw_data().data;
157
125
            for (size_t i = start; i < size; i++) {
158
83
                if constexpr (NeedMin) {
159
83
                    _min = std::min(_min, *(data + i));
160
83
                }
161
83
                if constexpr (NeedMax) {
162
83
                    _max = std::max(_max, *(data + i));
163
83
                }
164
83
            }
165
42
        }
166
42
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
167
168
6.88k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
6.88k
        const auto size = column->size();
170
6.88k
        if constexpr (std::is_same_v<T, std::string>) {
171
480
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
480
            } else {
175
480
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
480
                                     start, size);
177
480
            }
178
6.40k
        } else {
179
6.40k
            const T* data = (T*)column->get_raw_data().data;
180
966k
            for (size_t i = start; i < size; i++) {
181
960k
                if (!nullmap[i]) {
182
958k
                    if constexpr (NeedMin) {
183
958k
                        _min = std::min(_min, *(data + i));
184
958k
                    }
185
958k
                    if constexpr (NeedMax) {
186
958k
                        _max = std::max(_max, *(data + i));
187
958k
                    }
188
958k
                }
189
960k
            }
190
6.40k
        }
191
6.88k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
6
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
6
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
6
        } else {
179
6
            const T* data = (T*)column->get_raw_data().data;
180
24
            for (size_t i = start; i < size; i++) {
181
18
                if (!nullmap[i]) {
182
18
                    if constexpr (NeedMin) {
183
18
                        _min = std::min(_min, *(data + i));
184
18
                    }
185
18
                    if constexpr (NeedMax) {
186
18
                        _max = std::max(_max, *(data + i));
187
18
                    }
188
18
                }
189
18
            }
190
6
        }
191
6
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
801
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
801
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
801
        } else {
179
801
            const T* data = (T*)column->get_raw_data().data;
180
2.85k
            for (size_t i = start; i < size; i++) {
181
2.05k
                if (!nullmap[i]) {
182
2.02k
                    if constexpr (NeedMin) {
183
2.02k
                        _min = std::min(_min, *(data + i));
184
2.02k
                    }
185
2.02k
                    if constexpr (NeedMax) {
186
2.02k
                        _max = std::max(_max, *(data + i));
187
2.02k
                    }
188
2.02k
                }
189
2.05k
            }
190
801
        }
191
801
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
651
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
651
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
651
        } else {
179
651
            const T* data = (T*)column->get_raw_data().data;
180
3.93k
            for (size_t i = start; i < size; i++) {
181
3.28k
                if (!nullmap[i]) {
182
2.96k
                    if constexpr (NeedMin) {
183
2.96k
                        _min = std::min(_min, *(data + i));
184
2.96k
                    }
185
2.96k
                    if constexpr (NeedMax) {
186
2.96k
                        _max = std::max(_max, *(data + i));
187
2.96k
                    }
188
2.96k
                }
189
3.28k
            }
190
651
        }
191
651
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
3.15k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
3.15k
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
3.15k
        } else {
179
3.15k
            const T* data = (T*)column->get_raw_data().data;
180
752k
            for (size_t i = start; i < size; i++) {
181
749k
                if (!nullmap[i]) {
182
749k
                    if constexpr (NeedMin) {
183
749k
                        _min = std::min(_min, *(data + i));
184
749k
                    }
185
749k
                    if constexpr (NeedMax) {
186
749k
                        _max = std::max(_max, *(data + i));
187
749k
                    }
188
749k
                }
189
749k
            }
190
3.15k
        }
191
3.15k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1.06k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1.06k
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
1.06k
        } else {
179
1.06k
            const T* data = (T*)column->get_raw_data().data;
180
204k
            for (size_t i = start; i < size; i++) {
181
202k
                if (!nullmap[i]) {
182
202k
                    if constexpr (NeedMin) {
183
202k
                        _min = std::min(_min, *(data + i));
184
202k
                    }
185
202k
                    if constexpr (NeedMax) {
186
202k
                        _max = std::max(_max, *(data + i));
187
202k
                    }
188
202k
                }
189
202k
            }
190
1.06k
        }
191
1.06k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
8
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
8
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
8
        } else {
179
8
            const T* data = (T*)column->get_raw_data().data;
180
40
            for (size_t i = start; i < size; i++) {
181
32
                if (!nullmap[i]) {
182
32
                    if constexpr (NeedMin) {
183
32
                        _min = std::min(_min, *(data + i));
184
32
                    }
185
32
                    if constexpr (NeedMax) {
186
32
                        _max = std::max(_max, *(data + i));
187
32
                    }
188
32
                }
189
32
            }
190
8
        }
191
8
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
35
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
35
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
35
        } else {
179
35
            const T* data = (T*)column->get_raw_data().data;
180
149
            for (size_t i = start; i < size; i++) {
181
114
                if (!nullmap[i]) {
182
114
                    if constexpr (NeedMin) {
183
114
                        _min = std::min(_min, *(data + i));
184
114
                    }
185
114
                    if constexpr (NeedMax) {
186
114
                        _max = std::max(_max, *(data + i));
187
114
                    }
188
114
                }
189
114
            }
190
35
        }
191
35
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
79
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
79
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
79
        } else {
179
79
            const T* data = (T*)column->get_raw_data().data;
180
344
            for (size_t i = start; i < size; i++) {
181
265
                if (!nullmap[i]) {
182
228
                    if constexpr (NeedMin) {
183
228
                        _min = std::min(_min, *(data + i));
184
228
                    }
185
228
                    if constexpr (NeedMax) {
186
228
                        _max = std::max(_max, *(data + i));
187
228
                    }
188
228
                }
189
265
            }
190
79
        }
191
79
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
74
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
74
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
74
        } else {
179
74
            const T* data = (T*)column->get_raw_data().data;
180
262
            for (size_t i = start; i < size; i++) {
181
188
                if (!nullmap[i]) {
182
164
                    if constexpr (NeedMin) {
183
164
                        _min = std::min(_min, *(data + i));
184
164
                    }
185
164
                    if constexpr (NeedMax) {
186
164
                        _max = std::max(_max, *(data + i));
187
164
                    }
188
164
                }
189
188
            }
190
74
        }
191
74
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
45
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
45
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
45
        } else {
179
45
            const T* data = (T*)column->get_raw_data().data;
180
201
            for (size_t i = start; i < size; i++) {
181
156
                if (!nullmap[i]) {
182
114
                    if constexpr (NeedMin) {
183
114
                        _min = std::min(_min, *(data + i));
184
114
                    }
185
114
                    if constexpr (NeedMax) {
186
114
                        _max = std::max(_max, *(data + i));
187
114
                    }
188
114
                }
189
156
            }
190
45
        }
191
45
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
480
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
480
        const auto size = column->size();
170
480
        if constexpr (std::is_same_v<T, std::string>) {
171
480
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
480
            } else {
175
480
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
480
                                     start, size);
177
480
            }
178
        } else {
179
            const T* data = (T*)column->get_raw_data().data;
180
            for (size_t i = start; i < size; i++) {
181
                if (!nullmap[i]) {
182
                    if constexpr (NeedMin) {
183
                        _min = std::min(_min, *(data + i));
184
                    }
185
                    if constexpr (NeedMax) {
186
                        _max = std::max(_max, *(data + i));
187
                    }
188
                }
189
            }
190
        }
191
480
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
103
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
103
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
103
        } else {
179
103
            const T* data = (T*)column->get_raw_data().data;
180
370
            for (size_t i = start; i < size; i++) {
181
267
                if (!nullmap[i]) {
182
160
                    if constexpr (NeedMin) {
183
160
                        _min = std::min(_min, *(data + i));
184
160
                    }
185
160
                    if constexpr (NeedMax) {
186
160
                        _max = std::max(_max, *(data + i));
187
160
                    }
188
160
                }
189
267
            }
190
103
        }
191
103
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
324
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
324
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
324
        } else {
179
324
            const T* data = (T*)column->get_raw_data().data;
180
660
            for (size_t i = start; i < size; i++) {
181
336
                if (!nullmap[i]) {
182
333
                    if constexpr (NeedMin) {
183
333
                        _min = std::min(_min, *(data + i));
184
333
                    }
185
333
                    if constexpr (NeedMax) {
186
333
                        _max = std::max(_max, *(data + i));
187
333
                    }
188
333
                }
189
336
            }
190
324
        }
191
324
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
12
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
12
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
12
        } else {
179
12
            const T* data = (T*)column->get_raw_data().data;
180
50
            for (size_t i = start; i < size; i++) {
181
38
                if (!nullmap[i]) {
182
28
                    if constexpr (NeedMin) {
183
28
                        _min = std::min(_min, *(data + i));
184
28
                    }
185
28
                    if constexpr (NeedMax) {
186
28
                        _max = std::max(_max, *(data + i));
187
28
                    }
188
28
                }
189
38
            }
190
12
        }
191
12
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
15
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
15
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
15
        } else {
179
15
            const T* data = (T*)column->get_raw_data().data;
180
104
            for (size_t i = start; i < size; i++) {
181
89
                if (!nullmap[i]) {
182
89
                    if constexpr (NeedMin) {
183
89
                        _min = std::min(_min, *(data + i));
184
89
                    }
185
89
                    if constexpr (NeedMax) {
186
89
                        _max = std::max(_max, *(data + i));
187
89
                    }
188
89
                }
189
89
            }
190
15
        }
191
15
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
2
        } else {
179
2
            const T* data = (T*)column->get_raw_data().data;
180
24
            for (size_t i = start; i < size; i++) {
181
22
                if (!nullmap[i]) {
182
20
                    if constexpr (NeedMin) {
183
20
                        _min = std::min(_min, *(data + i));
184
20
                    }
185
20
                    if constexpr (NeedMax) {
186
20
                        _max = std::max(_max, *(data + i));
187
20
                    }
188
20
                }
189
22
            }
190
2
        }
191
2
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
24
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
24
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
24
        } else {
179
24
            const T* data = (T*)column->get_raw_data().data;
180
655
            for (size_t i = start; i < size; i++) {
181
631
                if (!nullmap[i]) {
182
577
                    if constexpr (NeedMin) {
183
577
                        _min = std::min(_min, *(data + i));
184
577
                    }
185
577
                    if constexpr (NeedMax) {
186
577
                        _max = std::max(_max, *(data + i));
187
577
                    }
188
577
                }
189
631
            }
190
24
        }
191
24
    }
192
193
    T _max = type_limit<T>::min();
194
    T _min = type_limit<T>::max();
195
196
    bool _min_value_set = false;
197
};
198
199
template <class T>
200
using MinNumFunc = MinMaxNumFunc<T, false, true>;
201
202
template <class T>
203
using MaxNumFunc = MinMaxNumFunc<T, true, false>;
204
205
} // namespace doris