Coverage Report

Created: 2026-10-15 07:41

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
19.5k
    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
19.6k
    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
19.5k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
19
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
51
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
51
2.13k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
51
1.34k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
10.0k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
2.95k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
187
    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
29
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
22
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
743
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
328
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
88
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
Line
Count
Source
51
16
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
51
862
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
191
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
205
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
283
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
51
59
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIjLb1ELb1EEC2Eb
Line
Count
Source
51
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIoLb1ELb1EEC2Eb
Line
Count
Source
51
23
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
52
851
    ~MinMaxNumFunc() override = default;
53
54
6.62k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
6.62k
        if (is_column_nullable(*column)) {
56
4.55k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4.55k
            const auto& col = nullable->get_nested_column_ptr();
58
4.55k
            const auto& nullmap = nullable->get_null_map_data();
59
4.55k
            if (nullable->has_null()) {
60
4.15k
                _update_batch(col, nullmap, start);
61
4.15k
                _contain_null = true;
62
4.15k
            } else {
63
401
                _update_batch(col, start);
64
401
            }
65
4.55k
        } else {
66
2.06k
            _update_batch(column, start);
67
2.06k
        }
68
6.62k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_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
1
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1
            const auto& col = nullable->get_nested_column_ptr();
58
1
            const auto& nullmap = nullable->get_null_map_data();
