Coverage Report

Created: 2026-10-15 15:19

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/minmax_predicate.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <gen_cpp/internal_service.pb.h>
21
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_string.h"
24
#include "core/type_limit.h"
25
#include "exprs/filter_base.h"
26
27
namespace doris {
28
29
// only used in Runtime Filter
30
class MinMaxFuncBase : public FilterBase {
31
public:
32
25.0k
    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
25.1k
    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
25.0k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
16
    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
1.61k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
51
1.04k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
14.3k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
3.55k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
224
    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
16
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
36
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
633
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
2.44k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
50
    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
614
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
115
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
41
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
182
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
51
50
    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
58
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
52
601
    ~MinMaxNumFunc() override = default;
53
54
6.63k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
6.63k
        if (is_column_nullable(*column)) {
56
4.11k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4.11k
            const auto& col = nullable->get_nested_column_ptr();
58
4.11k
            const auto& nullmap = nullable->get_null_map_data();
59
4.11k
            if (nullable->has_null()) {
60
3.22k
                _update_batch(col, nullmap, start);
61
3.22k
                _contain_null = true;
62
3.22k
            } else {
63
891
                _update_batch(col, start);
64
891
            }
65
4.11k
        } else {
66
2.52k
            _update_batch(column, start);
67
2.52k
        }
68
6.63k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
2
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
2
        if (is_column_nullable(*column)) {
56
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2
            const auto& col = nullable->get_nested_column_ptr();
58
2
            const auto& nullmap = nullable->get_null_map_data();
59
2
            if (nullable->has_null()) {
60
2
                _update_batch(col, nullmap, start);
61
2
                _contain_null = true;
62
2
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
2
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
2
    }
_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
526
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
526
        if (is_column_nullable(*column)) {
56
520
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
520
            const auto& col = nullable->get_nested_column_ptr();
58
520
            const auto& nullmap = nullable->get_null_map_data();
59
520
            if (nullable->has_null()) {
60
416
                _update_batch(col, nullmap, start);
61
416
                _contain_null = true;
62
416
            } else {
63
104
                _update_batch(col, start);
64
104
            }
65
520
        } else {
66
6
            _update_batch(column, start);
67
6
        }
68
526
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
201
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
201
        if (is_column_nullable(*column)) {
56
200
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
200
            const auto& col = nullable->get_nested_column_ptr();
58
200
            const auto& nullmap = nullable->get_null_map_data();
59
200
            if (nullable->has_null()) {
60
200
                _update_batch(col, nullmap, start);
61
200
                _contain_null = true;
62
200
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
200
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
201
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
3.89k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3.89k
        if (is_column_nullable(*column)) {
56
2.09k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2.09k
            const auto& col = nullable->get_nested_column_ptr();
58
2.09k
            const auto& nullmap = nullable->get_null_map_data();
59
2.09k
            if (nullable->has_null()) {
60
1.41k
                _update_batch(col, nullmap, start);
61
1.41k
                _contain_null = true;
62
1.41k
            } else {
63
678
                _update_batch(col, start);
64
678
            }
65
2.09k
        } else {
66
1.80k
            _update_batch(column, start);
67
1.80k
        }
68
3.89k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
935
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
935
        if (is_column_nullable(*column)) {
56
642
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
642
            const auto& col = nullable->get_nested_column_ptr();
58
642
            const auto& nullmap = nullable->get_null_map_data();
59
642
            if (nullable->has_null()) {
60
623
                _update_batch(col, nullmap, start);
61
623
                _contain_null = true;
62
623
            } else {
63
19
                _update_batch(col, start);
64
19
            }
65
642
        } else {
66
293
            _update_batch(column, start);
67
293
        }
68
935
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
112
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
112
        if (is_column_nullable(*column)) {
56
24
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
24
            const auto& col = nullable->get_nested_column_ptr();
58
24
            const auto& nullmap = nullable->get_null_map_data();
59
24
            if (nullable->has_null()) {
60
24
                _update_batch(col, nullmap, start);
61
24
                _contain_null = true;
62
24
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
88
        } else {
66
88
            _update_batch(column, start);
67
88
        }
68
112
    }
_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
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
5
        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
2
                _update_batch(col, nullmap, start);
61
2
                _contain_null = true;
62
2
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
4
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
5
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_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
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
14
            const auto& col = nullable->get_nested_column_ptr();
58
14
            const auto& nullmap = nullable->get_null_map_data();
59
14
            if (nullable->has_null()) {
60
14
                _update_batch(col, nullmap, start);
61
14
                _contain_null = true;
62
14
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
14
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
16
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
221
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
221
        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
36
                _update_batch(col, nullmap, start);
61
36
                _contain_null = true;
62
36
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
183
        } else {
66
183
            _update_batch(column, start);
67
183
        }
68
221
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
292
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
292
        if (is_column_nullable(*column)) {
56
282
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
282
            const auto& col = nullable->get_nested_column_ptr();
58
282
            const auto& nullmap = nullable->get_null_map_data();
59
282
            if (nullable->has_null()) {
60
282
                _update_batch(col, nullmap, start);
61
282
                _contain_null = true;
62
282
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
282
        } else {
66
10
            _update_batch(column, start);
67
10
        }
68
292
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
22
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
22
        if (is_column_nullable(*column)) {
56
22
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
22
            const auto& col = nullable->get_nested_column_ptr();
58
22
            const auto& nullmap = nullable->get_null_map_data();
59
22
            if (nullable->has_null()) {
60
22
                _update_batch(col, nullmap, start);
61
22
                _contain_null = true;
62
22
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
22
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
22
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
2
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
2
        if (is_column_nullable(*column)) {
56
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2
            const auto& col = nullable->get_nested_column_ptr();
58
2
            const auto& nullmap = nullable->get_null_map_data();
59
2
            if (nullable->has_null()) {
60
2
                _update_batch(col, nullmap, start);
61
2
                _contain_null = true;
62
2
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
2
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
2
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
54
247
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
247
        if (is_column_nullable(*column)) {
56
148
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
148
            const auto& col = nullable->get_nested_column_ptr();
58
148
            const auto& nullmap = nullable->get_null_map_data();
59
148
            if (nullable->has_null()) {
60
89
                _update_batch(col, nullmap, start);
61
89
                _contain_null = true;
62
89
            } else {
63
59
                _update_batch(col, start);
64
59
            }
65
148
        } else {
66
99
            _update_batch(column, start);
67
99
        }
68
247
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
28
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
28
        if (is_column_nullable(*column)) {
56
27
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
27
            const auto& col = nullable->get_nested_column_ptr();
58
27
            const auto& nullmap = nullable->get_null_map_data();
59
27
            if (nullable->has_null()) {
60
27
                _update_batch(col, nullmap, start);
61
27
                _contain_null = true;
62
27
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
27
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
28
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
20
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
20
        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
17
        } else {
66
17
            _update_batch(column, start);
67
17
        }
68
20
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
75
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
75
        if (is_column_nullable(*column)) {
56
64
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
64
            const auto& col = nullable->get_nested_column_ptr();
58
64
            const auto& nullmap = nullable->get_null_map_data();
59
64
            if (nullable->has_null()) {
60
37
                _update_batch(col, nullmap, start);
61
37
                _contain_null = true;
62
37
            } else {
63
27
                _update_batch(col, start);
64
27
            }
65
64
        } else {
66
11
            _update_batch(column, start);
67
11
        }
68
75
    }
_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
19
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
19
        if (is_column_nullable(*column)) {
56
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
14
            const auto& col = nullable->get_nested_column_ptr();
58
14
            const auto& nullmap = nullable->get_null_map_data();
59
14
            if (nullable->has_null()) {
60
14
                _update_batch(col, nullmap, start);
61
14
                _contain_null = true;
62
14
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
14
        } else {
66
5
            _update_batch(column, start);
67
5
        }
68
19
    }
69
70
12.4k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
12.4k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
12.4k
        if constexpr (NeedMin) {
73
12.4k
            if constexpr (IsStringValue) {
74
178
                if (other_minmax->_min < _min || !_min_value_set) {
75
43
                    _min = other_minmax->_min;
76
43
                    _min_value_set = true;
77
43
                }
78
12.2k
            } else if (other_minmax->_min < _min) {
79
931
                _min = other_minmax->_min;
80
931
            }
81
12.4k
        }
82
12.4k
        if constexpr (NeedMax) {
83
12.4k
            if (other_minmax->_max > _max) {
84
916
                _max = other_minmax->_max;
85
916
            }
86
12.4k
        }
87
88
12.4k
        _contain_null |= minmax_func->contain_null();
89
12.4k
        return Status::OK();
90
12.4k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_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
2
                _min = other_minmax->_min;
80
2
            }
81
6
        }
82
6
        if constexpr (NeedMax) {
83
6
            if (other_minmax->_max > _max) {
84
1
                _max = other_minmax->_max;
85
1
            }
86
6
        }
87
88
6
        _contain_null |= minmax_func->contain_null();
89
6
        return Status::OK();
90
6
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
207
    Status merge(MinMaxFuncBase* minmax_func) override {
71
207
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
207
        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
207
            } else if (other_minmax->_min < _min) {
79
6
                _min = other_minmax->_min;
80
6
            }
81
207
        }
82
207
        if constexpr (NeedMax) {
83
207
            if (other_minmax->_max > _max) {
84
5
                _max = other_minmax->_max;
85
5
            }
86
207
        }
87
88
207
        _contain_null |= minmax_func->contain_null();
89
207
        return Status::OK();
90
207
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
219
    Status merge(MinMaxFuncBase* minmax_func) override {
71
219
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
219
        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
219
            } else if (other_minmax->_min < _min) {
79
37
                _min = other_minmax->_min;
80
37
            }
81
219
        }
82
219
        if constexpr (NeedMax) {
83
219
            if (other_minmax->_max > _max) {
84
44
                _max = other_minmax->_max;
85
44
            }
86
219
        }
87
88
219
        _contain_null |= minmax_func->contain_null();
89
219
        return Status::OK();
90
219
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
8.06k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
8.06k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
8.06k
        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
8.06k
            } else if (other_minmax->_min < _min) {
79
604
                _min = other_minmax->_min;
80
604
            }
81
8.06k
        }
82
8.06k
        if constexpr (NeedMax) {
83
8.06k
            if (other_minmax->_max > _max) {
84
552
                _max = other_minmax->_max;
85
552
            }
86
8.06k
        }
87
88
8.06k
        _contain_null |= minmax_func->contain_null();
89
8.06k
        return Status::OK();
90
8.06k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
1.14k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
1.14k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
1.14k
        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.14k
            } else if (other_minmax->_min < _min) {
79
91
                _min = other_minmax->_min;
80
91
            }
81
1.14k
        }
82
1.14k
        if constexpr (NeedMax) {
83
1.14k
            if (other_minmax->_max > _max) {
84
96
                _max = other_minmax->_max;
85
96
            }
86
1.14k
        }
87
88
1.14k
        _contain_null |= minmax_func->contain_null();
89
1.14k
        return Status::OK();
90
1.14k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
102
    Status merge(MinMaxFuncBase* minmax_func) override {
71
102
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
102
        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
102
            } else if (other_minmax->_min < _min) {
79
7
                _min = other_minmax->_min;
80
7
            }
81
102
        }
82
102
        if constexpr (NeedMax) {
83
102
            if (other_minmax->_max > _max) {
84
6
                _max = other_minmax->_max;
85
6
            }
86
102
        }
87
88
102
        _contain_null |= minmax_func->contain_null();
89
102
        return Status::OK();
90
102
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
2
    Status merge(MinMaxFuncBase* minmax_func) override {
71
2
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
2
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
2
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
2
        }
82
2
        if constexpr (NeedMax) {
83
2
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
2
        }
87
88
2
        _contain_null |= minmax_func->contain_null();
89
2
        return Status::OK();
90
2
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
13
    Status merge(MinMaxFuncBase* minmax_func) override {
71
13
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
13
        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
13
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
13
        }
82
13
        if constexpr (NeedMax) {
83
13
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
13
        }
87
88
13
        _contain_null |= minmax_func->contain_null();
89
13
        return Status::OK();
90
13
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
316
    Status merge(MinMaxFuncBase* minmax_func) override {
71
316
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
316
        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
316
            } else if (other_minmax->_min < _min) {
79
46
                _min = other_minmax->_min;
80
46
            }
81
316
        }
