Coverage Report

Created: 2026-10-16 12:20

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
24.6k
    MinMaxFuncBase(bool null_aware) : FilterBase(null_aware) {}
33
    virtual void insert_fixed_len(const ColumnPtr& column, size_t start) = 0;
34
    virtual void* get_max() = 0;
35
    virtual void* get_min() = 0;
36
    // assign minmax data
37
    virtual Status assign(void* min_data, void* max_data) = 0;
38
    // merge from other minmax_func
39
    virtual Status merge(MinMaxFuncBase* minmax_func) = 0;
40
    // Deep copy. The returned object shares nothing with this one.
41
    virtual MinMaxFuncBase* clone() const = 0;
42
24.6k
    virtual ~MinMaxFuncBase() = default;
43
44
    virtual void to_pb(PMinMaxFilter* filter) = 0;
45
};
46
47
template <class T, bool NeedMax = true, bool NeedMin = true>
48
class MinMaxNumFunc : public MinMaxFuncBase {
49
public:
50
    static constexpr bool IsStringValue = std::is_same_v<T, std::string>;
51
24.6k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
7
    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.08k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
51
1.15k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
16.6k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
4.04k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
199
    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
23
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
22
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
472
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
201
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
8
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
51
364
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
79
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
106
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
209
    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
57
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
52
364
    ~MinMaxNumFunc() override = default;
53
54
7.11k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
7.11k
        if (is_column_nullable(*column)) {
56
4.63k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4.63k
            const auto& col = nullable->get_nested_column_ptr();
58
4.63k
            const auto& nullmap = nullable->get_null_map_data();
59
4.63k
            if (nullable->has_null()) {
60
4.30k
                _update_batch(col, nullmap, start);
61
4.30k
                _contain_null = true;
62
4.30k
            } else {
63
322
                _update_batch(col, start);
64
322
            }
65
4.63k
        } else {
66
2.48k
            _update_batch(column, start);
67
2.48k
        }
68
7.11k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
2
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
2
        if (is_column_nullable(*column)) {
56
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2
            const auto& col = nullable->get_nested_column_ptr();
58
2
            const auto& nullmap = nullable->get_null_map_data();
59
2
            if (nullable->has_null()) {
60
2
                _update_batch(col, nullmap, start);
61
2
                _contain_null = true;
62
2
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
2
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
2
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1
        if (is_column_nullable(*column)) {
56
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
0
            const auto& col = nullable->get_nested_column_ptr();
58
0
            const auto& nullmap = nullable->get_null_map_data();
59
0
            if (nullable->has_null()) {
60
0
                _update_batch(col, nullmap, start);
61
0
                _contain_null = true;
62
0
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
534
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
534
        if (is_column_nullable(*column)) {
56
524
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
524
            const auto& col = nullable->get_nested_column_ptr();
58
524
            const auto& nullmap = nullable->get_null_map_data();
59
524
            if (nullable->has_null()) {
60
334
                _update_batch(col, nullmap, start);
61
334
                _contain_null = true;
62
334
            } else {
63
190
                _update_batch(col, start);
64
190
            }
65
524
        } else {
66
10
            _update_batch(column, start);
67
10
        }
68
534
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
344
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
344
        if (is_column_nullable(*column)) {
56
343
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
343
            const auto& col = nullable->get_nested_column_ptr();
58
343
            const auto& nullmap = nullable->get_null_map_data();
59
343
            if (nullable->has_null()) {
60
343
                _update_batch(col, nullmap, start);
61
343
                _contain_null = true;
62
343
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
343
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
344
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
4.53k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
4.53k
        if (is_column_nullable(*column)) {
56
2.77k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2.77k
            const auto& col = nullable->get_nested_column_ptr();
58
2.77k
            const auto& nullmap = nullable->get_null_map_data();
59
2.77k
            if (nullable->has_null()) {
60
2.66k
                _update_batch(col, nullmap, start);
61
2.66k
                _contain_null = true;
62
2.66k
            } else {
63
109
                _update_batch(col, start);
64
109
            }
65
2.77k
        } else {
66
1.75k
            _update_batch(column, start);
67
1.75k
        }
68
4.53k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1.06k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1.06k
        if (is_column_nullable(*column)) {
56
732
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
732
            const auto& col = nullable->get_nested_column_ptr();
58
732
            const auto& nullmap = nullable->get_null_map_data();
59
733
            if (nullable->has_null()) {
60
733
                _update_batch(col, nullmap, start);
61
733
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
732
        } else {
66
331
            _update_batch(column, start);
67
331
        }
68
1.06k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
96
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
96
        if (is_column_nullable(*column)) {
56
24
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
24
            const auto& col = nullable->get_nested_column_ptr();
58
24
            const auto& nullmap = nullable->get_null_map_data();
59
24
            if (nullable->has_null()) {
60
24
                _update_batch(col, nullmap, start);
61
24
                _contain_null = true;
62
24
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
72
        } else {
66
72
            _update_batch(column, start);
67
72
        }
68
96
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1
        if (is_column_nullable(*column)) {
56
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
0
            const auto& col = nullable->get_nested_column_ptr();
58
0
            const auto& nullmap = nullable->get_null_map_data();
59
0
            if (nullable->has_null()) {
60
0
                _update_batch(col, nullmap, start);
61
0
                _contain_null = true;
62
0
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
15
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
15
        if (is_column_nullable(*column)) {
56
14
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
14
            const auto& col = nullable->get_nested_column_ptr();
58
14
            const auto& nullmap = nullable->get_null_map_data();
59
14
            if (nullable->has_null()) {
60
7
                _update_batch(col, nullmap, start);
61
7
                _contain_null = true;
62
7
            } else {
63
7
                _update_batch(col, start);
64
7
            }
65
14
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
15
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
4
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
4
        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
2
            _update_batch(column, start);
67
2
        }
68
4
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
189
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
189
        if (is_column_nullable(*column)) {
56
25
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
25
            const auto& col = nullable->get_nested_column_ptr();
58
25
            const auto& nullmap = nullable->get_null_map_data();
59
25
            if (nullable->has_null()) {
60
25
                _update_batch(col, nullmap, start);
61
25
                _contain_null = true;
62
25
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
164
        } else {
66
164
            _update_batch(column, start);
67
164
        }
68
189
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
52
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
52
        if (is_column_nullable(*column)) {
56
32
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
32
            const auto& col = nullable->get_nested_column_ptr();
58
32
            const auto& nullmap = nullable->get_null_map_data();
59
32
            if (nullable->has_null()) {
60
32
                _update_batch(col, nullmap, start);
61
32
                _contain_null = true;
62
32
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
32
        } else {
66
20
            _update_batch(column, start);
67
20
        }
68
52
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_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
1
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1
            const auto& col = nullable->get_nested_column_ptr();
58
1
            const auto& nullmap = nullable->get_null_map_data();
59
1
            if (nullable->has_null()) {
60
1
                _update_batch(col, nullmap, start);
61
1
                _contain_null = true;
62
1
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
1
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
54
92
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
92
        if (is_column_nullable(*column)) {
56
47
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
47
            const auto& col = nullable->get_nested_column_ptr();
58
47
            const auto& nullmap = nullable->get_null_map_data();
59
47
            if (nullable->has_null()) {
60
39
                _update_batch(col, nullmap, start);
61
39
                _contain_null = true;
62
39
            } else {
63
8
                _update_batch(col, start);
64
8
            }
65
47
        } else {
66
45
            _update_batch(column, start);
67
45
        }
68
92
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
41
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
41
        if (is_column_nullable(*column)) {
56
40
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
40
            const auto& col = nullable->get_nested_column_ptr();
58
40
            const auto& nullmap = nullable->get_null_map_data();
59
40
            if (nullable->has_null()) {
60
40
                _update_batch(col, nullmap, start);
61
40
                _contain_null = true;
62
40
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
40
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
41
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
48
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
48
        if (is_column_nullable(*column)) {
56
7
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
7
            const auto& col = nullable->get_nested_column_ptr();
58
7
            const auto& nullmap = nullable->get_null_map_data();
59
7
            if (nullable->has_null()) {
60
7
                _update_batch(col, nullmap, start);
61
7
                _contain_null = true;
62
7
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
41
        } else {
66
41
            _update_batch(column, start);
67
41
        }
68
48
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
78
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
78
        if (is_column_nullable(*column)) {
56
40
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
40
            const auto& col = nullable->get_nested_column_ptr();
58
40
            const auto& nullmap = nullable->get_null_map_data();
59
40
            if (nullable->has_null()) {
60
33
                _update_batch(col, nullmap, start);
61
33
                _contain_null = true;
62
33
            } else {
63
7
                _update_batch(col, start);
64
7
            }
65
40
        } else {
66
38
            _update_batch(column, start);
67
38
        }
68
78
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
54
4
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
4
        if (is_column_nullable(*column)) {
56
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
1
            _update_batch(column, start);
67
1
        }
68
4
    }
_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
22
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
22
        if (is_column_nullable(*column)) {
56
21
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
21
            const auto& col = nullable->get_nested_column_ptr();
58
21
            const auto& nullmap = nullable->get_null_map_data();
59
21
            if (nullable->has_null()) {
60
19
                _update_batch(col, nullmap, start);
61
19
                _contain_null = true;
62
19
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
21
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
22
    }
69
70
11.6k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
11.6k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
11.6k
        if constexpr (NeedMin) {
73
11.6k
            if constexpr (IsStringValue) {
74
82
                if (other_minmax->_min < _min || !_min_value_set) {
75
25
                    _min = other_minmax->_min;
76
25
                    _min_value_set = true;
77
25
                }
78
11.5k
            } else if (other_minmax->_min < _min) {
79
920
                _min = other_minmax->_min;
80
920
            }
81
11.6k
        }
82
11.6k
        if constexpr (NeedMax) {
83
11.6k
            if (other_minmax->_max > _max) {
84
1.00k
                _max = other_minmax->_max;
85
1.00k
            }
86
11.6k
        }
87
88
11.6k
        _contain_null |= minmax_func->contain_null();
89
11.6k
        return Status::OK();
90
11.6k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
221
    Status merge(MinMaxFuncBase* minmax_func) override {
71
221
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
221
        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
221
            } else if (other_minmax->_min < _min) {
79
16
                _min = other_minmax->_min;
80
16
            }
81
221
        }
82
221
        if constexpr (NeedMax) {
83
221
            if (other_minmax->_max > _max) {
84
12
                _max = other_minmax->_max;
85
12
            }
86
221
        }
87
88
221
        _contain_null |= minmax_func->contain_null();
89
221
        return Status::OK();
90
221
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
274
    Status merge(MinMaxFuncBase* minmax_func) override {
71
274
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
274
        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
274
            } else if (other_minmax->_min < _min) {
79
24
                _min = other_minmax->_min;
80
24
            }
81
274
        }
82
274
        if constexpr (NeedMax) {
83
274
            if (other_minmax->_max > _max) {
84
29
                _max = other_minmax->_max;
85
29
            }
86
274
        }
87
88
274
        _contain_null |= minmax_func->contain_null();
89
274
        return Status::OK();
90
274
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
9.15k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
9.15k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
9.15k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
9.15k
            } else if (other_minmax->_min < _min) {
79
683
                _min = other_minmax->_min;
80
683
            }
81
9.15k
        }
82
9.15k
        if constexpr (NeedMax) {
83
9.15k
            if (other_minmax->_max > _max) {
84
729
                _max = other_minmax->_max;
85
729
            }
86
9.15k
        }
87
88
9.15k
        _contain_null |= minmax_func->contain_null();
89
9.15k
        return Status::OK();
90
9.15k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
1.33k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
1.33k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
1.33k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
1.33k
            } else if (other_minmax->_min < _min) {
79
132
                _min = other_minmax->_min;
80
132
            }
81
1.33k
        }
82
1.33k
        if constexpr (NeedMax) {
83
1.33k
            if (other_minmax->_max > _max) {
84
137
                _max = other_minmax->_max;
85
137
            }
86
1.33k
        }
87
88
1.33k
        _contain_null |= minmax_func->contain_null();
89
1.33k
        return Status::OK();
90
1.33k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
113
    Status merge(MinMaxFuncBase* minmax_func) override {
71
113
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
113
        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
113
            } else if (other_minmax->_min < _min) {
79
6
                _min = other_minmax->_min;
80
6
            }
81
113
        }
82
113
        if constexpr (NeedMax) {
83
113
            if (other_minmax->_max > _max) {
84
5
                _max = other_minmax->_max;
85
5
            }
86
113
        }
87
88
113
        _contain_null |= minmax_func->contain_null();
89
113
        return Status::OK();
90
113
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
5
    Status merge(MinMaxFuncBase* minmax_func) override {
71
5
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
5
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
5
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
5
        }
82
5
        if constexpr (NeedMax) {
83
5
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
5
        }
87
88
5
        _contain_null |= minmax_func->contain_null();
89
5
        return Status::OK();
90
5
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
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
234
    Status merge(MinMaxFuncBase* minmax_func) override {
71
234
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
234
        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
234
            } else if (other_minmax->_min < _min) {
79
39
                _min = other_minmax->_min;
80
39
            }
81
234
        }
82
234
        if constexpr (NeedMax) {
83
234
            if (other_minmax->_max > _max) {
84
47
                _max = other_minmax->_max;
85
47
            }
86
234
        }
87
88
234
        _contain_null |= minmax_func->contain_null();
89
234
        return Status::OK();
90
234
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
68
    Status merge(MinMaxFuncBase* minmax_func) override {
71
68
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
68
        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
68
            } else if (other_minmax->_min < _min) {
79
1
                _min = other_minmax->_min;
80
1
            }
81
68
        }
82
68
        if constexpr (NeedMax) {
83
68
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
68
        }
87
88
68
        _contain_null |= minmax_func->contain_null();
89
68
        return Status::OK();
90
68
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
4
    Status merge(MinMaxFuncBase* minmax_func) override {
71
4
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
4
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
4
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
4
        }
82
4
        if constexpr (NeedMax) {
83
4
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
4
        }
87
88
4
        _contain_null |= minmax_func->contain_null();
89
4
        return Status::OK();
90
4
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
82
    Status merge(MinMaxFuncBase* minmax_func) override {
71
82
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
82
        if constexpr (NeedMin) {
73
82
            if constexpr (IsStringValue) {
74
82
                if (other_minmax->_min < _min || !_min_value_set) {
75
25
                    _min = other_minmax->_min;
76
25
                    _min_value_set = true;
77
25
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
82
        }
82
82
        if constexpr (NeedMax) {
83
82
            if (other_minmax->_max > _max) {
84
22
                _max = other_minmax->_max;
85
22
            }
86
82
        }
87
88
82
        _contain_null |= minmax_func->contain_null();
89
82
        return Status::OK();
90
82
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
26
    Status merge(MinMaxFuncBase* minmax_func) override {
71
26
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
26
        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
26
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
26
        }
82
26
        if constexpr (NeedMax) {
83
26
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
26
        }
87
88
26
        _contain_null |= minmax_func->contain_null();
89
26
        return Status::OK();
90
26
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
24
    Status merge(MinMaxFuncBase* minmax_func) override {
71
24
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
24
        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
24
            } else if (other_minmax->_min < _min) {
79
7
                _min = other_minmax->_min;
80
7
            }
81
24
        }
82
24
        if constexpr (NeedMax) {
83
24
            if (other_minmax->_max > _max) {
84
10
                _max = other_minmax->_max;
85
10
            }
86
24
        }
87
88
24
        _contain_null |= minmax_func->contain_null();
89
24
        return Status::OK();
90
24
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
44
    Status merge(MinMaxFuncBase* minmax_func) override {
71
44
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
44
        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
44
            } else if (other_minmax->_min < _min) {
79
5
                _min = other_minmax->_min;
80
5
            }
81
44
        }
82
44
        if constexpr (NeedMax) {
83
44
            if (other_minmax->_max > _max) {
84
5
                _max = other_minmax->_max;
85
5
            }
86
44
        }
87
88
44
        _contain_null |= minmax_func->contain_null();
89
44
        return Status::OK();
90
44
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
15
    Status merge(MinMaxFuncBase* minmax_func) override {
71
15
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
15
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
15
            } else if (other_minmax->_min < _min) {
79
7
                _min = other_minmax->_min;
80
7
            }
81
15
        }
82
15
        if constexpr (NeedMax) {
83
15
            if (other_minmax->_max > _max) {
84
6
                _max = other_minmax->_max;
85
6
            }
86
15
        }
87
88
15
        _contain_null |= minmax_func->contain_null();
89
15
        return Status::OK();
90
15
    }
91
92
1.22k
    MinMaxFuncBase* clone() const override {
93
1.22k
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
1.22k
        cloned->_max = _max;
95
1.22k
        cloned->_min = _min;
96
1.22k
        cloned->_min_value_set = _min_value_set;
97
1.22k
        cloned->_contain_null = _contain_null;
98
1.22k
        return cloned;
99
1.22k
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIhLb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIaLb1ELb1EE5cloneEv
Line
Count
Source
92
54
    MinMaxFuncBase* clone() const override {
93
54
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
54
        cloned->_max = _max;
95
54
        cloned->_min = _min;
96
54
        cloned->_min_value_set = _min_value_set;
97
54
        cloned->_contain_null = _contain_null;
98
54
        return cloned;
99
54
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
48
    MinMaxFuncBase* clone() const override {
93
48
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
48
        cloned->_max = _max;
95
48
        cloned->_min = _min;
96
48
        cloned->_min_value_set = _min_value_set;
97
48
        cloned->_contain_null = _contain_null;
98
48
        return cloned;
99
48
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
876
    MinMaxFuncBase* clone() const override {
93
876
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
876
        cloned->_max = _max;
95
876
        cloned->_min = _min;
96
876
        cloned->_min_value_set = _min_value_set;
97
876
        cloned->_contain_null = _contain_null;
98
876
        return cloned;
99
876
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
160
    MinMaxFuncBase* clone() const override {
93
160
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
160
        cloned->_max = _max;
95
160
        cloned->_min = _min;
96
160
        cloned->_min_value_set = _min_value_set;
97
160
        cloned->_contain_null = _contain_null;
98
160
        return cloned;
99
160
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
Line
Count
Source
92
14
    MinMaxFuncBase* clone() const override {
93
14
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
14
        cloned->_max = _max;
95
14
        cloned->_min = _min;
96
14
        cloned->_min_value_set = _min_value_set;
97
14
        cloned->_contain_null = _contain_null;
98
14
        return cloned;
99
14
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIfLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIdLb1ELb1EE5cloneEv
Line
Count
Source
92
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_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
15
    MinMaxFuncBase* clone() const override {
93
15
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
15
        cloned->_max = _max;
95
15
        cloned->_min = _min;
96
15
        cloned->_min_value_set = _min_value_set;
97
15
        cloned->_contain_null = _contain_null;
98
15
        return cloned;
99
15
    }
_ZNK5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5cloneEv
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
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5cloneEv
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_7DecimalIiEELb1ELb1EE5cloneEv
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_7DecimalIlEELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5cloneEv
Line
Count
Source
92
7
    MinMaxFuncBase* clone() const override {
93
7
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
7
        cloned->_max = _max;
95
7
        cloned->_min = _min;
96
7
        cloned->_min_value_set = _min_value_set;
97
7
        cloned->_contain_null = _contain_null;
98
7
        return cloned;
99
7
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
100
101
6.18k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
101
3
    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
459
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
510
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
3.20k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
1.41k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
33
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
101
5
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
6
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
110
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
86
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
164
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
25
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
47
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
84
    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
16
    void* get_max() override { return &_max; }
102
103
6.16k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
103
3
    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
402
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
513
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
3.21k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
1.41k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
39
    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
6
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
112
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
85
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
168
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
26
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
47
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
87
    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
16
    void* get_min() override { return &_min; }
104
105
1.49k
    Status assign(void* min_data, void* max_data) override {
106
1.49k
        if constexpr (IsStringValue) {
107
43
            _min_value_set = true;
108
43
        }
109
1.49k
        _min = *(T*)min_data;
110
1.49k
        _max = *(T*)max_data;
111
1.49k
        return Status::OK();
112
1.49k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
5
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
5
        _min = *(T*)min_data;
110
5
        _max = *(T*)max_data;
111
5
        return Status::OK();
112
5
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
37
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
37
        _min = *(T*)min_data;
110
37
        _max = *(T*)max_data;
111
37
        return Status::OK();
112
37
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
123
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
123
        _min = *(T*)min_data;
110
123
        _max = *(T*)max_data;
111
123
        return Status::OK();
112
123
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1.03k
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1.03k
        _min = *(T*)min_data;
110
1.03k
        _max = *(T*)max_data;
111
1.03k
        return Status::OK();
112
1.03k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
119
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
119
        _min = *(T*)min_data;
110
119
        _max = *(T*)max_data;
111
119
        return Status::OK();
112
119
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
13
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
13
        _min = *(T*)min_data;
110
13
        _max = *(T*)max_data;
111
13
        return Status::OK();
112
13
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
2
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
2
        _min = *(T*)min_data;
110
2
        _max = *(T*)max_data;
111
2
        return Status::OK();
112
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
59
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
59
        _min = *(T*)min_data;
110
59
        _max = *(T*)max_data;
111
59
        return Status::OK();
112
59
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
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_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
43
    Status assign(void* min_data, void* max_data) override {
106
43
        if constexpr (IsStringValue) {
107
43
            _min_value_set = true;
108
43
        }
109
43
        _min = *(T*)min_data;
110
43
        _max = *(T*)max_data;
111
43
        return Status::OK();
112
43
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
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_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
33
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
33
        _min = *(T*)min_data;
110
33
        _max = *(T*)max_data;
111
33
        return Status::OK();
112
33
    }
_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
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
    }
113
114
1.79k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
44
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
148
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
1.30k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
122
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
12
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
8
    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
58
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
2
    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
40
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
32
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
10
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
115
116
private:
117
1.79k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.79k
        if constexpr (NeedMin) {
119
1.79k
            f(filter->mutable_min_val(), _min);
120
1.79k
        }
121
1.79k
        if constexpr (NeedMax) {
122
1.79k
            f(filter->mutable_max_val(), _max);
123
1.79k
        }
124
1.79k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
4
        if constexpr (NeedMin) {
119
4
            f(filter->mutable_min_val(), _min);
120
4
        }
121
4
        if constexpr (NeedMax) {
122
4
            f(filter->mutable_max_val(), _max);
123
4
        }
124
4
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7_set_pbIZNS_13get_convertorIaEEDavEUlPNS_12PColumnValueERKaE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
44
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
44
        if constexpr (NeedMin) {
119
44
            f(filter->mutable_min_val(), _min);
120
44
        }
121
44
        if constexpr (NeedMax) {
122
44
            f(filter->mutable_max_val(), _max);
123
44
        }
124
44
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
148
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
148
        if constexpr (NeedMin) {
119
148
            f(filter->mutable_min_val(), _min);
120
148
        }
121
148
        if constexpr (NeedMax) {
122
148
            f(filter->mutable_max_val(), _max);
123
148
        }
124
148
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
1.30k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.30k
        if constexpr (NeedMin) {
119
1.30k
            f(filter->mutable_min_val(), _min);
120
1.30k
        }
121
1.30k
        if constexpr (NeedMax) {
122
1.30k
            f(filter->mutable_max_val(), _max);
123
1.30k
        }
124
1.30k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
122
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
122
        if constexpr (NeedMin) {
119
122
            f(filter->mutable_min_val(), _min);
120
122
        }
121
122
        if constexpr (NeedMax) {
122
122
            f(filter->mutable_max_val(), _max);
123
122
        }
124
122
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
12
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
12
        if constexpr (NeedMin) {
119
12
            f(filter->mutable_min_val(), _min);
120
12
        }
121
12
        if constexpr (NeedMax) {
122
12
            f(filter->mutable_max_val(), _max);
123
12
        }
124
12
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
8
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
8
        if constexpr (NeedMin) {
119
8
            f(filter->mutable_min_val(), _min);
120
8
        }
121
8
        if constexpr (NeedMax) {
122
8
            f(filter->mutable_max_val(), _max);
123
8
        }
124
8
    }
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
58
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
58
        if constexpr (NeedMin) {
119
58
            f(filter->mutable_min_val(), _min);
120
58
        }
121
58
        if constexpr (NeedMax) {
122
58
            f(filter->mutable_max_val(), _max);
123
58
        }
124
58
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
2
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2
        if constexpr (NeedMin) {
119
2
            f(filter->mutable_min_val(), _min);
120
2
        }
121
2
        if constexpr (NeedMax) {
122
2
            f(filter->mutable_max_val(), _max);
123
2
        }
124
2
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_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
40
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
40
        if constexpr (NeedMin) {
119
40
            f(filter->mutable_min_val(), _min);
120
40
        }
121
40
        if constexpr (NeedMax) {
122
40
            f(filter->mutable_max_val(), _max);
123
40
        }
124
40
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
4
        if constexpr (NeedMin) {
119
4
            f(filter->mutable_min_val(), _min);
120
4
        }
121
4
        if constexpr (NeedMax) {
122
4
            f(filter->mutable_max_val(), _max);
123
4
        }
124
4
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
32
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
32
        if constexpr (NeedMin) {
119
32
            f(filter->mutable_min_val(), _min);
120
32
        }
121
32
        if constexpr (NeedMax) {
122
32
            f(filter->mutable_max_val(), _max);
123
32
        }
124
32
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS5_EEDavEUlPNS_12PColumnValueERKS5_E_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE7_set_pbIZNS_13get_convertorIjEEDavEUlPNS_12PColumnValueERKjE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7_set_pbIZNS_13get_convertorIoEEDavEUlPNS_12PColumnValueERKoE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
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
    }
125
126
    void _update_batch_string(const auto& column_string, const uint8_t* __restrict nullmap,
127
92
                              size_t start, size_t size) {
128
679
        for (size_t i = start; i < size; i++) {
129
587
            if (nullmap == nullptr || !nullmap[i]) {
130
556
                if constexpr (NeedMin) {
131
556
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
135
                        _min = column_string.get_data_at(i).to_string();
133
135
                        _min_value_set = true;
134
135
                    }
135
556
                }
136
556
                if constexpr (NeedMax) {
137
556
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
155
                        _max = column_string.get_data_at(i).to_string();
139
155
                    }
140
556
                }
141
556
            }
142
587
        }
143
92
    }
_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
91
                              size_t start, size_t size) {
128
670
        for (size_t i = start; i < size; i++) {
129
579
            if (nullmap == nullptr || !nullmap[i]) {
130
548
                if constexpr (NeedMin) {
131
548
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
134
                        _min = column_string.get_data_at(i).to_string();
133
134
                        _min_value_set = true;
134
134
                    }
135
548
                }
136
548
                if constexpr (NeedMax) {
137
548
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
147
                        _max = column_string.get_data_at(i).to_string();
139
147
                    }
140
548
                }
141
548
            }
142
579
        }
143
91
    }
144
145
2.80k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.80k
        const auto size = column->size();
147
2.80k
        if constexpr (std::is_same_v<T, std::string>) {
148
53
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
52
            } else {
152
52
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
52
                                     size);
154
52
            }
155
2.75k
        } else {
156
2.75k
            const T* data = (T*)column->get_raw_data().data;
157
18.7M
            for (size_t i = start; i < size; i++) {
158
18.7M
                if constexpr (NeedMin) {
159
18.7M
                    _min = std::min(_min, *(data + i));
160
18.7M
                }
161
18.7M
                if constexpr (NeedMax) {
162
18.7M
                    _max = std::max(_max, *(data + i));
163
18.7M
                }
164
18.7M
            }
165
2.75k
        }
166
2.80k
    }
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
201
    void _update_batch(const ColumnPtr& column, size_t start) {
146
201
        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
201
        } else {
156
201
            const T* data = (T*)column->get_raw_data().data;
157
607
            for (size_t i = start; i < size; i++) {
158
406
                if constexpr (NeedMin) {
159
406
                    _min = std::min(_min, *(data + i));
160
406
                }
161
406
                if constexpr (NeedMax) {
162
406
                    _max = std::max(_max, *(data + i));
163
406
                }
164
406
            }
165
201
        }
166
201
    }
_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.86k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1.86k
        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.86k
        } else {
156
1.86k
            const T* data = (T*)column->get_raw_data().data;
157
18.7M
            for (size_t i = start; i < size; i++) {
158
18.7M
                if constexpr (NeedMin) {
159
18.7M
                    _min = std::min(_min, *(data + i));
160
18.7M
                }
161
18.7M
                if constexpr (NeedMax) {
162
18.7M
                    _max = std::max(_max, *(data + i));
163
18.7M
                }
164
18.7M
            }
165
1.86k
        }
166
1.86k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
328
    void _update_batch(const ColumnPtr& column, size_t start) {
146
328
        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
328
        } else {
156
328
            const T* data = (T*)column->get_raw_data().data;
157
989
            for (size_t i = start; i < size; i++) {
158
661
                if constexpr (NeedMin) {
159
661
                    _min = std::min(_min, *(data + i));
160
661
                }
161
661
                if constexpr (NeedMax) {
162
661
                    _max = std::max(_max, *(data + i));
163
661
                }
164
661
            }
165
328
        }
166
328
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
72
    void _update_batch(const ColumnPtr& column, size_t start) {
146
72
        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
72
        } else {
156
72
            const T* data = (T*)column->get_raw_data().data;
157
181
            for (size_t i = start; i < size; i++) {
158
109
                if constexpr (NeedMin) {
159
109
                    _min = std::min(_min, *(data + i));
160
109
                }
161
109
                if constexpr (NeedMax) {
162
109
                    _max = std::max(_max, *(data + i));
163
109
                }
164
109
            }
165
72
        }
166
72
    }
_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
8
    void _update_batch(const ColumnPtr& column, size_t start) {
146
8
        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
8
        } else {
156
8
            const T* data = (T*)column->get_raw_data().data;
157
18
            for (size_t i = start; i < size; i++) {
158
10
                if constexpr (NeedMin) {
159
10
                    _min = std::min(_min, *(data + i));
160
10
                }
161
10
                if constexpr (NeedMax) {
162
10
                    _max = std::max(_max, *(data + i));
163
10
                }
164
10
            }
165
8
        }
166
8
    }
