Coverage Report

Created: 2026-10-31 18:41

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/minmax_predicate.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <gen_cpp/internal_service.pb.h>
21
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_string.h"
24
#include "core/type_limit.h"
25
#include "exprs/filter_base.h"
26
27
namespace doris {
28
29
// only used in Runtime Filter
30
class MinMaxFuncBase : public FilterBase {
31
public:
32
18.2k
    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
18.2k
    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
18.2k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
1
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
51
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
51
1.20k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
51
1.35k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
9.27k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
3.58k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
254
    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
80
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
34
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
606
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
238
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
1
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
Line
Count
Source
51
14
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
51
871
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
178
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
352
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
161
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
51
26
    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
16
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
52
872
    ~MinMaxNumFunc() override = default;
53
54
6.50k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
6.50k
        if (is_column_nullable(*column)) {
56
4.31k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4.31k
            const auto& col = nullable->get_nested_column_ptr();
58
4.31k
            const auto& nullmap = nullable->get_null_map_data();
59
4.31k
            if (nullable->has_null()) {
60
3.73k
                _update_batch(col, nullmap, start);
61
3.73k
                _contain_null = true;
62
3.73k
            } else {
63
580
                _update_batch(col, start);
64
580
            }
65
4.31k
        } else {
66
2.19k
            _update_batch(column, start);
67
2.19k
        }
68
6.50k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_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
509
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
509
        if (is_column_nullable(*column)) {
56
504
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
504
            const auto& col = nullable->get_nested_column_ptr();
58
504
            const auto& nullmap = nullable->get_null_map_data();
59
504
            if (nullable->has_null()) {
60
288
                _update_batch(col, nullmap, start);
61
288
                _contain_null = true;
62
288
            } else {
63
216
                _update_batch(col, start);
64
216
            }
65
504
        } else {
66
5
            _update_batch(column, start);
67
5
        }
68
509
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
355
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
355
        if (is_column_nullable(*column)) {
56
354
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
354
            const auto& col = nullable->get_nested_column_ptr();
58
354
            const auto& nullmap = nullable->get_null_map_data();
59
354
            if (nullable->has_null()) {
60
354
                _update_batch(col, nullmap, start);
61
354
                _contain_null = true;
62
354
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
354
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
355
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
3.68k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3.68k
        if (is_column_nullable(*column)) {
56
1.96k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1.96k
            const auto& col = nullable->get_nested_column_ptr();
58
1.96k
            const auto& nullmap = nullable->get_null_map_data();
59
1.96k
            if (nullable->has_null()) {
60
1.69k
                _update_batch(col, nullmap, start);
61
1.69k
                _contain_null = true;
62
1.69k
            } else {
63
267
                _update_batch(col, start);
64
267
            }
65
1.96k
        } else {
66
1.72k
            _update_batch(column, start);
67
1.72k
        }
68
3.68k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
880
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
880
        if (is_column_nullable(*column)) {
56
785
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
785
            const auto& col = nullable->get_nested_column_ptr();
58
785
            const auto& nullmap = nullable->get_null_map_data();
59
785
            if (nullable->has_null()) {
60
782
                _update_batch(col, nullmap, start);
61
782
                _contain_null = true;
62
782
            } else {
63
3
                _update_batch(col, start);
64
3
            }
65
785
        } else {
66
95
            _update_batch(column, start);
67
95
        }
68
880
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
86
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
86
        if (is_column_nullable(*column)) {
56
4
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4
            const auto& col = nullable->get_nested_column_ptr();
58
4
            const auto& nullmap = nullable->get_null_map_data();
59
4
            if (nullable->has_null()) {
60
4
                _update_batch(col, nullmap, start);
61
4
                _contain_null = true;
62
4
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
82
        } else {
66
82
            _update_batch(column, start);
67
82
        }
68
86
    }
_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
55
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
55
        if (is_column_nullable(*column)) {
56
54
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
54
            const auto& col = nullable->get_nested_column_ptr();
58
54
            const auto& nullmap = nullable->get_null_map_data();
59
54
            if (nullable->has_null()) {
60
32
                _update_batch(col, nullmap, start);
61
32
                _contain_null = true;
62
32
            } else {
63
22
                _update_batch(col, start);
64
22
            }
65
54
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
55
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_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
19
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
19
            const auto& col = nullable->get_nested_column_ptr();
58
19
            const auto& nullmap = nullable->get_null_map_data();
59
20
            if (nullable->has_null()) {
60
20
                _update_batch(col, nullmap, start);
61
20
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
19
        } else {
66
3
            _update_batch(column, start);
67
3
        }
68
22
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
173
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
173
        if (is_column_nullable(*column)) {
56
39
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
39
            const auto& col = nullable->get_nested_column_ptr();
58
39
            const auto& nullmap = nullable->get_null_map_data();
59
41
            if (nullable->has_null()) {
60
41
                _update_batch(col, nullmap, start);
61
41
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
134
        } else {
66
134
            _update_batch(column, start);
67
134
        }
68
173
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
77
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
77
        if (is_column_nullable(*column)) {
56
44
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
44
            const auto& col = nullable->get_nested_column_ptr();
58
44
            const auto& nullmap = nullable->get_null_map_data();
59
44
            if (nullable->has_null()) {
60
41
                _update_batch(col, nullmap, start);
61
41
                _contain_null = true;
62
41
            } else {
63
3
                _update_batch(col, start);
64
3
            }
65
44
        } else {
66
33
            _update_batch(column, start);
67
33
        }
68
77
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_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
358
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
358
        if (is_column_nullable(*column)) {
56
296
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
296
            const auto& col = nullable->get_nested_column_ptr();
58
296
            const auto& nullmap = nullable->get_null_map_data();
59
296
            if (nullable->has_null()) {
60
246
                _update_batch(col, nullmap, start);
61
246
                _contain_null = true;
62
246
            } else {
63
50
                _update_batch(col, start);
64
50
            }
65
296
        } else {
66
62
            _update_batch(column, start);
67
62
        }
68
358
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
82
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
82
        if (is_column_nullable(*column)) {
56
81
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
81
            const auto& col = nullable->get_nested_column_ptr();
58
81
            const auto& nullmap = nullable->get_null_map_data();
59
81
            if (nullable->has_null()) {
60
81
                _update_batch(col, nullmap, start);
61
81
                _contain_null = true;
62
81
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
81
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
82
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
132
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
132
        if (is_column_nullable(*column)) {
56
122
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
122
            const auto& col = nullable->get_nested_column_ptr();
58
122
            const auto& nullmap = nullable->get_null_map_data();
59
122
            if (nullable->has_null()) {
60
122
                _update_batch(col, nullmap, start);
61
122
                _contain_null = true;
62
122
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
122
        } else {
66
10
            _update_batch(column, start);
67
10
        }
68
132
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
65
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
65
        if (is_column_nullable(*column)) {
56
28
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
28
            const auto& col = nullable->get_nested_column_ptr();
58
28
            const auto& nullmap = nullable->get_null_map_data();
59
28
            if (nullable->has_null()) {
60
6
                _update_batch(col, nullmap, start);
61
6
                _contain_null = true;
62
22
            } else {
63
22
                _update_batch(col, start);
64
22
            }
65
37
        } else {
66
37
            _update_batch(column, start);
67
37
        }
68
65
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
54
13
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
13
        if (is_column_nullable(*column)) {
56
12
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
12
            const auto& col = nullable->get_nested_column_ptr();
58
12
            const auto& nullmap = nullable->get_null_map_data();
59
12
            if (nullable->has_null()) {
60
12
                _update_batch(col, nullmap, start);
61
12
                _contain_null = true;
62
12
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
12
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
13
    }
_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
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
5
        if (is_column_nullable(*column)) {
56
3
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
3
            const auto& col = nullable->get_nested_column_ptr();
58
3
            const auto& nullmap = nullable->get_null_map_data();
59
3
            if (nullable->has_null()) {
60
3
                _update_batch(col, nullmap, start);
61
3
                _contain_null = true;
62
3
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
3
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
5
    }
69
70
6.26k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
6.26k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
6.26k
        if constexpr (NeedMin) {
73
6.26k
            if constexpr (IsStringValue) {
74
215
                if (other_minmax->_min < _min || !_min_value_set) {
75
31
                    _min = other_minmax->_min;
76
31
                    _min_value_set = true;
77
31
                }
78
6.04k
            } else if (other_minmax->_min < _min) {
79
507
                _min = other_minmax->_min;
80
507
            }
81
6.26k
        }
82
6.26k
        if constexpr (NeedMax) {
83
6.26k
            if (other_minmax->_max > _max) {
84
530
                _max = other_minmax->_max;
85
530
            }
86
6.26k
        }
87
88
6.26k
        _contain_null |= minmax_func->contain_null();
89
6.26k
        return Status::OK();
90
6.26k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
160
    Status merge(MinMaxFuncBase* minmax_func) override {
71
160
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
160
        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
160
            } else if (other_minmax->_min < _min) {
79
14
                _min = other_minmax->_min;
80
14
            }
81
160
        }
82
160
        if constexpr (NeedMax) {
83
160
            if (other_minmax->_max > _max) {
84
13
                _max = other_minmax->_max;
85
13
            }
86
160
        }
87
88
160
        _contain_null |= minmax_func->contain_null();
89
160
        return Status::OK();
90
160
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
341
    Status merge(MinMaxFuncBase* minmax_func) override {
71
341
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
341
        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
341
            } else if (other_minmax->_min < _min) {
79
29
                _min = other_minmax->_min;
80
29
            }
81
341
        }
82
341
        if constexpr (NeedMax) {
83
341
            if (other_minmax->_max > _max) {
84
34
                _max = other_minmax->_max;
85
34
            }
86
341
        }
87
88
341
        _contain_null |= minmax_func->contain_null();
89
341
        return Status::OK();
90
341
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
3.74k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
3.74k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
3.74k
        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
3.74k
            } else if (other_minmax->_min < _min) {
79
278
                _min = other_minmax->_min;
80
278
            }
81
3.74k
        }
82
3.74k
        if constexpr (NeedMax) {
83
3.74k
            if (other_minmax->_max > _max) {
84
282
                _max = other_minmax->_max;
85
282
            }
86
3.74k
        }
87
88
3.74k
        _contain_null |= minmax_func->contain_null();
89
3.74k
        return Status::OK();
90
3.74k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
950
    Status merge(MinMaxFuncBase* minmax_func) override {
71
950
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
950
        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
950
            } else if (other_minmax->_min < _min) {
79
112
                _min = other_minmax->_min;
80
112
            }
81
950
        }
82
950
        if constexpr (NeedMax) {
83
950
            if (other_minmax->_max > _max) {
84
105
                _max = other_minmax->_max;
85
105
            }
86
950
        }
87
88
950
        _contain_null |= minmax_func->contain_null();
89
950
        return Status::OK();
90
950
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
158
    Status merge(MinMaxFuncBase* minmax_func) override {
71
158
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
158
        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
158
            } else if (other_minmax->_min < _min) {
79
15
                _min = other_minmax->_min;
80
15
            }
81
158
        }
82
158
        if constexpr (NeedMax) {
83
158
            if (other_minmax->_max > _max) {
84
15
                _max = other_minmax->_max;
85
15
            }
86
158
        }
87
88
158
        _contain_null |= minmax_func->contain_null();
89
158
        return Status::OK();
90
158
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
35
    Status merge(MinMaxFuncBase* minmax_func) override {
71
35
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
35
        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
35
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
35
        }
82
35
        if constexpr (NeedMax) {
83
35
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
35
        }
87
88
35
        _contain_null |= minmax_func->contain_null();
89
35
        return Status::OK();
90
35
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
12
    Status merge(MinMaxFuncBase* minmax_func) override {
71
12
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
12
        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
12
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
12
        }
82
12
        if constexpr (NeedMax) {
83
12
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
12
        }
87
88
12
        _contain_null |= minmax_func->contain_null();
89
12
        return Status::OK();
90
12
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
295
    Status merge(MinMaxFuncBase* minmax_func) override {
71
295
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
295
        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
295
            } else if (other_minmax->_min < _min) {
79
41
                _min = other_minmax->_min;
80
41
            }
81
295
        }
82
295
        if constexpr (NeedMax) {
83
295
            if (other_minmax->_max > _max) {
84
45
                _max = other_minmax->_max;
85
45
            }
86
295
        }
87
88
295
        _contain_null |= minmax_func->contain_null();
89
295
        return Status::OK();
90
295
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
57
    Status merge(MinMaxFuncBase* minmax_func) override {
71
57
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
57
        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
57
            } else if (other_minmax->_min < _min) {
79
11
                _min = other_minmax->_min;
80
11
            }
81
57
        }
82
57
        if constexpr (NeedMax) {
83
57
            if (other_minmax->_max > _max) {
84
11
                _max = other_minmax->_max;
85
11
            }
86
57
        }
87
88
57
        _contain_null |= minmax_func->contain_null();
89
57
        return Status::OK();
90
57
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_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
215
    Status merge(MinMaxFuncBase* minmax_func) override {
71
215
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
215
        if constexpr (NeedMin) {
73
215
            if constexpr (IsStringValue) {
74
215
                if (other_minmax->_min < _min || !_min_value_set) {
75
31
                    _min = other_minmax->_min;
76
31
                    _min_value_set = true;
77
31
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
215
        }
82
215
        if constexpr (NeedMax) {
83
215
            if (other_minmax->_max > _max) {
84
21
                _max = other_minmax->_max;
85
21
            }
86
215
        }
87
88
215
        _contain_null |= minmax_func->contain_null();
89
215
        return Status::OK();
90
215
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
77
    Status merge(MinMaxFuncBase* minmax_func) override {
71
77
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
77
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
77
            } else if (other_minmax->_min < _min) {
79
2
                _min = other_minmax->_min;
80
2
            }
81
77
        }
82
77
        if constexpr (NeedMax) {
83
77
            if (other_minmax->_max > _max) {
84
2
                _max = other_minmax->_max;
85
2
            }
86
77
        }
87
88
77
        _contain_null |= minmax_func->contain_null();
89
77
        return Status::OK();
90
77
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
90
    Status merge(MinMaxFuncBase* minmax_func) override {
71
90
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
90
        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
90
            } else if (other_minmax->_min < _min) {
79
4
                _min = other_minmax->_min;
80
4
            }
81
90
        }
82
90
        if constexpr (NeedMax) {
83
90
            if (other_minmax->_max > _max) {
84
2
                _max = other_minmax->_max;
85
2
            }
86
90
        }
87
88
90
        _contain_null |= minmax_func->contain_null();
89
90
        return Status::OK();
90
90
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
118
    Status merge(MinMaxFuncBase* minmax_func) override {
71
118
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
118
        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
118
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
118
        }
82
118
        if constexpr (NeedMax) {
83
118
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
118
        }
87
88
118
        _contain_null |= minmax_func->contain_null();
89
118
        return Status::OK();
90
118
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
3
    Status merge(MinMaxFuncBase* minmax_func) override {
71
3
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
3
        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
3
            } else if (other_minmax->_min < _min) {
79
1
                _min = other_minmax->_min;
80
1
            }
81
3
        }
82
3
        if constexpr (NeedMax) {
83
3
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
3
        }
87
88
3
        _contain_null |= minmax_func->contain_null();
89
3
        return Status::OK();
90
3
    }
91
92
754
    MinMaxFuncBase* clone() const override {
93
754
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
754
        cloned->_max = _max;
95
754
        cloned->_min = _min;
96
754
        cloned->_min_value_set = _min_value_set;
97
754
        cloned->_contain_null = _contain_null;
98
754
        return cloned;
99
754
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIhLb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIaLb1ELb1EE5cloneEv
Line
Count
Source
92
47
    MinMaxFuncBase* clone() const override {
93
47
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
47
        cloned->_max = _max;
95
47
        cloned->_min = _min;
96
47
        cloned->_min_value_set = _min_value_set;
97
47
        cloned->_contain_null = _contain_null;
98
47
        return cloned;
99
47
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
41
    MinMaxFuncBase* clone() const override {
93
41
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
41
        cloned->_max = _max;
95
41
        cloned->_min = _min;
96
41
        cloned->_min_value_set = _min_value_set;
97
41
        cloned->_contain_null = _contain_null;
98
41
        return cloned;
99
41
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
456
    MinMaxFuncBase* clone() const override {
93
456
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
456
        cloned->_max = _max;
95
456
        cloned->_min = _min;
96
456
        cloned->_min_value_set = _min_value_set;
97
456
        cloned->_contain_null = _contain_null;
98
456
        return cloned;
99
456
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
98
    MinMaxFuncBase* clone() const override {
93
98
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
98
        cloned->_max = _max;
95
98
        cloned->_min = _min;
96
98
        cloned->_min_value_set = _min_value_set;
97
98
        cloned->_contain_null = _contain_null;
98
98
        return cloned;
99
98
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
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
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIfLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIdLb1ELb1EE5cloneEv
Line
Count
Source
92
8
    MinMaxFuncBase* clone() const override {
93
8
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
8
        cloned->_max = _max;
95
8
        cloned->_min = _min;
96
8
        cloned->_min_value_set = _min_value_set;
97
8
        cloned->_contain_null = _contain_null;
98
8
        return cloned;
99
8
    }
_ZNK5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5cloneEv
Line
Count
Source
92
2
    MinMaxFuncBase* clone() const override {
93
2
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
2
        cloned->_max = _max;
95
2
        cloned->_min = _min;
96
2
        cloned->_min_value_set = _min_value_set;
97
2
        cloned->_contain_null = _contain_null;
98
2
        return cloned;
99
2
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
23
    MinMaxFuncBase* clone() const override {
93
23
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
23
        cloned->_max = _max;
95
23
        cloned->_min = _min;
96
23
        cloned->_min_value_set = _min_value_set;
97
23
        cloned->_contain_null = _contain_null;
98
23
        return cloned;
99
23
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
11
    MinMaxFuncBase* clone() const override {
93
11
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
11
        cloned->_max = _max;
95
11
        cloned->_min = _min;
96
11
        cloned->_min_value_set = _min_value_set;
97
11
        cloned->_contain_null = _contain_null;
98
11
        return cloned;
99
11
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5cloneEv
_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
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_7DecimalIiEELb1ELb1EE5cloneEv
Line
Count
Source
92
18
    MinMaxFuncBase* clone() const override {
93
18
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
18
        cloned->_max = _max;
95
18
        cloned->_min = _min;
96
18
        cloned->_min_value_set = _min_value_set;
97
18
        cloned->_contain_null = _contain_null;
98
18
        return cloned;
99
18
    }
_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
10
    MinMaxFuncBase* clone() const override {
93
10
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
10
        cloned->_max = _max;
95
10
        cloned->_min = _min;
96
10
        cloned->_min_value_set = _min_value_set;
97
10
        cloned->_contain_null = _contain_null;
98
10
        return cloned;
99
10
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
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
    }
100
101
5.38k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
101
1
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
101
496
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
388
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
2.42k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
1.24k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
35
    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
11
    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
132
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
83
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
1
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
4
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
324
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
48
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
129
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
20
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
14
    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
8
    void* get_max() override { return &_max; }
102
103
5.34k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
103
1
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
103
432
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
387
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
2.44k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
1.26k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
35
    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
6
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
103
12
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
132
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
84
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
1
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
103
4
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
317
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
48
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
129
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
23
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
103
14
    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
8
    void* get_min() override { return &_min; }
104
105
1.25k
    Status assign(void* min_data, void* max_data) override {
106
1.25k
        if constexpr (IsStringValue) {
107
75
            _min_value_set = true;
108
75
        }
109
1.25k
        _min = *(T*)min_data;
110
1.25k
        _max = *(T*)max_data;
111
1.25k
        return Status::OK();
112
1.25k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
41
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
41
        _min = *(T*)min_data;
110
41
        _max = *(T*)max_data;
111
41
        return Status::OK();
112
41
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
153
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
153
        _min = *(T*)min_data;
110
153
        _max = *(T*)max_data;
111
153
        return Status::OK();
112
153
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
691
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
691
        _min = *(T*)min_data;
110
691
        _max = *(T*)max_data;
111
691
        return Status::OK();
112
691
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
147
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
147
        _min = *(T*)min_data;
110
147
        _max = *(T*)max_data;
111
147
        return Status::OK();
112
147
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
23
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
23
        _min = *(T*)min_data;
110
23
        _max = *(T*)max_data;
111
23
        return Status::OK();
112
23
    }
_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
71
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
71
        _min = *(T*)min_data;
110
71
        _max = *(T*)max_data;
111
71
        return Status::OK();
112
71
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
23
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
23
        _min = *(T*)min_data;
110
23
        _max = *(T*)max_data;
111
23
        return Status::OK();
112
23
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE6assignEPvS3_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE6assignEPvS8_
Line
Count
Source
105
75
    Status assign(void* min_data, void* max_data) override {
106
75
        if constexpr (IsStringValue) {
107
75
            _min_value_set = true;
108
75
        }
109
75
        _min = *(T*)min_data;
110
75
        _max = *(T*)max_data;
111
75
        return Status::OK();
112
75
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
11
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
11
        _min = *(T*)min_data;
110
11
        _max = *(T*)max_data;
111
11
        return Status::OK();
112
11
    }
_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
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncINS_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.60k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
42
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
160
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
1.00k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
171
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
22
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
17
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
70
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
22
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
72
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
10
    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>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
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.60k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.60k
        if constexpr (NeedMin) {
119
1.60k
            f(filter->mutable_min_val(), _min);
120
1.60k
        }
121
1.60k
        if constexpr (NeedMax) {
122
1.60k
            f(filter->mutable_max_val(), _max);
123
1.60k
        }
124
1.60k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7_set_pbIZNS_13get_convertorIaEEDavEUlPNS_12PColumnValueERKaE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
42
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
42
        if constexpr (NeedMin) {
119
42
            f(filter->mutable_min_val(), _min);
120
42
        }
121
42
        if constexpr (NeedMax) {
122
42
            f(filter->mutable_max_val(), _max);
123
42
        }
124
42
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
160
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
160
        if constexpr (NeedMin) {
119
160
            f(filter->mutable_min_val(), _min);
120
160
        }
121
160
        if constexpr (NeedMax) {
122
160
            f(filter->mutable_max_val(), _max);
123
160
        }
124
160
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
1.01k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.01k
        if constexpr (NeedMin) {
119
1.01k
            f(filter->mutable_min_val(), _min);
120
1.01k
        }
121
1.01k
        if constexpr (NeedMax) {
122
1.01k
            f(filter->mutable_max_val(), _max);
123
1.01k
        }
124
1.01k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
171
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
171
        if constexpr (NeedMin) {
119
171
            f(filter->mutable_min_val(), _min);
120
171
        }
121
171
        if constexpr (NeedMax) {
122
171
            f(filter->mutable_max_val(), _max);
123
171
        }
124
171
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
22
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
22
        if constexpr (NeedMin) {
119
22
            f(filter->mutable_min_val(), _min);
120
22
        }
121
22
        if constexpr (NeedMax) {
122
22
            f(filter->mutable_max_val(), _max);
123
22
        }
124
22
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
17
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
17
        if constexpr (NeedMin) {
119
17
            f(filter->mutable_min_val(), _min);
120
17
        }
121
17
        if constexpr (NeedMax) {
122
17
            f(filter->mutable_max_val(), _max);
123
17
        }
124
17
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
70
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
70
        if constexpr (NeedMin) {
119
70
            f(filter->mutable_min_val(), _min);
120
70
        }
121
70
        if constexpr (NeedMax) {
122
70
            f(filter->mutable_max_val(), _max);
123
70
        }
124
70
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
22
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
22
        if constexpr (NeedMin) {
119
22
            f(filter->mutable_min_val(), _min);
120
22
        }
121
22
        if constexpr (NeedMax) {
122
22
            f(filter->mutable_max_val(), _max);
123
22
        }
124
22
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS6_EEDavEUlPNS_12PColumnValueERKS6_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
72
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
72
        if constexpr (NeedMin) {
119
72
            f(filter->mutable_min_val(), _min);
120
72
        }
121
72
        if constexpr (NeedMax) {
122
72
            f(filter->mutable_max_val(), _max);
123
72
        }
124
72
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
10
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
10
        if constexpr (NeedMin) {
119
10
            f(filter->mutable_min_val(), _min);
120
10
        }
121
10
        if constexpr (NeedMax) {
122
10
            f(filter->mutable_max_val(), _max);
123
10
        }
124
10
    }
_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
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
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
358
                              size_t start, size_t size) {
128
3.80k
        for (size_t i = start; i < size; i++) {
129
3.44k
            if (nullmap == nullptr || !nullmap[i]) {
130
3.37k
                if constexpr (NeedMin) {
131
3.37k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
623
                        _min = column_string.get_data_at(i).to_string();
133
623
                        _min_value_set = true;
134
623
                    }
135
3.37k
                }
136
3.37k
                if constexpr (NeedMax) {
137
3.37k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
841
                        _max = column_string.get_data_at(i).to_string();
139
841
                    }
140
3.37k
                }
141
3.37k
            }
142
3.44k
        }
143
358
    }
_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
357
                              size_t start, size_t size) {
128
3.79k
        for (size_t i = start; i < size; i++) {
129
3.43k
            if (nullmap == nullptr || !nullmap[i]) {
130
3.36k
                if constexpr (NeedMin) {
131
3.36k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
622
                        _min = column_string.get_data_at(i).to_string();
133
622
                        _min_value_set = true;
134
622
                    }
135
3.36k
                }
136
3.36k
                if constexpr (NeedMax) {
137
3.36k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
833
                        _max = column_string.get_data_at(i).to_string();
139
833
                    }
140
3.36k
                }
141
3.36k
            }
142
3.43k
        }
143
357
    }
144
145
2.76k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.76k
        const auto size = column->size();
147
2.76k
        if constexpr (std::is_same_v<T, std::string>) {
148
112
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
111
            } else {
152
111
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
111
                                     size);
154
111
            }
155
2.65k
        } else {
156
2.65k
            const T* data = (T*)column->get_raw_data().data;
157
9.95M
            for (size_t i = start; i < size; i++) {
158
9.95M
                if constexpr (NeedMin) {
159
9.95M
                    _min = std::min(_min, *(data + i));
160
9.95M
                }
161
9.95M
                if constexpr (NeedMax) {
162
9.95M
                    _max = std::max(_max, *(data + i));
163
9.95M
                }
164
9.95M
            }
165
2.65k
        }
166
2.76k
    }
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
220
    void _update_batch(const ColumnPtr& column, size_t start) {
146
220
        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
220
        } else {
156
220
            const T* data = (T*)column->get_raw_data().data;
157
694
            for (size_t i = start; i < size; i++) {
158
474
                if constexpr (NeedMin) {
159
474
                    _min = std::min(_min, *(data + i));
160
474
                }
161
474
                if constexpr (NeedMax) {
162
474
                    _max = std::max(_max, *(data + i));
163
474
                }
164
474
            }
165
220
        }