82
316
        if constexpr (NeedMax) {
83
316
            if (other_minmax->_max > _max) {
84
36
                _max = other_minmax->_max;
85
36
            }
86
316
        }
87
88
316
        _contain_null |= minmax_func->contain_null();
89
316
        return Status::OK();
90
316
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
2.08k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
2.08k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
2.08k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
2.08k
            } else if (other_minmax->_min < _min) {
79
118
                _min = other_minmax->_min;
80
118
            }
81
2.08k
        }
82
2.08k
        if constexpr (NeedMax) {
83
2.08k
            if (other_minmax->_max > _max) {
84
128
                _max = other_minmax->_max;
85
128
            }
86
2.08k
        }
87
88
2.08k
        _contain_null |= minmax_func->contain_null();
89
2.08k
        return Status::OK();
90
2.08k
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
14
    Status merge(MinMaxFuncBase* minmax_func) override {
71
14
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
14
        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
14
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
14
        }
82
14
        if constexpr (NeedMax) {
83
14
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
14
        }
87
88
14
        _contain_null |= minmax_func->contain_null();
89
14
        return Status::OK();
90
14
    }
_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
178
    Status merge(MinMaxFuncBase* minmax_func) override {
71
178
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
178
        if constexpr (NeedMin) {
73
178
            if constexpr (IsStringValue) {
74
178
                if (other_minmax->_min < _min || !_min_value_set) {
75
43
                    _min = other_minmax->_min;
76
43
                    _min_value_set = true;
77
43
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
178
        }
82
178
        if constexpr (NeedMax) {
83
178
            if (other_minmax->_max > _max) {
84
29
                _max = other_minmax->_max;
85
29
            }
86
178
        }
87
88
178
        _contain_null |= minmax_func->contain_null();
89
178
        return Status::OK();
90
178
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
25
    Status merge(MinMaxFuncBase* minmax_func) override {
71
25
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
25
        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
25
            } else if (other_minmax->_min < _min) {
79
8
                _min = other_minmax->_min;
80
8
            }
81
25
        }
82
25
        if constexpr (NeedMax) {
83
25
            if (other_minmax->_max > _max) {
84
4
                _max = other_minmax->_max;
85
4
            }
86
25
        }
87
88
25
        _contain_null |= minmax_func->contain_null();
89
25
        return Status::OK();
90
25
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
11
    Status merge(MinMaxFuncBase* minmax_func) override {
71
11
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
11
        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
11
            } else if (other_minmax->_min < _min) {
79
1
                _min = other_minmax->_min;
80
1
            }
81
11
        }
82
11
        if constexpr (NeedMax) {
83
11
            if (other_minmax->_max > _max) {
84
3
                _max = other_minmax->_max;
85
3
            }
86
11
        }
87
88
11
        _contain_null |= minmax_func->contain_null();
89
11
        return Status::OK();
90
11
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
45
    Status merge(MinMaxFuncBase* minmax_func) override {
71
45
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
45
        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
45
            } else if (other_minmax->_min < _min) {
79
11
                _min = other_minmax->_min;
80
11
            }
81
45
        }