59
1
            if (nullable->has_null()) {
60
1
                _update_batch(col, nullmap, start);
61
1
                _contain_null = true;
62
1
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_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
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
807
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
807
        if (is_column_nullable(*column)) {
56
790
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
790
            const auto& col = nullable->get_nested_column_ptr();
58
790
            const auto& nullmap = nullable->get_null_map_data();
59
790
            if (nullable->has_null()) {
60
533
                _update_batch(col, nullmap, start);
61
533
                _contain_null = true;
62
533
            } else {
63
257
                _update_batch(col, start);
64
257
            }
65
790
        } else {
66
17
            _update_batch(column, start);
67
17
        }
68
807
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
215
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
215
        if (is_column_nullable(*column)) {
56
213
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
213
            const auto& col = nullable->get_nested_column_ptr();
58
213
            const auto& nullmap = nullable->get_null_map_data();
59
215
            if (nullable->has_null()) {
60
215
                _update_batch(col, nullmap, start);
61
215
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
213
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
215
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
3.87k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3.87k
        if (is_column_nullable(*column)) {
56
2.39k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2.39k
            const auto& col = nullable->get_nested_column_ptr();
58
2.39k
            const auto& nullmap = nullable->get_null_map_data();
59
2.39k
            if (nullable->has_null()) {
60
2.31k
                _update_batch(col, nullmap, start);
61
2.31k
                _contain_null = true;
62
2.31k
            } else {
63
87
                _update_batch(col, start);
64
87
            }
65
2.39k
        } else {
66
1.48k
            _update_batch(column, start);
67
1.48k
        }
68
3.87k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
725
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
725
        if (is_column_nullable(*column)) {
56
600
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
600
            const auto& col = nullable->get_nested_column_ptr();
58
600
            const auto& nullmap = nullable->get_null_map_data();
59
600
            if (nullable->has_null()) {
60
598
                _update_batch(col, nullmap, start);
61
598
                _contain_null = true;
62
598
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
600
        } else {
66
125
            _update_batch(column, start);
67
125
        }
68
725
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
79
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
79
        if (is_column_nullable(*column)) {
56
1
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1
            const auto& col = nullable->get_nested_column_ptr();
58
1
            const auto& nullmap = nullable->get_null_map_data();
59
1
            if (nullable->has_null()) {
60
1
                _update_batch(col, nullmap, start);
61
1
                _contain_null = true;
62
1
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
78
        } else {
66
78
            _update_batch(column, start);
67
78
        }
68
79
    }
_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
18
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
18
        if (is_column_nullable(*column)) {
56
17
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
17
            const auto& col = nullable->get_nested_column_ptr();
58
17
            const auto& nullmap = nullable->get_null_map_data();
59
17
            if (nullable->has_null()) {
60
1
                _update_batch(col, nullmap, start);
61
1
                _contain_null = true;
62
16
            } else {
63
16
                _update_batch(col, start);
64
16
            }
65
17
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
18
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
5
        if (is_column_nullable(*column)) {
56
3
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
3
            const auto& col = nullable->get_nested_column_ptr();
58
3
            const auto& nullmap = nullable->get_null_map_data();
59
3
            if (nullable->has_null()) {
60
3
                _update_batch(col, nullmap, start);
61
3
                _contain_null = true;
62
3
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
3
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
5
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
223
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
223
        if (is_column_nullable(*column)) {
56
73
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
73
            const auto& col = nullable->get_nested_column_ptr();
58
73
            const auto& nullmap = nullable->get_null_map_data();
59
73
            if (nullable->has_null()) {
60
71
                _update_batch(col, nullmap, start);
61
71
                _contain_null = true;
62
71
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
150
        } else {
66
150
            _update_batch(column, start);
67
150
        }
68
223
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_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
38
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
38
            const auto& col = nullable->get_nested_column_ptr();
58
38
            const auto& nullmap = nullable->get_null_map_data();
59
38
            if (nullable->has_null()) {
60
38
                _update_batch(col, nullmap, start);
61
38
                _contain_null = true;
62
38
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
38
        } else {
66
16
            _update_batch(column, start);
67
16
        }
68
54
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
49
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
49
        if (is_column_nullable(*column)) {
56
49
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
49
            const auto& col = nullable->get_nested_column_ptr();
58
49
            const auto& nullmap = nullable->get_null_map_data();
59
49
            if (nullable->has_null()) {
60
49
                _update_batch(col, nullmap, start);
61
49
                _contain_null = true;
62
49
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
49
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
49
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
4
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
4
        if (is_column_nullable(*column)) {
56
4
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4
            const auto& col = nullable->get_nested_column_ptr();
58
4
            const auto& nullmap = nullable->get_null_map_data();
59
4
            if (nullable->has_null()) {
60
4
                _update_batch(col, nullmap, start);
61
4
                _contain_null = true;
62
4
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
4
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
4
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
54
293
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
293
        if (is_column_nullable(*column)) {
56
168
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
168
            const auto& col = nullable->get_nested_column_ptr();
58
168
            const auto& nullmap = nullable->get_null_map_data();
59
168
            if (nullable->has_null()) {
60
162
                _update_batch(col, nullmap, start);
61
162
                _contain_null = true;
62
162
            } else {
63
6
                _update_batch(col, start);
64
6
            }
65
168
        } else {
66
125
            _update_batch(column, start);
67
125
        }
68
293
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
55
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
55
        if (is_column_nullable(*column)) {
56
54
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
54
            const auto& col = nullable->get_nested_column_ptr();
58
54
            const auto& nullmap = nullable->get_null_map_data();
59
54
            if (nullable->has_null()) {
60
54
                _update_batch(col, nullmap, start);
61
54
                _contain_null = true;
62
54
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
54
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
55
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
59
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
59
        if (is_column_nullable(*column)) {
56
33
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
33
            const auto& col = nullable->get_nested_column_ptr();
58
33
            const auto& nullmap = nullable->get_null_map_data();
59
33
            if (nullable->has_null()) {
60
33
                _update_batch(col, nullmap, start);
61
33
                _contain_null = true;
62
33
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
33
        } else {
66
26
            _update_batch(column, start);
67
26
        }
68
59
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
129
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
129
        if (is_column_nullable(*column)) {
56
88
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
88
            const auto& col = nullable->get_nested_column_ptr();
58
88
            const auto& nullmap = nullable->get_null_map_data();
59
88
            if (nullable->has_null()) {
60
61
                _update_batch(col, nullmap, start);
61
61
                _contain_null = true;
62
61
            } else {
63
27
                _update_batch(col, start);
64
27
            }
65
88
        } else {
66
41
            _update_batch(column, start);
67
41
        }
68
129
    }
_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
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
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
12
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
12
        if (is_column_nullable(*column)) {
56
11
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
11
            const auto& col = nullable->get_nested_column_ptr();
58
11
            const auto& nullmap = nullable->get_null_map_data();
59
11
            if (nullable->has_null()) {
60
5
                _update_batch(col, nullmap, start);
61
5
                _contain_null = true;
62
6
            } else {
63
6
                _update_batch(col, start);
64
6
            }
65
11
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
12
    }
69
70
7.71k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
7.71k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
7.71k
        if constexpr (NeedMin) {
73
7.71k
            if constexpr (IsStringValue) {
74
262
                if (other_minmax->_min < _min || !_min_value_set) {
75
60
                    _min = other_minmax->_min;
76
60
                    _min_value_set = true;
77
60
                }
78
7.45k
            } else if (other_minmax->_min < _min) {
79
1.11k
                _min = other_minmax->_min;
80
1.11k
            }
81
7.71k
        }
82
7.71k
        if constexpr (NeedMax) {
83
7.71k
            if (other_minmax->_max > _max) {
84
1.15k
                _max = other_minmax->_max;
85
1.15k
            }
86
7.71k
        }
87
88
7.71k
        _contain_null |= minmax_func->contain_null();
89
7.71k
        return Status::OK();
90
7.71k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
15
    Status merge(MinMaxFuncBase* minmax_func) override {
71
15
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
15
        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
15
            } else if (other_minmax->_min < _min) {
79
1
                _min = other_minmax->_min;
80
1
            }
81
15
        }
82
15
        if constexpr (NeedMax) {
83
15
            if (other_minmax->_max > _max) {
84
1
                _max = other_minmax->_max;
85
1
            }
86
15
        }
87
88
15
        _contain_null |= minmax_func->contain_null();
89
15
        return Status::OK();
90
15
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
1.03k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
1.03k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
1.03k
        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.03k
            } else if (other_minmax->_min < _min) {
79
169
                _min = other_minmax->_min;
80
169
            }
81
1.03k
        }
82
1.03k
        if constexpr (NeedMax) {
83
1.03k
            if (other_minmax->_max > _max) {
84
137
                _max = other_minmax->_max;
85
137
            }
86
1.03k
        }
87
88
1.03k
        _contain_null |= minmax_func->contain_null();
89
1.03k
        return Status::OK();
90
1.03k
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
510
    Status merge(MinMaxFuncBase* minmax_func) override {
71
510
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
510
        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
510
            } else if (other_minmax->_min < _min) {
79
43
                _min = other_minmax->_min;
80
43
            }
81
510
        }
82
510
        if constexpr (NeedMax) {
83
510
            if (other_minmax->_max > _max) {
84
54
                _max = other_minmax->_max;
85
54
            }
86
510
        }
87
88
510
        _contain_null |= minmax_func->contain_null();
89
510
        return Status::OK();
90
510
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
4.15k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
4.15k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
4.15k
        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.15k
            } else if (other_minmax->_min < _min) {
79
703
                _min = other_minmax->_min;
80
703
            }
81
4.15k
        }
82
4.15k
        if constexpr (NeedMax) {
83
4.15k
            if (other_minmax->_max > _max) {
84
748
                _max = other_minmax->_max;
85
748
            }
86
4.15k
        }
87
88
4.15k
        _contain_null |= minmax_func->contain_null();
89
4.15k
        return Status::OK();
90
4.15k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
809
    Status merge(MinMaxFuncBase* minmax_func) override {
71
809
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
809
        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
809
            } else if (other_minmax->_min < _min) {
79
84
                _min = other_minmax->_min;
80
84
            }
81
809
        }
82
809
        if constexpr (NeedMax) {
83
809
            if (other_minmax->_max > _max) {
84
73
                _max = other_minmax->_max;
85
73
            }
86
809
        }
87
88
809
        _contain_null |= minmax_func->contain_null();
89
809
        return Status::OK();
90
809
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
105
    Status merge(MinMaxFuncBase* minmax_func) override {
71
105
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
105
        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
105
            } else if (other_minmax->_min < _min) {
79
5
                _min = other_minmax->_min;
80
5
            }
81
105
        }
82
105
        if constexpr (NeedMax) {
83
105
            if (other_minmax->_max > _max) {
84
7
                _max = other_minmax->_max;
85
7
            }
86
105
        }
87
88
105
        _contain_null |= minmax_func->contain_null();
89
105
        return Status::OK();
90
105
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
6
    Status merge(MinMaxFuncBase* minmax_func) override {
71
6
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
6
        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
6
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
6
        }
82
6
        if constexpr (NeedMax) {
83
6
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
6
        }
87
88
6
        _contain_null |= minmax_func->contain_null();
89
6
        return Status::OK();
90
6
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_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
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
358
    Status merge(MinMaxFuncBase* minmax_func) override {
71
358
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
358
        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
358
            } else if (other_minmax->_min < _min) {
79
66
                _min = other_minmax->_min;
80
66
            }
81
358
        }
82
358
        if constexpr (NeedMax) {
83
358
            if (other_minmax->_max > _max) {
84
59
                _max = other_minmax->_max;
85
59
            }
86
358
        }
87
88
358
        _contain_null |= minmax_func->contain_null();
89
358
        return Status::OK();
90
358
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
110
    Status merge(MinMaxFuncBase* minmax_func) override {
71
110
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
110
        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
110
            } else if (other_minmax->_min < _min) {
79
15
                _min = other_minmax->_min;
80
15
            }
81
110
        }
82
110
        if constexpr (NeedMax) {
83
110
            if (other_minmax->_max > _max) {
84
14
                _max = other_minmax->_max;
85
14
            }
86
110
        }
87
88
110
        _contain_null |= minmax_func->contain_null();
89
110
        return Status::OK();
90
110
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
42
    Status merge(MinMaxFuncBase* minmax_func) override {
71
42
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
42
        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
42
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
42
        }
82
42
        if constexpr (NeedMax) {
83
42
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
42
        }
87
88
42
        _contain_null |= minmax_func->contain_null();
89
42
        return Status::OK();
90
42
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_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
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
262
    Status merge(MinMaxFuncBase* minmax_func) override {
71
262
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
262
        if constexpr (NeedMin) {
73
262
            if constexpr (IsStringValue) {
74
262
                if (other_minmax->_min < _min || !_min_value_set) {
75
60
                    _min = other_minmax->_min;
76
60
                    _min_value_set = true;
77
60
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
262
        }
82
262
        if constexpr (NeedMax) {
83
262
            if (other_minmax->_max > _max) {
84
34
                _max = other_minmax->_max;
85
34
            }
86
262
        }
87
88
262
        _contain_null |= minmax_func->contain_null();
89
262
        return Status::OK();
90
262
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
77
    Status merge(MinMaxFuncBase* minmax_func) override {
71
77
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
77
        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
77
            } else if (other_minmax->_min < _min) {
79
13
                _min = other_minmax->_min;
80
13
            }
81
77
        }
82
77
        if constexpr (NeedMax) {
83
77
            if (other_minmax->_max > _max) {
84
13
                _max = other_minmax->_max;
85
13
            }
86
77
        }
87
88
77
        _contain_null |= minmax_func->contain_null();
89
77
        return Status::OK();
90
77
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
61
    Status merge(MinMaxFuncBase* minmax_func) override {
71
61
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
61
        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
61
            } else if (other_minmax->_min < _min) {
79
3
                _min = other_minmax->_min;
80
3
            }
81
61
        }
82
61
        if constexpr (NeedMax) {
83
61
            if (other_minmax->_max > _max) {
84
3
                _max = other_minmax->_max;
85
3
            }
86
61
        }
87
88
61
        _contain_null |= minmax_func->contain_null();
89
61
        return Status::OK();
90
61
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
137
    Status merge(MinMaxFuncBase* minmax_func) override {
71
137
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
137
        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
137
            } else if (other_minmax->_min < _min) {
79
12
                _min = other_minmax->_min;
80
12
            }
81
137
        }
82
137
        if constexpr (NeedMax) {
83
137
            if (other_minmax->_max > _max) {
84
14
                _max = other_minmax->_max;
85
14
            }
86
137
        }
87
88
137
        _contain_null |= minmax_func->contain_null();
89
137
        return Status::OK();
90
137
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_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: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_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
3
                _min = other_minmax->_min;
80
3
            }
81
9
        }
82
9
        if constexpr (NeedMax) {
83
9
            if (other_minmax->_max > _max) {
84
2
                _max = other_minmax->_max;
85
2
            }
86
9
        }
87
88
9
        _contain_null |= minmax_func->contain_null();
89
9
        return Status::OK();
90
9
    }
91
92
735
    MinMaxFuncBase* clone() const override {
93
735
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
735
        cloned->_max = _max;
95
735
        cloned->_min = _min;
96
735
        cloned->_min_value_set = _min_value_set;
97
735
        cloned->_contain_null = _contain_null;
98
735
        return cloned;
99
735
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIhLb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIaLb1ELb1EE5cloneEv
Line
Count
Source
92
84
    MinMaxFuncBase* clone() const override {
93
84
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
84
        cloned->_max = _max;
95
84
        cloned->_min = _min;
96
84
        cloned->_min_value_set = _min_value_set;
97
84
        cloned->_contain_null = _contain_null;
98
84
        return cloned;
99
84
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
45
    MinMaxFuncBase* clone() const override {
93
45
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
45
        cloned->_max = _max;
95
45
        cloned->_min = _min;
96
45
        cloned->_min_value_set = _min_value_set;
97
45
        cloned->_contain_null = _contain_null;
98
45
        return cloned;
99
45
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
373
    MinMaxFuncBase* clone() const override {
93
373
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
373
        cloned->_max = _max;
95
373
        cloned->_min = _min;
96
373
        cloned->_min_value_set = _min_value_set;
97
373
        cloned->_contain_null = _contain_null;
98
373
        return cloned;
99
373
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
88
    MinMaxFuncBase* clone() const override {
93
88
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
88
        cloned->_max = _max;
95
88
        cloned->_min = _min;
96
88
        cloned->_min_value_set = _min_value_set;
97
88
        cloned->_contain_null = _contain_null;
98
88
        return cloned;
99
88
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
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
    }
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
3
    MinMaxFuncBase* clone() const override {
93
3
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
3
        cloned->_max = _max;
95
3
        cloned->_min = _min;
96
3
        cloned->_min_value_set = _min_value_set;
97
3
        cloned->_contain_null = _contain_null;
98
3
        return cloned;
99
3
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
17
    MinMaxFuncBase* clone() const override {
93
17
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
17
        cloned->_max = _max;
95
17
        cloned->_min = _min;
96
17
        cloned->_min_value_set = _min_value_set;
97
17
        cloned->_contain_null = _contain_null;
98
17
        return cloned;
99
17
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5cloneEv
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
    }
_ZNK5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5cloneEv
Line
Count
Source
92
7
    MinMaxFuncBase* clone() const override {
93
7
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
7
        cloned->_max = _max;
95
7
        cloned->_min = _min;
96
7
        cloned->_min_value_set = _min_value_set;
97
7
        cloned->_contain_null = _contain_null;
98
7
        return cloned;
99
7
    }
_ZNK5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5cloneEv
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
    }
_ZNK5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5cloneEv
Line
Count
Source
92
41
    MinMaxFuncBase* clone() const override {
93
41
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
41
        cloned->_max = _max;
95
41
        cloned->_min = _min;
96
41
        cloned->_min_value_set = _min_value_set;
97
41
        cloned->_contain_null = _contain_null;
98
41
        return cloned;
99
41
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5cloneEv
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
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5cloneEv
Line
Count
Source
92
25
    MinMaxFuncBase* clone() const override {
93
25
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
25
        cloned->_max = _max;
95
25
        cloned->_min = _min;
96
25
        cloned->_min_value_set = _min_value_set;
97
25
        cloned->_contain_null = _contain_null;
98
25
        return cloned;
99
25
    }
_ZNK5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5cloneEv
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_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
Line
Count
Source
92
3
    MinMaxFuncBase* clone() const override {
93
3
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
3
        cloned->_max = _max;
95
3
        cloned->_min = _min;
96
3
        cloned->_min_value_set = _min_value_set;
97
3
        cloned->_contain_null = _contain_null;
98
3
        return cloned;
99
3
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
100
101
5.05k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
101
441
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
316
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
2.51k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
968
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
34
    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
3
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
7
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
135
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
99
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
8
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
7
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
278
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
42
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
89
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
71
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
29
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_maxEv
Line
Count
Source
101
7
    void* get_max() override { return &_max; }
102
103
5.06k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
103
422
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
316
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
2.50k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
990
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
33
    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
4
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
103
7
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
135
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
100
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
8
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
103
7
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
280
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
42
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
89
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
76
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
103
29
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_minEv
Line
Count
Source
103
7
    void* get_min() override { return &_min; }
104
105
1.85k
    Status assign(void* min_data, void* max_data) override {
106
1.85k
        if constexpr (IsStringValue) {
107
87
            _min_value_set = true;
108
87
        }
109
1.85k
        _min = *(T*)min_data;
110
1.85k
        _max = *(T*)max_data;
111
1.85k
        return Status::OK();
112
1.85k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
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_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
199
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
199
        _min = *(T*)min_data;
110
199
        _max = *(T*)max_data;
111
199
        return Status::OK();
112
199
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
187
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
187
        _min = *(T*)min_data;
110
187
        _max = *(T*)max_data;
111
187
        return Status::OK();
112
187
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1.05k
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1.05k
        _min = *(T*)min_data;
110
1.05k
        _max = *(T*)max_data;
111
1.05k
        return Status::OK();
112
1.05k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
133
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
133
        _min = *(T*)min_data;
110
133
        _max = *(T*)max_data;
111
133
        return Status::OK();
112
133
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
11
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
11
        _min = *(T*)min_data;
110
11
        _max = *(T*)max_data;
111
11
        return Status::OK();
112
11
    }
_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
87
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
87
        _min = *(T*)min_data;
110
87
        _max = *(T*)max_data;
111
87
        return Status::OK();
112
87
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
23
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
23
        _min = *(T*)min_data;
110
23
        _max = *(T*)max_data;
111
23
        return Status::OK();
112
23
    }
_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
87
    Status assign(void* min_data, void* max_data) override {
106
87
        if constexpr (IsStringValue) {
107
87
            _min_value_set = true;
108
87
        }
109
87
        _min = *(T*)min_data;
110
87
        _max = *(T*)max_data;
111
87
        return Status::OK();
112
87
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
19
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
19
        _min = *(T*)min_data;
110
19
        _max = *(T*)max_data;
111
19
        return Status::OK();
112
19
    }
_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
29
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
29
        _min = *(T*)min_data;
110
29
        _max = *(T*)max_data;
111
29
        return Status::OK();
112
29
    }
_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.11k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
2
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
200
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
188
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
1.22k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
151
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
10
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
17
    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
102
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
22
    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
140
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
18
    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
32
    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.11k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2.11k
        if constexpr (NeedMin) {
119
2.11k
            f(filter->mutable_min_val(), _min);
120
2.11k
        }
121
2.11k
        if constexpr (NeedMax) {
122
2.11k
            f(filter->mutable_max_val(), _max);
123
2.11k
        }
124
2.11k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
2
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2
        if constexpr (NeedMin) {
119
2
            f(filter->mutable_min_val(), _min);
120
2
        }
121
2
        if constexpr (NeedMax) {
122
2
            f(filter->mutable_max_val(), _max);
123
2
        }
124
2
    }
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
200
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
200
        if constexpr (NeedMin) {
119
200
            f(filter->mutable_min_val(), _min);
120
200
        }
121
200
        if constexpr (NeedMax) {
122
200
            f(filter->mutable_max_val(), _max);
123
200
        }
124
200
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
188
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
188
        if constexpr (NeedMin) {
119
188
            f(filter->mutable_min_val(), _min);
120
188
        }
121
188
        if constexpr (NeedMax) {
122
188
            f(filter->mutable_max_val(), _max);
123
188
        }
124
188
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
1.22k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.22k
        if constexpr (NeedMin) {
119
1.22k
            f(filter->mutable_min_val(), _min);
120
1.22k
        }
121
1.22k
        if constexpr (NeedMax) {
122
1.22k
            f(filter->mutable_max_val(), _max);
123
1.22k
        }
124
1.22k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
151
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
151
        if constexpr (NeedMin) {
119
151
            f(filter->mutable_min_val(), _min);
120
151
        }
121
151
        if constexpr (NeedMax) {
122
151
            f(filter->mutable_max_val(), _max);
123
151
        }
124
151
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
10
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
10
        if constexpr (NeedMin) {
119
10
            f(filter->mutable_min_val(), _min);
120
10
        }
121
10
        if constexpr (NeedMax) {
122
10
            f(filter->mutable_max_val(), _max);
123
10
        }
124
10
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
17
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
17
        if constexpr (NeedMin) {
119
17
            f(filter->mutable_min_val(), _min);
120
17
        }
121
17
        if constexpr (NeedMax) {
122
17
            f(filter->mutable_max_val(), _max);
123
17
        }
124
17
    }
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
102
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
102
        if constexpr (NeedMin) {
119
102
            f(filter->mutable_min_val(), _min);
120
102
        }
121
102
        if constexpr (NeedMax) {
122
102
            f(filter->mutable_max_val(), _max);
123
102
        }
124
102
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
22
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
22
        if constexpr (NeedMin) {
119
22
            f(filter->mutable_min_val(), _min);
120
22
        }
121
22
        if constexpr (NeedMax) {
122
22
            f(filter->mutable_max_val(), _max);
123
22
        }
124
22
    }
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
140
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
140
        if constexpr (NeedMin) {
119
140
            f(filter->mutable_min_val(), _min);
120
140
        }
121
140
        if constexpr (NeedMax) {
122
140
            f(filter->mutable_max_val(), _max);
123
140
        }
124
140
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
18
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
18
        if constexpr (NeedMin) {
119
18
            f(filter->mutable_min_val(), _min);
120
18
        }
121
18
        if constexpr (NeedMax) {
122
18
            f(filter->mutable_max_val(), _max);
123
18
        }
124
18
    }
_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
32
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
32
        if constexpr (NeedMin) {
119
32
            f(filter->mutable_min_val(), _min);
120
32
        }
121
32
        if constexpr (NeedMax) {
122
32
            f(filter->mutable_max_val(), _max);
123
32
        }
124
32
    }
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
293
                              size_t start, size_t size) {
128
8.93k
        for (size_t i = start; i < size; i++) {
129
8.64k
            if (nullmap == nullptr || !nullmap[i]) {
130
8.59k
                if constexpr (NeedMin) {
131
8.59k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
474
                        _min = column_string.get_data_at(i).to_string();
133
474
                        _min_value_set = true;
134
474
                    }
135
8.59k
                }
136
8.59k
                if constexpr (NeedMax) {
137
8.59k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
1.66k
                        _max = column_string.get_data_at(i).to_string();
139
1.66k
                    }
140
8.59k
                }
141
8.59k
            }