_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
164
    void _update_batch(const ColumnPtr& column, size_t start) {
146
164
        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
164
        } else {
156
164
            const T* data = (T*)column->get_raw_data().data;
157
494
            for (size_t i = start; i < size; i++) {
158
330
                if constexpr (NeedMin) {
159
330
                    _min = std::min(_min, *(data + i));
160
330
                }
161
330
                if constexpr (NeedMax) {
162
330
                    _max = std::max(_max, *(data + i));
163
330
                }
164
330
            }
165
164
        }
166
164
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
19
    void _update_batch(const ColumnPtr& column, size_t start) {
146
19
        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
19
        } else {
156
19
            const T* data = (T*)column->get_raw_data().data;
157
81
            for (size_t i = start; i < size; i++) {
158
62
                if constexpr (NeedMin) {
159
62
                    _min = std::min(_min, *(data + i));
160
62
                }
161
62
                if constexpr (NeedMax) {
162
62
                    _max = std::max(_max, *(data + i));
163
62
                }
164
62
            }
165
19
        }
166
19
    }
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
53
    void _update_batch(const ColumnPtr& column, size_t start) {
146
53
        const auto size = column->size();
147
53
        if constexpr (std::is_same_v<T, std::string>) {
148
53
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
52
            } else {
152
52
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
52
                                     size);
154
52
            }
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
53
    }