82
45
        if constexpr (NeedMax) {
83
45
            if (other_minmax->_max > _max) {
84
11
                _max = other_minmax->_max;
85
11
            }
86
45
        }
87
88
45
        _contain_null |= minmax_func->contain_null();
89
45
        return Status::OK();
90
45
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
23
    Status merge(MinMaxFuncBase* minmax_func) override {
71
23
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
23
        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
23
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
23
        }
82
23
        if constexpr (NeedMax) {
83
23
            if (other_minmax->_max > _max) {
84
1
                _max = other_minmax->_max;
85
1
            }
86
23
        }
87
88
23
        _contain_null |= minmax_func->contain_null();
89
23
        return Status::OK();
90
23
    }
91
92
877
    MinMaxFuncBase* clone() const override {
93
877
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
877
        cloned->_max = _max;
95
877
        cloned->_min = _min;
96
877
        cloned->_min_value_set = _min_value_set;
97
877
        cloned->_contain_null = _contain_null;
98
877
        return cloned;
99
877
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIhLb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIaLb1ELb1EE5cloneEv
Line
Count
Source
92
105
    MinMaxFuncBase* clone() const override {
93
105
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
105
        cloned->_max = _max;
95
105
        cloned->_min = _min;
96
105
        cloned->_min_value_set = _min_value_set;
97
105
        cloned->_contain_null = _contain_null;
98
105
        return cloned;
99
105
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
65
    MinMaxFuncBase* clone() const override {
93
65
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
65
        cloned->_max = _max;
95
65
        cloned->_min = _min;
96
65
        cloned->_min_value_set = _min_value_set;
97
65
        cloned->_contain_null = _contain_null;
98
65
        return cloned;
99
65
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
486
    MinMaxFuncBase* clone() const override {
93
486
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
486
        cloned->_max = _max;
95
486
        cloned->_min = _min;
96
486
        cloned->_min_value_set = _min_value_set;
97
486
        cloned->_contain_null = _contain_null;
98
486
        return cloned;
99
486
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
94
    MinMaxFuncBase* clone() const override {
93
94
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
94
        cloned->_max = _max;
95
94
        cloned->_min = _min;
96
94
        cloned->_min_value_set = _min_value_set;
97
94
        cloned->_contain_null = _contain_null;
98
94
        return cloned;
99
94
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
Line
Count
Source
92
13
    MinMaxFuncBase* clone() const override {
93
13
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
13
        cloned->_max = _max;
95
13
        cloned->_min = _min;
96
13
        cloned->_min_value_set = _min_value_set;
97
13
        cloned->_contain_null = _contain_null;
98
13
        return cloned;
99
13
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIfLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIdLb1ELb1EE5cloneEv
Line
Count
Source
92
1
    MinMaxFuncBase* clone() const override {
93
1
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
1
        cloned->_max = _max;
95
1
        cloned->_min = _min;
96
1
        cloned->_min_value_set = _min_value_set;
97
1
        cloned->_contain_null = _contain_null;
98
1
        return cloned;
99
1
    }
_ZNK5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5cloneEv
Line
Count
Source
92
5
    MinMaxFuncBase* clone() const override {
93
5
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
5
        cloned->_max = _max;
95
5
        cloned->_min = _min;
96
5
        cloned->_min_value_set = _min_value_set;
97
5
        cloned->_contain_null = _contain_null;
98
5
        return cloned;
99
5
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
28
    MinMaxFuncBase* clone() const override {
93
28
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
28
        cloned->_max = _max;
95
28
        cloned->_min = _min;
96
28
        cloned->_min_value_set = _min_value_set;
97
28
        cloned->_contain_null = _contain_null;
98
28
        return cloned;
99
28
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5cloneEv
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_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
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
    }
_ZNK5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5cloneEv
Line
Count
Source
92
21
    MinMaxFuncBase* clone() const override {
93
21
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
21
        cloned->_max = _max;
95
21
        cloned->_min = _min;
96
21
        cloned->_min_value_set = _min_value_set;
97
21
        cloned->_contain_null = _contain_null;
98
21
        return cloned;
99
21
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5cloneEv
Line
Count
Source
92
9
    MinMaxFuncBase* clone() const override {
93
9
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
9
        cloned->_max = _max;
95
9
        cloned->_min = _min;
96
9
        cloned->_min_value_set = _min_value_set;
97
9
        cloned->_contain_null = _contain_null;
98
9
        return cloned;
99
9
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5cloneEv
Line
Count
Source
92
4
    MinMaxFuncBase* clone() const override {
93
4
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
4
        cloned->_max = _max;
95
4
        cloned->_min = _min;
96
4
        cloned->_min_value_set = _min_value_set;
97
4
        cloned->_contain_null = _contain_null;
98
4
        return cloned;
99
4
    }
_ZNK5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5cloneEv
Line
Count
Source
92
12
    MinMaxFuncBase* clone() const override {
93
12
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
12
        cloned->_max = _max;
95
12
        cloned->_min = _min;
96
12
        cloned->_min_value_set = _min_value_set;
97
12
        cloned->_contain_null = _contain_null;
98
12
        return cloned;
99
12
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
Line
Count
Source
92
9
    MinMaxFuncBase* clone() const override {
93
9
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
9
        cloned->_max = _max;
95
9
        cloned->_min = _min;
96
9
        cloned->_min_value_set = _min_value_set;
97
9
        cloned->_contain_null = _contain_null;
98
9
        return cloned;
99
9
    }
100
101
5.81k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
101
5
    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
701
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
405
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
2.82k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
1.11k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
57
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
101
5
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
12
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
142
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
198
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
9
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
5
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
191
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
46
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
16
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
40
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
26
    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
14
    void* get_max() override { return &_max; }
102
103
5.80k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
103
5
    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
674
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
403
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
2.81k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
1.13k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
51
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
103
5
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
103
13
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
145
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
197
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
9
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
103
5
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
197
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
47
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
16
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
42
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
103
26
    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
14
    void* get_min() override { return &_min; }
104
105
1.57k
    Status assign(void* min_data, void* max_data) override {
106
1.57k
        if constexpr (IsStringValue) {
107
89
            _min_value_set = true;
108
89
        }
109
1.57k
        _min = *(T*)min_data;
110
1.57k
        _max = *(T*)max_data;
111
1.57k
        return Status::OK();
112
1.57k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
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_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
51
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
51
        _min = *(T*)min_data;
110
51
        _max = *(T*)max_data;
111
51
        return Status::OK();
112
51
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
175
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
175
        _min = *(T*)min_data;
110
175
        _max = *(T*)max_data;
111
175
        return Status::OK();
112
175
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
854
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
854
        _min = *(T*)min_data;
110
854
        _max = *(T*)max_data;
111
854
        return Status::OK();
112
854
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
149
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
149
        _min = *(T*)min_data;
110
149
        _max = *(T*)max_data;
111
149
        return Status::OK();
112
149
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
13
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
13
        _min = *(T*)min_data;
110
13
        _max = *(T*)max_data;
111
13
        return Status::OK();
112
13
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
2
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
2
        _min = *(T*)min_data;
110
2
        _max = *(T*)max_data;
111
2
        return Status::OK();
112
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
63
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
63
        _min = *(T*)min_data;
110
63
        _max = *(T*)max_data;
111
63
        return Status::OK();
112
63
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
119
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
119
        _min = *(T*)min_data;
110
119
        _max = *(T*)max_data;
111
119
        return Status::OK();
112
119
    }
_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
89
    Status assign(void* min_data, void* max_data) override {
106
89
        if constexpr (IsStringValue) {
107
89
            _min_value_set = true;
108
89
        }
109
89
        _min = *(T*)min_data;
110
89
        _max = *(T*)max_data;
111
89
        return Status::OK();
112
89
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
9
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
9
        _min = *(T*)min_data;
110
9
        _max = *(T*)max_data;
111
9
        return Status::OK();
112
9
    }
_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
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
    }
113
114
1.71k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
50
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
185
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
935
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
188
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
12
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
3
    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
63
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
118
    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
101
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
8
    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
40
    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
2
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
115
116
private:
117
1.71k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.71k
        if constexpr (NeedMin) {
119
1.71k
            f(filter->mutable_min_val(), _min);
120
1.71k
        }
121
1.71k
        if constexpr (NeedMax) {
122
1.71k
            f(filter->mutable_max_val(), _max);
123
1.71k
        }
124
1.71k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_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
    }
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
50
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
50
        if constexpr (NeedMin) {
119
50
            f(filter->mutable_min_val(), _min);
120
50
        }
121
50
        if constexpr (NeedMax) {
122
50
            f(filter->mutable_max_val(), _max);
123
50
        }
124
50
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
185
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
185
        if constexpr (NeedMin) {
119
185
            f(filter->mutable_min_val(), _min);
120
185
        }
121
185
        if constexpr (NeedMax) {
122
185
            f(filter->mutable_max_val(), _max);
123
185
        }
124
185
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
935
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
935
        if constexpr (NeedMin) {
119
935
            f(filter->mutable_min_val(), _min);
120
935
        }
121
935
        if constexpr (NeedMax) {
122
935
            f(filter->mutable_max_val(), _max);
123
935
        }
124
935
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_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
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
12
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
12
        if constexpr (NeedMin) {
119
12
            f(filter->mutable_min_val(), _min);
120
12
        }
121
12
        if constexpr (NeedMax) {
122
12
            f(filter->mutable_max_val(), _max);
123
12
        }
124
12
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
3
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
3
        if constexpr (NeedMin) {
119
3
            f(filter->mutable_min_val(), _min);
120
3
        }
121
3
        if constexpr (NeedMax) {
122
3
            f(filter->mutable_max_val(), _max);
123
3
        }
124
3
    }
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
63
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
63
        if constexpr (NeedMin) {
119
63
            f(filter->mutable_min_val(), _min);
120
63
        }
121
63
        if constexpr (NeedMax) {
122
63
            f(filter->mutable_max_val(), _max);
123
63
        }
124
63
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
118
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
118
        if constexpr (NeedMin) {
119
118
            f(filter->mutable_min_val(), _min);
120
118
        }
121
118
        if constexpr (NeedMax) {
122
118
            f(filter->mutable_max_val(), _max);
123
118
        }
124
118
    }
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
101
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
101
        if constexpr (NeedMin) {
119
101
            f(filter->mutable_min_val(), _min);
120
101
        }
121
101
        if constexpr (NeedMax) {
122
101
            f(filter->mutable_max_val(), _max);
123
101
        }
124
101
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
8
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
8
        if constexpr (NeedMin) {
119
8
            f(filter->mutable_min_val(), _min);
120
8
        }
121
8
        if constexpr (NeedMax) {
122
8
            f(filter->mutable_max_val(), _max);
123
8
        }
124
8
    }
_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
40
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
40
        if constexpr (NeedMin) {
119
40
            f(filter->mutable_min_val(), _min);
120
40
        }
121
40
        if constexpr (NeedMax) {
122
40
            f(filter->mutable_max_val(), _max);
123
40
        }
124
40
    }
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
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
    }
125
126
    void _update_batch_string(const auto& column_string, const uint8_t* __restrict nullmap,
127
247
                              size_t start, size_t size) {
128
13.3k
        for (size_t i = start; i < size; i++) {
129
13.0k
            if (nullmap == nullptr || !nullmap[i]) {
130
13.0k
                if constexpr (NeedMin) {
131
13.0k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
342
                        _min = column_string.get_data_at(i).to_string();
133
342
                        _min_value_set = true;
134
342
                    }
135
13.0k
                }
136
13.0k
                if constexpr (NeedMax) {
137
13.0k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
860
                        _max = column_string.get_data_at(i).to_string();
139
860
                    }
140
13.0k
                }
141
13.0k
            }
142
13.0k
        }
143
247
    }
_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
246
                              size_t start, size_t size) {
128
13.3k
        for (size_t i = start; i < size; i++) {
129
13.0k
            if (nullmap == nullptr || !nullmap[i]) {
130
13.0k
                if constexpr (NeedMin) {
131
13.0k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
341
                        _min = column_string.get_data_at(i).to_string();
133
341
                        _min_value_set = true;
134
341
                    }
135
13.0k
                }
136
13.0k
                if constexpr (NeedMax) {
137
13.0k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
852
                        _max = column_string.get_data_at(i).to_string();
139
852
                    }
140
13.0k
                }
141
13.0k
            }