142
8.64k
        }
143
293
    }
_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
292
                              size_t start, size_t size) {
128
8.92k
        for (size_t i = start; i < size; i++) {
129
8.63k
            if (nullmap == nullptr || !nullmap[i]) {
130
8.58k
                if constexpr (NeedMin) {
131
8.58k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
473
                        _min = column_string.get_data_at(i).to_string();
133
473
                        _min_value_set = true;
134
473
                    }
135
8.58k
                }
136
8.58k
                if constexpr (NeedMax) {
137
8.58k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
1.65k
                        _max = column_string.get_data_at(i).to_string();
139
1.65k
                    }
140
8.58k
                }
141
8.58k
            }
142
8.63k
        }
143
292
    }
144
145
2.47k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.47k
        const auto size = column->size();
147
2.47k
        if constexpr (std::is_same_v<T, std::string>) {
148
131
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
130
            } else {
152
130
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
130
                                     size);
154
130
            }
155
2.33k
        } else {
156
2.33k
            const T* data = (T*)column->get_raw_data().data;
157
2.05M
            for (size_t i = start; i < size; i++) {
158
2.05M
                if constexpr (NeedMin) {
159
2.05M
                    _min = std::min(_min, *(data + i));
160
2.05M
                }
161
2.05M
                if constexpr (NeedMax) {
162
2.05M
                    _max = std::max(_max, *(data + i));
163
2.05M
                }
164
2.05M
            }
165
2.33k
        }