_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
41
    void _update_batch(const ColumnPtr& column, size_t start) {
146
41
        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
41
        } else {
156
41
            const T* data = (T*)column->get_raw_data().data;
157
245
            for (size_t i = start; i < size; i++) {
158
204
                if constexpr (NeedMin) {
159
204
                    _min = std::min(_min, *(data + i));
160
204
                }
161
204
                if constexpr (NeedMax) {
162
204
                    _max = std::max(_max, *(data + i));
163
204
                }
164
204
            }
165
41
        }
166
41
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
45
    void _update_batch(const ColumnPtr& column, size_t start) {
146
45
        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
45
        } else {
156
45
            const T* data = (T*)column->get_raw_data().data;
157
139
            for (size_t i = start; i < size; i++) {
158
94
                if constexpr (NeedMin) {
159
94
                    _min = std::min(_min, *(data + i));
160
94
                }
161
94
                if constexpr (NeedMax) {
162
94
                    _max = std::max(_max, *(data + i));
163
94
                }
164
94
            }
165
45
        }
166
45
    }
_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
3
    void _update_batch(const ColumnPtr& column, size_t start) {
146
3
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
3
        } else {
156
3
            const T* data = (T*)column->get_raw_data().data;
157
8
            for (size_t i = start; i < size; i++) {
158
5
                if constexpr (NeedMin) {
159
5
                    _min = std::min(_min, *(data + i));
160
5
                }
161
5
                if constexpr (NeedMax) {
162
5
                    _max = std::max(_max, *(data + i));
163
5
                }
164
5
            }
165
3
        }