166
220
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1.98k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1.98k
        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.98k
        } else {
156
1.98k
            const T* data = (T*)column->get_raw_data().data;
157
9.95M
            for (size_t i = start; i < size; i++) {
158
9.95M
                if constexpr (NeedMin) {
159
9.95M
                    _min = std::min(_min, *(data + i));
160
9.95M
                }
161
9.95M
                if constexpr (NeedMax) {
162
9.95M
                    _max = std::max(_max, *(data + i));
163
9.95M
                }
164
9.95M
            }
165
1.98k
        }
166
1.98k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
98
    void _update_batch(const ColumnPtr& column, size_t start) {
146
98
        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
98
        } else {
156
98
            const T* data = (T*)column->get_raw_data().data;
157
525
            for (size_t i = start; i < size; i++) {
158
427
                if constexpr (NeedMin) {
159
427
                    _min = std::min(_min, *(data + i));
160
427
                }
161
427
                if constexpr (NeedMax) {
162
427
                    _max = std::max(_max, *(data + i));
163
427
                }
164
427
            }
165
98
        }
166
98
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
82
    void _update_batch(const ColumnPtr& column, size_t start) {
146
82
        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
82
        } else {
156
82
            const T* data = (T*)column->get_raw_data().data;
157
177
            for (size_t i = start; i < size; i++) {
158
95
                if constexpr (NeedMin) {
159
95
                    _min = std::min(_min, *(data + i));
160
95
                }
161
95
                if constexpr (NeedMax) {
162
95
                    _max = std::max(_max, *(data + i));
163
95
                }
164
95
            }
165
82
        }