166
2.47k
    }
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
278
    void _update_batch(const ColumnPtr& column, size_t start) {
146
278
        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
278
        } else {
156
278
            const T* data = (T*)column->get_raw_data().data;
157
843
            for (size_t i = start; i < size; i++) {
158
565
                if constexpr (NeedMin) {
159
565
                    _min = std::min(_min, *(data + i));
160
565
                }
161
565
                if constexpr (NeedMax) {
162
565
                    _max = std::max(_max, *(data + i));
163
565
                }
164
565
            }
165
278
        }
166
278
    }
_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
1.56k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1.56k
        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.56k
        } else {
156
1.56k
            const T* data = (T*)column->get_raw_data().data;
157
2.05M
            for (size_t i = start; i < size; i++) {
158
2.05M
                if constexpr (NeedMin) {
159
2.05M
                    _min = std::min(_min, *(data + i));
160
2.05M
                }
161
2.05M
                if constexpr (NeedMax) {
162
2.05M
                    _max = std::max(_max, *(data + i));
163
2.05M
                }
164
2.05M
            }
165
1.56k
        }
166
1.56k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
126
    void _update_batch(const ColumnPtr& column, size_t start) {
146
126
        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
126
        } else {
156
126
            const T* data = (T*)column->get_raw_data().data;
157
743
            for (size_t i = start; i < size; i++) {
158
617
                if constexpr (NeedMin) {
159
617
                    _min = std::min(_min, *(data + i));
160
617
                }
161
617
                if constexpr (NeedMax) {
162
617
                    _max = std::max(_max, *(data + i));
163
617
                }
164
617
            }
165
126
        }