166
3
    }
167
168
4.30k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
4.30k
        const auto size = column->size();
170
4.30k
        if constexpr (std::is_same_v<T, std::string>) {
171
39
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
39
            } else {
175
39
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
39
                                     start, size);
177
39
            }
178
4.26k
        } else {
179
4.26k
            const T* data = (T*)column->get_raw_data().data;
180
2.26M
            for (size_t i = start; i < size; i++) {
181
2.25M
                if (!nullmap[i]) {
182
2.25M
                    if constexpr (NeedMin) {
183
2.25M
                        _min = std::min(_min, *(data + i));
184
2.25M
                    }
185
2.25M
                    if constexpr (NeedMax) {
186
2.25M
                        _max = std::max(_max, *(data + i));
187
2.25M
                    }
188
2.25M
                }
189
2.25M
            }
190
4.26k
        }
191
4.30k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
2
        } else {
179
2
            const T* data = (T*)column->get_raw_data().data;
180
6
            for (size_t i = start; i < size; i++) {
181
4
                if (!nullmap[i]) {
182
3
                    if constexpr (NeedMin) {
183
3
                        _min = std::min(_min, *(data + i));
184
3
                    }
185
3
                    if constexpr (NeedMax) {
186
3
                        _max = std::max(_max, *(data + i));
187
3
                    }
188
3
                }
189
4
            }
190
2
        }