166
82
    }
_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
23
    void _update_batch(const ColumnPtr& column, size_t start) {
146
23
        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
23
        } else {
156
23
            const T* data = (T*)column->get_raw_data().data;
157
48
            for (size_t i = start; i < size; i++) {
158
25
                if constexpr (NeedMin) {
159
25
                    _min = std::min(_min, *(data + i));
160
25
                }
161
25
                if constexpr (NeedMax) {
162
25
                    _max = std::max(_max, *(data + i));
163
25
                }
164
25
            }
165
23
        }
166
23
    }
_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
133
    void _update_batch(const ColumnPtr& column, size_t start) {
146
133
        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
133
        } else {
156
133
            const T* data = (T*)column->get_raw_data().data;
157
396
            for (size_t i = start; i < size; i++) {
158
263
                if constexpr (NeedMin) {
159
263
                    _min = std::min(_min, *(data + i));
160
263
                }
161
263
                if constexpr (NeedMax) {
162
263
                    _max = std::max(_max, *(data + i));
163
263
                }
164
263
            }
165
133
        }
166
133
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
36
    void _update_batch(const ColumnPtr& column, size_t start) {
146
36
        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
36
        } else {
156
36
            const T* data = (T*)column->get_raw_data().data;
157
139
            for (size_t i = start; i < size; i++) {
158
103
                if constexpr (NeedMin) {
159
103
                    _min = std::min(_min, *(data + i));
160
103
                }
161
103
                if constexpr (NeedMax) {
162
103
                    _max = std::max(_max, *(data + i));
163
103
                }
164
103
            }
165
36
        }