166
126
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
78
    void _update_batch(const ColumnPtr& column, size_t start) {
146
78
        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
78
        } else {
156
78
            const T* data = (T*)column->get_raw_data().data;
157
191
            for (size_t i = start; i < size; i++) {
158
113
                if constexpr (NeedMin) {
159
113
                    _min = std::min(_min, *(data + i));
160
113
                }
161
113
                if constexpr (NeedMax) {
162
113
                    _max = std::max(_max, *(data + i));
163
113
                }
164
113
            }
165
78
        }
166
78
    }
_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
17
    void _update_batch(const ColumnPtr& column, size_t start) {
146
17
        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
17
        } else {
156
17
            const T* data = (T*)column->get_raw_data().data;
157
36
            for (size_t i = start; i < size; i++) {
158
19
                if constexpr (NeedMin) {
159
19
                    _min = std::min(_min, *(data + i));
160
19
                }
161
19
                if constexpr (NeedMax) {
162
19
                    _max = std::max(_max, *(data + i));
163
19
                }
164
19
            }
165
17
        }
166
17
    }
_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
152
    void _update_batch(const ColumnPtr& column, size_t start) {
146
152
        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
152
        } else {
156
152
            const T* data = (T*)column->get_raw_data().data;
157
425
            for (size_t i = start; i < size; i++) {
158
273
                if constexpr (NeedMin) {
159
273
                    _min = std::min(_min, *(data + i));
160
273
                }
161
273
                if constexpr (NeedMax) {
162
273
                    _max = std::max(_max, *(data + i));
163
273
                }
164
273
            }
165
152
        }