142
13.0k
        }
143
246
    }
144
145
3.41k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
3.41k
        const auto size = column->size();
147
3.41k
        if constexpr (std::is_same_v<T, std::string>) {
148
158
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
157
            } else {
152
157
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
157
                                     size);
154
157
            }
155
3.25k
        } else {
156
3.25k
            const T* data = (T*)column->get_raw_data().data;
157
2.55M
            for (size_t i = start; i < size; i++) {
158
2.55M
                if constexpr (NeedMin) {
159
2.55M
                    _min = std::min(_min, *(data + i));
160
2.55M
                }
161
2.55M
                if constexpr (NeedMax) {
162
2.55M
                    _max = std::max(_max, *(data + i));
163
2.55M
                }
164
2.55M
            }
165
3.25k
        }
166
3.41k
    }
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
110
    void _update_batch(const ColumnPtr& column, size_t start) {
146
110
        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
110
        } else {
156
110
            const T* data = (T*)column->get_raw_data().data;
157
385
            for (size_t i = start; i < size; i++) {
158
275
                if constexpr (NeedMin) {
159
275
                    _min = std::min(_min, *(data + i));
160
275
                }
161
275
                if constexpr (NeedMax) {
162
275
                    _max = std::max(_max, *(data + i));
163
275
                }
164
275
            }
165
110
        }