166
36
    }
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
112
    void _update_batch(const ColumnPtr& column, size_t start) {
146
112
        const auto size = column->size();
147
112
        if constexpr (std::is_same_v<T, std::string>) {
148
112
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
111
            } else {
152
111
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
111
                                     size);
154
111
            }
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
112
    }
_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
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
28
            for (size_t i = start; i < size; i++) {
158
18
                if constexpr (NeedMin) {
159
18
                    _min = std::min(_min, *(data + i));
160
18
                }
161
18
                if constexpr (NeedMax) {
162
18
                    _max = std::max(_max, *(data + i));
163
18
                }
164
18
            }
165
10
        }
166
10
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
59
    void _update_batch(const ColumnPtr& column, size_t start) {
146
59
        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
59
        } else {
156
59
            const T* data = (T*)column->get_raw_data().data;
157
126
            for (size_t i = start; i < size; i++) {
158
67
                if constexpr (NeedMin) {
159
67
                    _min = std::min(_min, *(data + i));
160
67
                }
161
67
                if constexpr (NeedMax) {
162
67
                    _max = std::max(_max, *(data + i));
163
67
                }
164
67
            }
165
59
        }
166
59
    }
_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
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
7
            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
2
        }
166
2
    }
167
168
3.72k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
3.72k
        const auto size = column->size();