166
152
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
16
    void _update_batch(const ColumnPtr& column, size_t start) {
146
16
        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
16
        } else {
156
16
            const T* data = (T*)column->get_raw_data().data;
157
61
            for (size_t i = start; i < size; i++) {
158
45
                if constexpr (NeedMin) {
159
45
                    _min = std::min(_min, *(data + i));
160
45
                }
161
45
                if constexpr (NeedMax) {
162
45
                    _max = std::max(_max, *(data + i));
163
45
                }
164
45
            }
165
16
        }
166
16
    }
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
131
    void _update_batch(const ColumnPtr& column, size_t start) {
146
131
        const auto size = column->size();
147
131
        if constexpr (std::is_same_v<T, std::string>) {
148
131
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
130
            } else {
152
130
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
130
                                     size);
154
130
            }
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
131
    }
_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
26
    void _update_batch(const ColumnPtr& column, size_t start) {
146
26
        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
26
        } else {
156
26
            const T* data = (T*)column->get_raw_data().data;
157
98
            for (size_t i = start; i < size; i++) {
158
72
                if constexpr (NeedMin) {
159
72
                    _min = std::min(_min, *(data + i));
160
72
                }
161
72
                if constexpr (NeedMax) {
162
72
                    _max = std::max(_max, *(data + i));
163
72
                }
164
72
            }
165
26
        }