166
110
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
2.47k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.47k
        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.47k
        } else {
156
2.47k
            const T* data = (T*)column->get_raw_data().data;
157
2.55M
            for (size_t i = start; i < size; i++) {
158
2.54M
                if constexpr (NeedMin) {
159
2.54M
                    _min = std::min(_min, *(data + i));
160
2.54M
                }
161
2.54M
                if constexpr (NeedMax) {
162
2.54M
                    _max = std::max(_max, *(data + i));
163
2.54M
                }
164
2.54M
            }
165
2.47k
        }
166
2.47k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
313
    void _update_batch(const ColumnPtr& column, size_t start) {
146
313
        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
313
        } else {
156
313
            const T* data = (T*)column->get_raw_data().data;
157
2.09k
            for (size_t i = start; i < size; i++) {
158
1.77k
                if constexpr (NeedMin) {
159
1.77k
                    _min = std::min(_min, *(data + i));
160
1.77k
                }
161
1.77k
                if constexpr (NeedMax) {
162
1.77k
                    _max = std::max(_max, *(data + i));
163
1.77k
                }
164
1.77k
            }
165
313
        }
166
313
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
89
    void _update_batch(const ColumnPtr& column, size_t start) {
146
89
        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
89
        } else {
156
89
            const T* data = (T*)column->get_raw_data().data;
157
305
            for (size_t i = start; i < size; i++) {
158
216
                if constexpr (NeedMin) {
159
216
                    _min = std::min(_min, *(data + i));
160
216
                }
161
216
                if constexpr (NeedMax) {
162
216
                    _max = std::max(_max, *(data + i));
163
216
                }
164
216
            }
165
89
        }