170
3.72k
        if constexpr (std::is_same_v<T, std::string>) {
171
246
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
246
            } else {
175
246
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
246
                                     start, size);
177
246
            }
178
3.47k
        } else {
179
3.47k
            const T* data = (T*)column->get_raw_data().data;
180
3.75M
            for (size_t i = start; i < size; i++) {
181
3.80M
                if (!nullmap[i]) {
182
3.80M
                    if constexpr (NeedMin) {
183
3.80M
                        _min = std::min(_min, *(data + i));
184
3.80M
                    }
185
3.80M
                    if constexpr (NeedMax) {
186
3.80M
                        _max = std::max(_max, *(data + i));
187
3.80M
                    }
188
3.80M
                }
189
3.75M
            }
190
3.47k
        }
191
3.72k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
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
287
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
287
        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
287
        } else {
179
287
            const T* data = (T*)column->get_raw_data().data;
180
903
            for (size_t i = start; i < size; i++) {
181
616
                if (!nullmap[i]) {
182
595
                    if constexpr (NeedMin) {
183
595
                        _min = std::min(_min, *(data + i));
184
595
                    }
185
595
                    if constexpr (NeedMax) {
186
595
                        _max = std::max(_max, *(data + i));
187
595
                    }
188
595
                }
189
616
            }
190
287
        }