166
26
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
69
    void _update_batch(const ColumnPtr& column, size_t start) {
146
69
        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
69
        } else {
156
69
            const T* data = (T*)column->get_raw_data().data;
157
197
            for (size_t i = start; i < size; i++) {
158
128
                if constexpr (NeedMin) {
159
128
                    _min = std::min(_min, *(data + i));
160
128
                }
161
128
                if constexpr (NeedMax) {
162
128
                    _max = std::max(_max, *(data + i));
163
128
                }
164
128
            }
165
69
        }
166
69
    }
_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
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
18
            for (size_t i = start; i < size; i++) {
158
11
                if constexpr (NeedMin) {
159
11
                    _min = std::min(_min, *(data + i));
160
11
                }
161
11
                if constexpr (NeedMax) {
162
11
                    _max = std::max(_max, *(data + i));
163
11
                }
164
11
            }
165
7
        }
166
7
    }
167
168
4.14k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
4.14k
        const auto size = column->size();
170
4.14k
        if constexpr (std::is_same_v<T, std::string>) {
171
161
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
161
            } else {
175
161
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
161
                                     start, size);
177
161
            }
178
3.98k
        } else {
179
3.98k
            const T* data = (T*)column->get_raw_data().data;
180
2.55M
            for (size_t i = start; i < size; i++) {
181
2.55M
                if (!nullmap[i]) {
182
2.55M
                    if constexpr (NeedMin) {
183
2.55M
                        _min = std::min(_min, *(data + i));
184
2.55M
                    }
185
2.55M
                    if constexpr (NeedMax) {
186
2.55M
                        _max = std::max(_max, *(data + i));
187
2.55M
                    }
188
2.55M
                }
189
2.55M
            }
190
3.98k
        }
191
4.14k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1
        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
        } else {
179
1
            const T* data = (T*)column->get_raw_data().data;
180
4
            for (size_t i = start; i < size; i++) {
181
3
                if (!nullmap[i]) {
182
2
                    if constexpr (NeedMin) {
183
2
                        _min = std::min(_min, *(data + i));
184
2
                    }
185
2
                    if constexpr (NeedMax) {
186
2
                        _max = std::max(_max, *(data + i));
187
2
                    }
188
2
                }
189
3
            }
190
1
        }
191
1
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
530
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
530
        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
530
        } else {
179
530
            const T* data = (T*)column->get_raw_data().data;
180
1.71k
            for (size_t i = start; i < size; i++) {
181
1.18k
                if (!nullmap[i]) {
182
1.14k
                    if constexpr (NeedMin) {
183
1.14k
                        _min = std::min(_min, *(data + i));
184
1.14k
                    }
185
1.14k
                    if constexpr (NeedMax) {
186
1.14k
                        _max = std::max(_max, *(data + i));
187
1.14k
                    }
188
1.14k
                }
189
1.18k
            }
190
530
        }
191
530
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
214
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
214
        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
214
        } else {
179
214
            const T* data = (T*)column->get_raw_data().data;
180
1.11k
            for (size_t i = start; i < size; i++) {
181
903
                if (!nullmap[i]) {
182
833
                    if constexpr (NeedMin) {
183
833
                        _min = std::min(_min, *(data + i));
184
833
                    }
185
833
                    if constexpr (NeedMax) {
186
833
                        _max = std::max(_max, *(data + i));
187
833
                    }
188
833
                }
189
903
            }
190
214
        }
191
214
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2.30k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2.30k
        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.30k
        } else {
179
2.30k
            const T* data = (T*)column->get_raw_data().data;
180
2.54M
            for (size_t i = start; i < size; i++) {
181
2.54M
                if (!nullmap[i]) {
182
2.54M
                    if constexpr (NeedMin) {
183
2.54M
                        _min = std::min(_min, *(data + i));
184
2.54M
                    }
185
2.54M
                    if constexpr (NeedMax) {
186
2.54M
                        _max = std::max(_max, *(data + i));
187
2.54M
                    }
188
2.54M
                }
189
2.54M
            }
190
2.30k
        }
191
2.30k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
598
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
598
        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
598
        } else {
179
598
            const T* data = (T*)column->get_raw_data().data;
180
2.47k
            for (size_t i = start; i < size; i++) {
181
1.87k
                if (!nullmap[i]) {
182
1.59k
                    if constexpr (NeedMin) {
183
1.59k
                        _min = std::min(_min, *(data + i));
184
1.59k
                    }
185
1.59k
                    if constexpr (NeedMax) {
186
1.59k
                        _max = std::max(_max, *(data + i));
187
1.59k
                    }
188
1.59k
                }
189
1.87k
            }
190
598
        }
191
598
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1
        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
        } else {
179
1
            const T* data = (T*)column->get_raw_data().data;
180
2
            for (size_t i = start; i < size; i++) {
181
1
                if (!nullmap[i]) {
182
1
                    if constexpr (NeedMin) {
183
1
                        _min = std::min(_min, *(data + i));
184
1
                    }
185
1
                    if constexpr (NeedMax) {
186
1
                        _max = std::max(_max, *(data + i));
187
1
                    }
188
1
                }
189
1
            }
190
1
        }