191
2
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
333
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
333
        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
333
        } else {
179
333
            const T* data = (T*)column->get_raw_data().data;
180
1.09k
            for (size_t i = start; i < size; i++) {
181
764
                if (!nullmap[i]) {
182
745
                    if constexpr (NeedMin) {
183
745
                        _min = std::min(_min, *(data + i));
184
745
                    }
185
745
                    if constexpr (NeedMax) {
186
745
                        _max = std::max(_max, *(data + i));
187
745
                    }
188
745
                }
189
764
            }
190
333
        }
191
333
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
342
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
342
        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
342
        } else {
179
342
            const T* data = (T*)column->get_raw_data().data;
180
1.87k
            for (size_t i = start; i < size; i++) {
181
1.53k
                if (!nullmap[i]) {
182
1.31k
                    if constexpr (NeedMin) {
183
1.31k
                        _min = std::min(_min, *(data + i));
184
1.31k
                    }
185
1.31k
                    if constexpr (NeedMax) {
186
1.31k
                        _max = std::max(_max, *(data + i));
187
1.31k
                    }
188
1.31k
                }
189
1.53k
            }
190
342
        }
191
342
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2.66k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2.66k
        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.66k
        } else {
179
2.66k
            const T* data = (T*)column->get_raw_data().data;
180
2.05M
            for (size_t i = start; i < size; i++) {
181
2.05M
                if (!nullmap[i]) {
182
2.04M
                    if constexpr (NeedMin) {
183
2.04M
                        _min = std::min(_min, *(data + i));
184
2.04M
                    }
185
2.04M
                    if constexpr (NeedMax) {
186
2.04M
                        _max = std::max(_max, *(data + i));
187
2.04M
                    }
188
2.04M
                }
189
2.05M
            }
190
2.66k
        }