166
89
    }
_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
3
    void _update_batch(const ColumnPtr& column, size_t start) {
146
3
        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
3
        } else {
156
3
            const T* data = (T*)column->get_raw_data().data;
157
8
            for (size_t i = start; i < size; i++) {
158
5
                if constexpr (NeedMin) {
159
5
                    _min = std::min(_min, *(data + i));
160
5
                }
161
5
                if constexpr (NeedMax) {
162
5
                    _max = std::max(_max, *(data + i));
163
5
                }
164
5
            }
165
3
        }
166
3
    }
_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
185
    void _update_batch(const ColumnPtr& column, size_t start) {
146
185
        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
185
        } else {
156
185
            const T* data = (T*)column->get_raw_data().data;
157
544
            for (size_t i = start; i < size; i++) {
158
359
                if constexpr (NeedMin) {
159
359
                    _min = std::min(_min, *(data + i));
160
359
                }
161
359
                if constexpr (NeedMax) {
162
359
                    _max = std::max(_max, *(data + i));
163
359
                }
164
359
            }
165
185
        }
166
185
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
10
    void _update_batch(const ColumnPtr& column, size_t start) {
146
10
        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
10
        } else {
156
10
            const T* data = (T*)column->get_raw_data().data;
157
40
            for (size_t i = start; i < size; i++) {
158
30
                if constexpr (NeedMin) {
159
30
                    _min = std::min(_min, *(data + i));
160
30
                }
161
30
                if constexpr (NeedMax) {
162
30
                    _max = std::max(_max, *(data + i));
163
30
                }
164
30
            }
165
10
        }