191
1
    }
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
1
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1
        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
        } else {
179
1
            const T* data = (T*)column->get_raw_data().data;
180
5
            for (size_t i = start; i < size; i++) {
181
4
                if (!nullmap[i]) {
182
4
                    if constexpr (NeedMin) {
183
4
                        _min = std::min(_min, *(data + i));
184
4
                    }
185
4
                    if constexpr (NeedMax) {
186
4
                        _max = std::max(_max, *(data + i));
187
4
                    }
188
4
                }
189
4
            }
190
1
        }
191
1
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
3
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
3
        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
        } else {
179
3
            const T* data = (T*)column->get_raw_data().data;
180
27
            for (size_t i = start; i < size; i++) {
181
24
                if (!nullmap[i]) {
182
24
                    if constexpr (NeedMin) {
183
24
                        _min = std::min(_min, *(data + i));
184
24
                    }
185
24
                    if constexpr (NeedMax) {
186
24
                        _max = std::max(_max, *(data + i));
187
24
                    }
188
24
                }
189
24
            }
190
3
        }
191
3
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
71
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
71
        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
71
        } else {
179
71
            const T* data = (T*)column->get_raw_data().data;
180
3.96k
            for (size_t i = start; i < size; i++) {
181
3.89k
                if (!nullmap[i]) {
182
3.32k
                    if constexpr (NeedMin) {
183
3.32k
                        _min = std::min(_min, *(data + i));
184
3.32k
                    }
185
3.32k
                    if constexpr (NeedMax) {
186
3.32k
                        _max = std::max(_max, *(data + i));
187
3.32k
                    }
188
3.32k
                }
189
3.89k
            }
190
71
        }
191
71
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
38
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
38
        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
38
        } else {
179
38
            const T* data = (T*)column->get_raw_data().data;
180
126
            for (size_t i = start; i < size; i++) {
181
88
                if (!nullmap[i]) {
182
85
                    if constexpr (NeedMin) {
183
85
                        _min = std::min(_min, *(data + i));
184
85
                    }
185
85
                    if constexpr (NeedMax) {
186
85
                        _max = std::max(_max, *(data + i));
187
85
                    }
188
85
                }
189
88
            }
190
38
        }
191
38
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
49
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
49
        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
49
        } else {
179
49
            const T* data = (T*)column->get_raw_data().data;
180
231
            for (size_t i = start; i < size; i++) {
181
182
                if (!nullmap[i]) {
182
133
                    if constexpr (NeedMin) {
183
133
                        _min = std::min(_min, *(data + i));
184
133
                    }
185
133
                    if constexpr (NeedMax) {
186
133
                        _max = std::max(_max, *(data + i));
187
133
                    }
188
133
                }
189
182
            }
190
49
        }
191
49
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
4
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
4
        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
4
        } else {
179
4
            const T* data = (T*)column->get_raw_data().data;
180
16
            for (size_t i = start; i < size; i++) {
181
12
                if (!nullmap[i]) {
182
12
                    if constexpr (NeedMin) {
183
12
                        _min = std::min(_min, *(data + i));
184
12
                    }
185
12
                    if constexpr (NeedMax) {
186
12
                        _max = std::max(_max, *(data + i));
187
12
                    }
188
12
                }
189
12
            }
190
4
        }
191
4
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
161
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
161
        const auto size = column->size();
170
161
        if constexpr (std::is_same_v<T, std::string>) {
171
161
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
161
            } else {
175
161
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
161
                                     start, size);
177
161
            }
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
161
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
54
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
54
        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
54
        } else {
179
54
            const T* data = (T*)column->get_raw_data().data;
180
152
            for (size_t i = start; i < size; i++) {
181
98
                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
98
            }
190
54
        }
191
54
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
33
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
33
        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
33
        } else {
179
33
            const T* data = (T*)column->get_raw_data().data;
180
93
            for (size_t i = start; i < size; i++) {
181
60
                if (!nullmap[i]) {
182
54
                    if constexpr (NeedMin) {
183
54
                        _min = std::min(_min, *(data + i));
184
54
                    }
185
54
                    if constexpr (NeedMax) {
186
54
                        _max = std::max(_max, *(data + i));
187
54
                    }
188
54
                }
189
60
            }
190
33
        }
191
33
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
60
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
60
        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
60
        } else {
179
60
            const T* data = (T*)column->get_raw_data().data;
180
227
            for (size_t i = start; i < size; i++) {
181
167
                if (!nullmap[i]) {
182
101
                    if constexpr (NeedMin) {
183
101
                        _min = std::min(_min, *(data + i));
184
101
                    }
185
101
                    if constexpr (NeedMax) {
186
101
                        _max = std::max(_max, *(data + i));
187
101
                    }
188
101
                }
189
167
            }
190
60
        }
191
60
    }
_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
192
            for (size_t i = start; i < size; i++) {
181
177
                if (!nullmap[i]) {
182
177
                    if constexpr (NeedMin) {
183
177
                        _min = std::min(_min, *(data + i));
184
177
                    }
185
177
                    if constexpr (NeedMax) {
186
177
                        _max = std::max(_max, *(data + i));
187
177
                    }
188
177
                }
189
177
            }
190
15
        }
191
15
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
5
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
5
        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
5
        } else {
179
5
            const T* data = (T*)column->get_raw_data().data;
180
522
            for (size_t i = start; i < size; i++) {
181
517
                if (!nullmap[i]) {
182
483
                    if constexpr (NeedMin) {
183
483
                        _min = std::min(_min, *(data + i));
184
483
                    }
185
483
                    if constexpr (NeedMax) {
186
483
                        _max = std::max(_max, *(data + i));
187
483
                    }
188
483
                }
189
517
            }
190
5
        }
191
5
    }
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