191
2.66k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
733
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
733
        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
733
        } else {
179
733
            const T* data = (T*)column->get_raw_data().data;
180
203k
            for (size_t i = start; i < size; i++) {
181
202k
                if (!nullmap[i]) {
182
202k
                    if constexpr (NeedMin) {
183
202k
                        _min = std::min(_min, *(data + i));
184
202k
                    }
185
202k
                    if constexpr (NeedMax) {
186
202k
                        _max = std::max(_max, *(data + i));
187
202k
                    }
188
202k
                }
189
202k
            }
190
733
        }
191
733
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
24
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
24
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
24
        } else {
179
24
            const T* data = (T*)column->get_raw_data().data;
180
48
            for (size_t i = start; i < size; i++) {
181
24
                if (!nullmap[i]) {
182
24
                    if constexpr (NeedMin) {
183
24
                        _min = std::min(_min, *(data + i));
184
24
                    }
185
24
                    if constexpr (NeedMax) {
186
24
                        _max = std::max(_max, *(data + i));
187
24
                    }
188
24
                }
189
24
            }
190
24
        }
191
24
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
7
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
7
        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
7
        } else {
179
7
            const T* data = (T*)column->get_raw_data().data;
180
35
            for (size_t i = start; i < size; i++) {
181
28
                if (!nullmap[i]) {
182
28
                    if constexpr (NeedMin) {
183
28
                        _min = std::min(_min, *(data + i));
184
28
                    }
185
28
                    if constexpr (NeedMax) {
186
28
                        _max = std::max(_max, *(data + i));
187
28
                    }
188
28
                }
189
28
            }
190
7
        }