166
10
    }
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
158
    void _update_batch(const ColumnPtr& column, size_t start) {
146
158
        const auto size = column->size();
147
158
        if constexpr (std::is_same_v<T, std::string>) {
148
158
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
157
            } else {
152
157
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
157
                                     size);
154
157
            }
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
158
    }
_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
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
88
            for (size_t i = start; i < size; i++) {
158
71
                if constexpr (NeedMin) {
159
71
                    _min = std::min(_min, *(data + i));
160
71
                }
161
71
                if constexpr (NeedMax) {
162
71
                    _max = std::max(_max, *(data + i));
163
71
                }
164
71
            }
165
17
        }
166
17
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
38
    void _update_batch(const ColumnPtr& column, size_t start) {
146
38
        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
38
        } else {
156
38
            const T* data = (T*)column->get_raw_data().data;
157
90
            for (size_t i = start; i < size; i++) {
158
52
                if constexpr (NeedMin) {
159
52
                    _min = std::min(_min, *(data + i));
160
52
                }
161
52
                if constexpr (NeedMax) {
162
52
                    _max = std::max(_max, *(data + i));
163
52
                }
164
52
            }
165
38
        }
166
38
    }
_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
5
    void _update_batch(const ColumnPtr& column, size_t start) {
146
5
        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
5
        } else {
156
5
            const T* data = (T*)column->get_raw_data().data;
157
16
            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
5
        }
166
5
    }
167
168
3.21k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
3.21k
        const auto size = column->size();
170
3.21k
        if constexpr (std::is_same_v<T, std::string>) {
171
89
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
89
            } else {
175
89
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
89
                                     start, size);
177
89
            }
178
3.12k
        } else {
179
3.12k
            const T* data = (T*)column->get_raw_data().data;
180
3.24M
            for (size_t i = start; i < size; i++) {
181
3.26M
                if (!nullmap[i]) {
182
3.26M
                    if constexpr (NeedMin) {
183
3.26M
                        _min = std::min(_min, *(data + i));
184
3.26M
                    }
185
3.26M
                    if constexpr (NeedMax) {
186
3.26M
                        _max = std::max(_max, *(data + i));
187
3.26M
                    }
188
3.26M
                }
189
3.24M
            }
190
3.12k
        }
191
3.21k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
2
        } else {
179
2
            const T* data = (T*)column->get_raw_data().data;
180
6
            for (size_t i = start; i < size; i++) {
181
4
                if (!nullmap[i]) {
182
3
                    if constexpr (NeedMin) {
183
3
                        _min = std::min(_min, *(data + i));
184
3
                    }
185
3
                    if constexpr (NeedMax) {
186
3
                        _max = std::max(_max, *(data + i));
187
3
                    }
188
3
                }
189
4
            }
190
2
        }
191
2
    }
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
416
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
416
        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
416
        } else {
179
416
            const T* data = (T*)column->get_raw_data().data;
180
1.33k
            for (size_t i = start; i < size; i++) {
181
923
                if (!nullmap[i]) {
182
903
                    if constexpr (NeedMin) {
183
903
                        _min = std::min(_min, *(data + i));
184
903
                    }
185
903
                    if constexpr (NeedMax) {
186
903
                        _max = std::max(_max, *(data + i));
187
903
                    }
188
903
                }
189
923
            }
190
416
        }
191
416
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
200
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
200
        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
200
        } else {
179
200
            const T* data = (T*)column->get_raw_data().data;
180
1.06k
            for (size_t i = start; i < size; i++) {
181
862
                if (!nullmap[i]) {
182
761
                    if constexpr (NeedMin) {
183
761
                        _min = std::min(_min, *(data + i));
184
761
                    }
185
761
                    if constexpr (NeedMax) {
186
761
                        _max = std::max(_max, *(data + i));
187
761
                    }
188
761
                }
189
862
            }
190
200
        }
191
200
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1.41k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1.41k
        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.41k
        } else {
179
1.41k
            const T* data = (T*)column->get_raw_data().data;
180
3.23M
            for (size_t i = start; i < size; i++) {
181
3.25M
                if (!nullmap[i]) {
182
3.25M
                    if constexpr (NeedMin) {
183
3.25M
                        _min = std::min(_min, *(data + i));
184
3.25M
                    }
185
3.25M
                    if constexpr (NeedMax) {
186
3.25M
                        _max = std::max(_max, *(data + i));
187
3.25M
                    }
188
3.25M
                }
189
3.23M
            }
190
1.41k
        }
191
1.41k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
620
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
620
        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
620
        } else {
179
620
            const T* data = (T*)column->get_raw_data().data;
180
3.40k
            for (size_t i = start; i < size; i++) {
181
2.78k
                if (!nullmap[i]) {
182
2.46k
                    if constexpr (NeedMin) {
183
2.46k
                        _min = std::min(_min, *(data + i));
184
2.46k
                    }
185
2.46k
                    if constexpr (NeedMax) {
186
2.46k
                        _max = std::max(_max, *(data + i));
187
2.46k
                    }
188
2.46k
                }
189
2.78k
            }
190
620
        }
191
620
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
24
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
24
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
24
        } else {
179
24
            const T* data = (T*)column->get_raw_data().data;
180
48
            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
24
        }
191
24
    }
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
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
2
        } else {
179
2
            const T* data = (T*)column->get_raw_data().data;
180
10
            for (size_t i = start; i < size; i++) {
181
8
                if (!nullmap[i]) {
182
8
                    if constexpr (NeedMin) {
183
8
                        _min = std::min(_min, *(data + i));
184
8
                    }
185
8
                    if constexpr (NeedMax) {
186
8
                        _max = std::max(_max, *(data + i));
187
8
                    }
188
8
                }
189
8
            }
190
2
        }