191
287
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
354
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
354
        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
354
        } else {
179
354
            const T* data = (T*)column->get_raw_data().data;
180
3.05k
            for (size_t i = start; i < size; i++) {
181
2.69k
                if (!nullmap[i]) {
182
2.44k
                    if constexpr (NeedMin) {
183
2.44k
                        _min = std::min(_min, *(data + i));
184
2.44k
                    }
185
2.44k
                    if constexpr (NeedMax) {
186
2.44k
                        _max = std::max(_max, *(data + i));
187
2.44k
                    }
188
2.44k
                }
189
2.69k
            }
190
354
        }
191
354
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1.69k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1.69k
        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.69k
        } else {
179
1.69k
            const T* data = (T*)column->get_raw_data().data;
180
3.74M
            for (size_t i = start; i < size; i++) {
181
3.79M
                if (!nullmap[i]) {
182
3.79M
                    if constexpr (NeedMin) {
183
3.79M
                        _min = std::min(_min, *(data + i));
184
3.79M
                    }
185
3.79M
                    if constexpr (NeedMax) {
186
3.79M
                        _max = std::max(_max, *(data + i));
187
3.79M
                    }
188
3.79M
                }
189
3.74M
            }
190
1.69k
        }
191
1.69k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
781
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
781
        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
781
        } else {
179
781
            const T* data = (T*)column->get_raw_data().data;
180
3.41k
            for (size_t i = start; i < size; i++) {
181
2.63k
                if (!nullmap[i]) {
182
2.28k
                    if constexpr (NeedMin) {
183
2.28k
                        _min = std::min(_min, *(data + i));
184
2.28k
                    }
185
2.28k
                    if constexpr (NeedMax) {
186
2.28k
                        _max = std::max(_max, *(data + i));
187
2.28k
                    }
188
2.28k
                }
189
2.63k
            }
190
781
        }