191
7
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_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
14
            for (size_t i = start; i < size; i++) {
181
12
                if (!nullmap[i]) {
182
12
                    if constexpr (NeedMin) {
183
12
                        _min = std::min(_min, *(data + i));
184
12
                    }
185
12
                    if constexpr (NeedMax) {
186
12
                        _max = std::max(_max, *(data + i));
187
12
                    }
188
12
                }
189
12
            }
190
2
        }
191
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
25
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
25
        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
25
        } else {
179
25
            const T* data = (T*)column->get_raw_data().data;
180
153
            for (size_t i = start; i < size; i++) {
181
128
                if (!nullmap[i]) {
182
100
                    if constexpr (NeedMin) {
183
100
                        _min = std::min(_min, *(data + i));
184
100
                    }
185
100
                    if constexpr (NeedMax) {
186
100
                        _max = std::max(_max, *(data + i));
187
100
                    }
188
100
                }
189
128
            }
190
25
        }
191
25
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_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
121
            for (size_t i = start; i < size; i++) {
181
89
                if (!nullmap[i]) {
182
68
                    if constexpr (NeedMin) {
183
68
                        _min = std::min(_min, *(data + i));
184
68
                    }
185
68
                    if constexpr (NeedMax) {
186
68
                        _max = std::max(_max, *(data + i));
187
68
                    }
188
68
                }
189
89
            }