191
2
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
14
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
14
        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
14
        } else {
179
14
            const T* data = (T*)column->get_raw_data().data;
180
116
            for (size_t i = start; i < size; i++) {
181
102
                if (!nullmap[i]) {
182
102
                    if constexpr (NeedMin) {
183
102
                        _min = std::min(_min, *(data + i));
184
102
                    }
185
102
                    if constexpr (NeedMax) {
186
102
                        _max = std::max(_max, *(data + i));
187
102
                    }
188
102
                }
189
102
            }
190
14
        }
191
14
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
36
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
36
        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
36
        } else {
179
36
            const T* data = (T*)column->get_raw_data().data;
180
570
            for (size_t i = start; i < size; i++) {
181
534
                if (!nullmap[i]) {
182
470
                    if constexpr (NeedMin) {
183
470
                        _min = std::min(_min, *(data + i));
184
470
                    }
185
470
                    if constexpr (NeedMax) {
186
470
                        _max = std::max(_max, *(data + i));
187
470
                    }
188
470
                }
189
534
            }
190
36
        }
191
36
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
282
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
282
        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
282
        } else {
179
282
            const T* data = (T*)column->get_raw_data().data;
180
615
            for (size_t i = start; i < size; i++) {
181
333
                if (!nullmap[i]) {
182
328
                    if constexpr (NeedMin) {
183
328
                        _min = std::min(_min, *(data + i));
184
328
                    }
185
328
                    if constexpr (NeedMax) {
186
328
                        _max = std::max(_max, *(data + i));
187
328
                    }
188
328
                }
189
333
            }
190
282
        }
191
282
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
22
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
22
        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
22
        } else {
179
22
            const T* data = (T*)column->get_raw_data().data;
180
104
            for (size_t i = start; i < size; i++) {
181
82
                if (!nullmap[i]) {
182
60
                    if constexpr (NeedMin) {
183
60
                        _min = std::min(_min, *(data + i));
184
60
                    }
185
60
                    if constexpr (NeedMax) {
186
60
                        _max = std::max(_max, *(data + i));
187
60
                    }
188
60
                }
189
82
            }
190
22
        }
191
22
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
2
        } else {
179
2
            const T* data = (T*)column->get_raw_data().data;
180
8
            for (size_t i = start; i < size; i++) {
181
6
                if (!nullmap[i]) {
182
6
                    if constexpr (NeedMin) {
183
6
                        _min = std::min(_min, *(data + i));
184
6
                    }
185
6
                    if constexpr (NeedMax) {
186
6
                        _max = std::max(_max, *(data + i));
187
6
                    }
188
6
                }
189
6
            }
190
2
        }
191
2
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
89
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
89
        const auto size = column->size();
170
89
        if constexpr (std::is_same_v<T, std::string>) {
171
89
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
89
            } else {
175
89
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
89
                                     start, size);
177
89
            }
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
89
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
27
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
27
        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
27
        } else {
179
27
            const T* data = (T*)column->get_raw_data().data;
180
98
            for (size_t i = start; i < size; i++) {
181
71
                if (!nullmap[i]) {
182
34
                    if constexpr (NeedMin) {
183
34
                        _min = std::min(_min, *(data + i));
184
34
                    }
185
34
                    if constexpr (NeedMax) {
186
34
                        _max = std::max(_max, *(data + i));
187
34
                    }
188
34
                }
189
71
            }
190
27
        }
191
27
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_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
14
            for (size_t i = start; i < size; i++) {
181
11
                if (!nullmap[i]) {
182
9
                    if constexpr (NeedMin) {
183
9
                        _min = std::min(_min, *(data + i));
184
9
                    }
185
9
                    if constexpr (NeedMax) {
186
9
                        _max = std::max(_max, *(data + i));
187
9
                    }
188
9
                }
189
11
            }
190
3
        }
191
3
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
37
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
37
        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
37
        } else {
179
37
            const T* data = (T*)column->get_raw_data().data;
180
152
            for (size_t i = start; i < size; i++) {
181
115
                if (!nullmap[i]) {
182
81
                    if constexpr (NeedMin) {
183
81
                        _min = std::min(_min, *(data + i));
184
81
                    }
185
81
                    if constexpr (NeedMax) {
186
81
                        _max = std::max(_max, *(data + i));
187
81
                    }
188
81
                }
189
115
            }
190
37
        }
191
37
    }
_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
195
            for (size_t i = start; i < size; i++) {
181
180
                if (!nullmap[i]) {
182
180
                    if constexpr (NeedMin) {
183
180
                        _min = std::min(_min, *(data + i));
184
180
                    }
185
180
                    if constexpr (NeedMax) {
186
180
                        _max = std::max(_max, *(data + i));
187
180
                    }
188
180
                }
189
180
            }
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
14
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
14
        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
14
        } else {
179
14
            const T* data = (T*)column->get_raw_data().data;
180
563
            for (size_t i = start; i < size; i++) {
181
549
                if (!nullmap[i]) {
182
517
                    if constexpr (NeedMin) {
183
517
                        _min = std::min(_min, *(data + i));
184
517
                    }
185
517
                    if constexpr (NeedMax) {
186
517
                        _max = std::max(_max, *(data + i));
187
517
                    }
188
517
                }
189
549
            }
190
14
        }
191
14
    }
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