191
781
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_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
7
            for (size_t i = start; i < size; i++) {
181
4
                if (!nullmap[i]) {
182
4
                    if constexpr (NeedMin) {
183
4
                        _min = std::min(_min, *(data + i));
184
4
                    }
185
4
                    if constexpr (NeedMax) {
186
4
                        _max = std::max(_max, *(data + i));
187
4
                    }
188
4
                }
189
4
            }
190
3
        }
191
3
    }
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
32
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
32
        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
32
        } else {
179
32
            const T* data = (T*)column->get_raw_data().data;
180
70
            for (size_t i = start; i < size; i++) {
181
38
                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
38
            }
190
32
        }
191
32
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
20
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
20
        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
20
        } else {
179
20
            const T* data = (T*)column->get_raw_data().data;
180
98
            for (size_t i = start; i < size; i++) {
181
78
                if (!nullmap[i]) {
182
77
                    if constexpr (NeedMin) {
183
77
                        _min = std::min(_min, *(data + i));
184
77
                    }
185
77
                    if constexpr (NeedMax) {
186
77
                        _max = std::max(_max, *(data + i));
187
77
                    }
188
77
                }
189
78
            }
190
20
        }
191
20
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
41
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
41
        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
41
        } else {
179
41
            const T* data = (T*)column->get_raw_data().data;
180
145
            for (size_t i = start; i < size; i++) {
181
104
                if (!nullmap[i]) {
182
86
                    if constexpr (NeedMin) {
183
86
                        _min = std::min(_min, *(data + i));
184
86
                    }
185
86
                    if constexpr (NeedMax) {
186
86
                        _max = std::max(_max, *(data + i));
187
86
                    }
188
86
                }
189
104
            }
190
41
        }