190
32
        }
191
32
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
1
        } else {
179
1
            const T* data = (T*)column->get_raw_data().data;
180
5
            for (size_t i = start; i < size; i++) {
181
4
                if (!nullmap[i]) {
182
3
                    if constexpr (NeedMin) {
183
3
                        _min = std::min(_min, *(data + i));
184
3
                    }
185
3
                    if constexpr (NeedMax) {
186
3
                        _max = std::max(_max, *(data + i));
187
3
                    }
188
3
                }
189
4
            }
190
1
        }
191
1
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
39
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
39
        const auto size = column->size();
170
39
        if constexpr (std::is_same_v<T, std::string>) {
171
39
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
39
            } else {
175
39
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
39
                                     start, size);
177
39
            }
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
39
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
40
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
40
        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
40
        } else {
179
40
            const T* data = (T*)column->get_raw_data().data;
180
162
            for (size_t i = start; i < size; i++) {
181
122
                if (!nullmap[i]) {
182
27
                    if constexpr (NeedMin) {
183
27
                        _min = std::min(_min, *(data + i));
184
27
                    }
185
27
                    if constexpr (NeedMax) {
186
27
                        _max = std::max(_max, *(data + i));
187
27
                    }
188
27
                }
189
122
            }
190
40
        }
191
40
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
7
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
7
        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
7
        } else {
179
7
            const T* data = (T*)column->get_raw_data().data;
180
42
            for (size_t i = start; i < size; i++) {
181
35
                if (!nullmap[i]) {
182
28
                    if constexpr (NeedMin) {
183
28
                        _min = std::min(_min, *(data + i));
184
28
                    }
185
28
                    if constexpr (NeedMax) {
186
28
                        _max = std::max(_max, *(data + i));
187
28
                    }
188
28
                }
189
35
            }
190
7
        }
191
7
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
33
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
33
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
33
        } else {
179
33
            const T* data = (T*)column->get_raw_data().data;
180
130
            for (size_t i = start; i < size; i++) {
181
97
                if (!nullmap[i]) {
182
62
                    if constexpr (NeedMin) {
183
62
                        _min = std::min(_min, *(data + i));
184
62
                    }
185
62
                    if constexpr (NeedMax) {
186
62
                        _max = std::max(_max, *(data + i));
187
62
                    }
188
62
                }
189
97
            }
190
33
        }
191
33
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_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
39
            for (size_t i = start; i < size; i++) {
181
36
                if (!nullmap[i]) {
182
36
                    if constexpr (NeedMin) {
183
36
                        _min = std::min(_min, *(data + i));
184
36
                    }
185
36
                    if constexpr (NeedMax) {
186
36
                        _max = std::max(_max, *(data + i));
187
36
                    }
188
36
                }
189
36
            }
190
3
        }
191
3
    }
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
19
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
19
        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
19
        } else {
179
19
            const T* data = (T*)column->get_raw_data().data;
180
618
            for (size_t i = start; i < size; i++) {
181
599
                if (!nullmap[i]) {
182
549
                    if constexpr (NeedMin) {
183
549
                        _min = std::min(_min, *(data + i));
184
549
                    }
185
549
                    if constexpr (NeedMax) {
186
549
                        _max = std::max(_max, *(data + i));
187
549
                    }
188
549
                }
189
599
            }
190
19
        }
191
19
    }
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