191
41
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
41
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
41
        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
41
        } else {
179
41
            const T* data = (T*)column->get_raw_data().data;
180
134
            for (size_t i = start; i < size; i++) {
181
93
                if (!nullmap[i]) {
182
87
                    if constexpr (NeedMin) {
183
87
                        _min = std::min(_min, *(data + i));
184
87
                    }
185
87
                    if constexpr (NeedMax) {
186
87
                        _max = std::max(_max, *(data + i));
187
87
                    }
188
87
                }
189
93
            }
190
41
        }
191
41
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_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
246
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
246
        const auto size = column->size();
170
246
        if constexpr (std::is_same_v<T, std::string>) {
171
246
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
246
            } else {
175
246
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
246
                                     start, size);
177
246
            }
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
246
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
81
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
81
        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
81
        } else {
179
81
            const T* data = (T*)column->get_raw_data().data;
180
216
            for (size_t i = start; i < size; i++) {
181
135
                if (!nullmap[i]) {
182
98
                    if constexpr (NeedMin) {
183
98
                        _min = std::min(_min, *(data + i));
184
98
                    }
185
98
                    if constexpr (NeedMax) {
186
98
                        _max = std::max(_max, *(data + i));
187
98
                    }
188
98
                }
189
135
            }
190
81
        }
191
81
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
122
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
122
        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
122
        } else {
179
122
            const T* data = (T*)column->get_raw_data().data;
180
248
            for (size_t i = start; i < size; i++) {
181
126
                if (!nullmap[i]) {
182
125
                    if constexpr (NeedMin) {
183
125
                        _min = std::min(_min, *(data + i));
184
125
                    }
185
125
                    if constexpr (NeedMax) {
186
125
                        _max = std::max(_max, *(data + i));
187
125
                    }
188
125
                }
189
126
            }
190
122
        }
191
122
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
6
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
6
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
6
        } else {
179
6
            const T* data = (T*)column->get_raw_data().data;
180
27
            for (size_t i = start; i < size; i++) {
181
21
                if (!nullmap[i]) {
182
19
                    if constexpr (NeedMin) {
183
19
                        _min = std::min(_min, *(data + i));
184
19
                    }
185
19
                    if constexpr (NeedMax) {
186
19
                        _max = std::max(_max, *(data + i));
187
19
                    }
188
19
                }
189
21
            }
190
6
        }
191
6
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
12
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
12
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
12
        } else {
179
12
            const T* data = (T*)column->get_raw_data().data;
180
84
            for (size_t i = start; i < size; i++) {
181
72
                if (!nullmap[i]) {
182
72
                    if constexpr (NeedMin) {
183
72
                        _min = std::min(_min, *(data + i));
184
72
                    }
185
72
                    if constexpr (NeedMax) {
186
72
                        _max = std::max(_max, *(data + i));
187
72
                    }
188
72
                }
189
72
            }
190
12
        }
191
12
    }
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
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
516
            for (size_t i = start; i < size; i++) {
181
513
                if (!nullmap[i]) {
182
481
                    if constexpr (NeedMin) {
183
481
                        _min = std::min(_min, *(data + i));
184
481
                    }
185
481
                    if constexpr (NeedMax) {
186
481
                        _max = std::max(_max, *(data + i));
187
481
                    }
188
481
                }
189
513
            }
190
3
        }
191
3
    }
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