Coverage Report

Created: 2026-10-28 18:14

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/minmax_predicate.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <gen_cpp/internal_service.pb.h>
21
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_string.h"
24
#include "core/type_limit.h"
25
#include "exprs/filter_base.h"
26
27
namespace doris {
28
29
// only used in Runtime Filter
30
class MinMaxFuncBase : public FilterBase {
31
public:
32
25.8k
    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
26.0k
    virtual ~MinMaxFuncBase() = default;
43
44
    virtual void to_pb(PMinMaxFilter* filter) = 0;
45
};
46
47
template <class T, bool NeedMax = true, bool NeedMin = true>
48
class MinMaxNumFunc : public MinMaxFuncBase {
49
public:
50
    static constexpr bool IsStringValue = std::is_same_v<T, std::string>;
51
25.9k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
19
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
51
38
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
51
1.67k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
51
1.20k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
13.8k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
3.86k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
251
    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
61
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
94
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
605
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
2.43k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
21
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
51
1.01k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
117
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
383
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
148
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
51
29
    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
1.01k
    ~MinMaxNumFunc() override = default;
53
54
8.02k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
8.02k
        if (is_column_nullable(*column)) {
56
6.05k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
6.05k
            const auto& col = nullable->get_nested_column_ptr();
58
6.05k
            const auto& nullmap = nullable->get_null_map_data();
59
6.05k
            if (nullable->has_null()) {
60
4.93k
                _update_batch(col, nullmap, start);
61
4.93k
                _contain_null = true;
62
4.93k
            } else {
63
1.11k
                _update_batch(col, start);
64
1.11k
            }
65
6.05k
        } else {
66
1.96k
            _update_batch(column, start);
67
1.96k
        }
68
8.02k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1
        if (is_column_nullable(*column)) {
56
1
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1
            const auto& col = nullable->get_nested_column_ptr();
58
1
            const auto& nullmap = nullable->get_null_map_data();
59
1
            if (nullable->has_null()) {
60
1
                _update_batch(col, nullmap, start);
61
1
                _contain_null = true;
62
1
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
32
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
32
        if (is_column_nullable(*column)) {
56
31
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
31
            const auto& col = nullable->get_nested_column_ptr();
58
31
            const auto& nullmap = nullable->get_null_map_data();
59
32
            if (nullable->has_null()) {
60
32
                _update_batch(col, nullmap, start);
61
32
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
31
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
32
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
967
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
967
        if (is_column_nullable(*column)) {
56
960
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
960
            const auto& col = nullable->get_nested_column_ptr();
58
960
            const auto& nullmap = nullable->get_null_map_data();
59
960
            if (nullable->has_null()) {
60
729
                _update_batch(col, nullmap, start);
61
729
                _contain_null = true;
62
729
            } else {
63
231
                _update_batch(col, start);
64
231
            }
65
960
        } else {
66
7
            _update_batch(column, start);
67
7
        }
68
967
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
597
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
597
        if (is_column_nullable(*column)) {
56
596
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
596
            const auto& col = nullable->get_nested_column_ptr();
58
596
            const auto& nullmap = nullable->get_null_map_data();
59
597
            if (nullable->has_null()) {
60
597
                _update_batch(col, nullmap, start);
61
597
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
596
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
597
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
3.95k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3.95k
        if (is_column_nullable(*column)) {
56
2.61k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2.61k
            const auto& col = nullable->get_nested_column_ptr();
58
2.61k
            const auto& nullmap = nullable->get_null_map_data();
59
2.61k
            if (nullable->has_null()) {
60
1.82k
                _update_batch(col, nullmap, start);
61
1.82k
                _contain_null = true;
62
1.82k
            } else {
63
798
                _update_batch(col, start);
64
798
            }
65
2.61k
        } else {
66
1.33k
            _update_batch(column, start);
67
1.33k
        }
68
3.95k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
1.24k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1.24k
        if (is_column_nullable(*column)) {
56
1.07k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1.07k
            const auto& col = nullable->get_nested_column_ptr();
58
1.07k
            const auto& nullmap = nullable->get_null_map_data();
59
1.08k
            if (nullable->has_null()) {
60
1.08k
                _update_batch(col, nullmap, start);
61
1.08k
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
1.07k
        } else {
66
161
            _update_batch(column, start);
67
161
        }
68
1.24k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
206
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
206
        if (is_column_nullable(*column)) {
56
15
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
15
            const auto& col = nullable->get_nested_column_ptr();
58
15
            const auto& nullmap = nullable->get_null_map_data();
59
15
            if (nullable->has_null()) {
60
15
                _update_batch(col, nullmap, start);
61
15
                _contain_null = true;
62
15
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
191
        } else {
66
191
            _update_batch(column, start);
67
191
        }
68
206
    }
_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
41
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
41
        if (is_column_nullable(*column)) {
56
41
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
41
            const auto& col = nullable->get_nested_column_ptr();
58
41
            const auto& nullmap = nullable->get_null_map_data();
59
41
            if (nullable->has_null()) {
60
29
                _update_batch(col, nullmap, start);
61
29
                _contain_null = true;
62
29
            } else {
63
12
                _update_batch(col, start);
64
12
            }
65
41
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
41
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
19
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
19
        if (is_column_nullable(*column)) {
56
17
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
17
            const auto& col = nullable->get_nested_column_ptr();
58
17
            const auto& nullmap = nullable->get_null_map_data();
59
17
            if (nullable->has_null()) {
60
17
                _update_batch(col, nullmap, start);
61
17
                _contain_null = true;
62
17
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
17
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
19
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
212
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
212
        if (is_column_nullable(*column)) {
56
58
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
58
            const auto& col = nullable->get_nested_column_ptr();
58
58
            const auto& nullmap = nullable->get_null_map_data();
59
58
            if (nullable->has_null()) {
60
57
                _update_batch(col, nullmap, start);
61
57
                _contain_null = true;
62
57
            } else {
63
1
                _update_batch(col, start);
64
1
            }
65
154
        } else {
66
154
            _update_batch(column, start);
67
154
        }
68
212
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
350
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
350
        if (is_column_nullable(*column)) {
56
326
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
326
            const auto& col = nullable->get_nested_column_ptr();
58
326
            const auto& nullmap = nullable->get_null_map_data();
59
326
            if (nullable->has_null()) {
60
323
                _update_batch(col, nullmap, start);
61
323
                _contain_null = true;
62
323
            } else {
63
3
                _update_batch(col, start);
64
3
            }
65
326
        } else {
66
24
            _update_batch(column, start);
67
24
        }
68
350
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
7
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
7
        if (is_column_nullable(*column)) {
56
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
7
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
7
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
54
228
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
228
        if (is_column_nullable(*column)) {
56
167
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
167
            const auto& col = nullable->get_nested_column_ptr();
58
167
            const auto& nullmap = nullable->get_null_map_data();
59
167
            if (nullable->has_null()) {
60
119
                _update_batch(col, nullmap, start);
61
119
                _contain_null = true;
62
119
            } else {
63
48
                _update_batch(col, start);
64
48
            }
65
167
        } else {
66
61
            _update_batch(column, start);
67
61
        }
68
228
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
65
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
65
        if (is_column_nullable(*column)) {
56
64
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
64
            const auto& col = nullable->get_nested_column_ptr();
58
64
            const auto& nullmap = nullable->get_null_map_data();
59
64
            if (nullable->has_null()) {
60
64
                _update_batch(col, nullmap, start);
61
64
                _contain_null = true;
62
64
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
64
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
65
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
33
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
33
        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
21
                _update_batch(col, nullmap, start);
61
21
                _contain_null = true;
62
21
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
21
        } else {
66
12
            _update_batch(column, start);
67
12
        }
68
33
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
51
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
51
        if (is_column_nullable(*column)) {
56
43
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
43
            const auto& col = nullable->get_nested_column_ptr();
58
43
            const auto& nullmap = nullable->get_null_map_data();
59
43
            if (nullable->has_null()) {
60
17
                _update_batch(col, nullmap, start);
61
17
                _contain_null = true;
62
26
            } else {
63
26
                _update_batch(col, start);
64
26
            }
65
43
        } else {
66
8
            _update_batch(column, start);
67
8
        }
68
51
    }
_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
12
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
12
        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
7
        } else {
66
5
            _update_batch(column, start);
67
5
        }
68
12
    }
69
70
14.3k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
14.3k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
14.3k
        if constexpr (NeedMin) {
73
14.3k
            if constexpr (IsStringValue) {
74
618
                if (other_minmax->_min < _min || !_min_value_set) {
75
44
                    _min = other_minmax->_min;
76
44
                    _min_value_set = true;
77
44
                }
78
13.7k
            } else if (other_minmax->_min < _min) {
79
1.03k
                _min = other_minmax->_min;
80
1.03k
            }
81
14.3k
        }
82
14.3k
        if constexpr (NeedMax) {
83
14.3k
            if (other_minmax->_max > _max) {
84
1.07k
                _max = other_minmax->_max;
85
1.07k
            }
86
14.3k
        }
87
88
14.3k
        _contain_null |= minmax_func->contain_null();
89
14.3k
        return Status::OK();
90
14.3k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
15
    Status merge(MinMaxFuncBase* minmax_func) override {
71
15
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
15
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
15
            } else if (other_minmax->_min < _min) {
79
1
                _min = other_minmax->_min;
80
1
            }
81
15
        }
82
15
        if constexpr (NeedMax) {
83
15
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
15
        }
87
88
15
        _contain_null |= minmax_func->contain_null();
89
15
        return Status::OK();
90
15
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
30
    Status merge(MinMaxFuncBase* minmax_func) override {
71
30
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
30
        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
30
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
30
        }
82
30
        if constexpr (NeedMax) {
83
30
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
30
        }
87
88
30
        _contain_null |= minmax_func->contain_null();
89
30
        return Status::OK();
90
30
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
799
    Status merge(MinMaxFuncBase* minmax_func) override {
71
799
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
799
        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
799
            } else if (other_minmax->_min < _min) {
79
123
                _min = other_minmax->_min;
80
123
            }
81
799
        }
82
799
        if constexpr (NeedMax) {
83
799
            if (other_minmax->_max > _max) {
84
111
                _max = other_minmax->_max;
85
111
            }
86
799
        }
87
88
799
        _contain_null |= minmax_func->contain_null();
89
799
        return Status::OK();
90
799
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
474
    Status merge(MinMaxFuncBase* minmax_func) override {
71
474
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
474
        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
474
            } else if (other_minmax->_min < _min) {
79
45
                _min = other_minmax->_min;
80
45
            }
81
474
        }
82
474
        if constexpr (NeedMax) {
83
474
            if (other_minmax->_max > _max) {
84
46
                _max = other_minmax->_max;
85
46
            }
86
474
        }
87
88
474
        _contain_null |= minmax_func->contain_null();
89
474
        return Status::OK();
90
474
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
8.00k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
8.00k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
8.00k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
8.00k
            } else if (other_minmax->_min < _min) {
79
570
                _min = other_minmax->_min;
80
570
            }
81
8.00k
        }
82
8.00k
        if constexpr (NeedMax) {
83
8.00k
            if (other_minmax->_max > _max) {
84
580
                _max = other_minmax->_max;
85
580
            }
86
8.00k
        }
87
88
8.00k
        _contain_null |= minmax_func->contain_null();
89
8.00k
        return Status::OK();
90
8.00k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
1.29k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
1.29k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
1.29k
        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.29k
            } else if (other_minmax->_min < _min) {
79
112
                _min = other_minmax->_min;
80
112
            }
81
1.29k
        }
82
1.29k
        if constexpr (NeedMax) {
83
1.29k
            if (other_minmax->_max > _max) {
84
113
                _max = other_minmax->_max;
85
113
            }
86
1.29k
        }
87
88
1.29k
        _contain_null |= minmax_func->contain_null();
89
1.29k
        return Status::OK();
90
1.29k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
154
    Status merge(MinMaxFuncBase* minmax_func) override {
71
154
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
154
        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
154
            } else if (other_minmax->_min < _min) {
79
7
                _min = other_minmax->_min;
80
7
            }
81
154
        }
82
154
        if constexpr (NeedMax) {
83
154
            if (other_minmax->_max > _max) {
84
6
                _max = other_minmax->_max;
85
6
            }
86
154
        }
87
88
154
        _contain_null |= minmax_func->contain_null();
89
154
        return Status::OK();
90
154
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_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_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
66
    Status merge(MinMaxFuncBase* minmax_func) override {
71
66
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
66
        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
66
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
66
        }
82
66
        if constexpr (NeedMax) {
83
66
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
66
        }
87
88
66
        _contain_null |= minmax_func->contain_null();
89
66
        return Status::OK();
90
66
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
349
    Status merge(MinMaxFuncBase* minmax_func) override {
71
349
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
349
        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
349
            } else if (other_minmax->_min < _min) {
79
47
                _min = other_minmax->_min;
80
47
            }
81
349
        }
82
349
        if constexpr (NeedMax) {
83
349
            if (other_minmax->_max > _max) {
84
56
                _max = other_minmax->_max;
85
56
            }
86
349
        }
87
88
349
        _contain_null |= minmax_func->contain_null();
89
349
        return Status::OK();
90
349
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
2.10k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
2.10k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
2.10k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
2.10k
            } else if (other_minmax->_min < _min) {
79
119
                _min = other_minmax->_min;
80
119
            }
81
2.10k
        }
82
2.10k
        if constexpr (NeedMax) {
83
2.10k
            if (other_minmax->_max > _max) {
84
129
                _max = other_minmax->_max;
85
129
            }
86
2.10k
        }
87
88
2.10k
        _contain_null |= minmax_func->contain_null();
89
2.10k
        return Status::OK();
90
2.10k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
618
    Status merge(MinMaxFuncBase* minmax_func) override {
71
618
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
618
        if constexpr (NeedMin) {
73
618
            if constexpr (IsStringValue) {
74
618
                if (other_minmax->_min < _min || !_min_value_set) {
75
44
                    _min = other_minmax->_min;
76
44
                    _min_value_set = true;
77
44
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
618
        }
82
618
        if constexpr (NeedMax) {
83
618
            if (other_minmax->_max > _max) {
84
27
                _max = other_minmax->_max;
85
27
            }
86
618
        }
87
88
618
        _contain_null |= minmax_func->contain_null();
89
618
        return Status::OK();
90
618
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
63
    Status merge(MinMaxFuncBase* minmax_func) override {
71
63
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
63
        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
63
            } else if (other_minmax->_min < _min) {
79
7
                _min = other_minmax->_min;
80
7
            }
81
63
        }
82
63
        if constexpr (NeedMax) {
83
63
            if (other_minmax->_max > _max) {
84
8
                _max = other_minmax->_max;
85
8
            }
86
63
        }
87
88
63
        _contain_null |= minmax_func->contain_null();
89
63
        return Status::OK();
90
63
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
305
    Status merge(MinMaxFuncBase* minmax_func) override {
71
305
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
305
        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
305
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
305
        }
82
305
        if constexpr (NeedMax) {
83
305
            if (other_minmax->_max > _max) {
84
1
                _max = other_minmax->_max;
85
1
            }
86
305
        }
87
88
305
        _contain_null |= minmax_func->contain_null();
89
305
        return Status::OK();
90
305
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
34
    Status merge(MinMaxFuncBase* minmax_func) override {
71
34
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
34
        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
34
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
34
        }
82
34
        if constexpr (NeedMax) {
83
34
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
34
        }
87
88
34
        _contain_null |= minmax_func->contain_null();
89
34
        return Status::OK();
90
34
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
9
    Status merge(MinMaxFuncBase* minmax_func) override {
71
9
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
9
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
9
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
9
        }
82
9
        if constexpr (NeedMax) {
83
9
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
9
        }
87
88
9
        _contain_null |= minmax_func->contain_null();
89
9
        return Status::OK();
90
9
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
25
    Status merge(MinMaxFuncBase* minmax_func) override {
71
25
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
25
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
25
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
25
        }
82
25
        if constexpr (NeedMax) {
83
25
            if (other_minmax->_max > _max) {
84
1
                _max = other_minmax->_max;
85
1
            }
86
25
        }
87
88
25
        _contain_null |= minmax_func->contain_null();
89
25
        return Status::OK();
90
25
    }
91
92
872
    MinMaxFuncBase* clone() const override {
93
872
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
872
        cloned->_max = _max;
95
872
        cloned->_min = _min;
96
872
        cloned->_min_value_set = _min_value_set;
97
872
        cloned->_contain_null = _contain_null;
98
872
        return cloned;
99
872
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIhLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5cloneEv
Line
Count
Source
92
2
    MinMaxFuncBase* clone() const override {
93
2
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
2
        cloned->_max = _max;
95
2
        cloned->_min = _min;
96
2
        cloned->_min_value_set = _min_value_set;
97
2
        cloned->_contain_null = _contain_null;
98
2
        return cloned;
99
2
    }
_ZNK5doris13MinMaxNumFuncIaLb1ELb1EE5cloneEv
Line
Count
Source
92
82
    MinMaxFuncBase* clone() const override {
93
82
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
82
        cloned->_max = _max;
95
82
        cloned->_min = _min;
96
82
        cloned->_min_value_set = _min_value_set;
97
82
        cloned->_contain_null = _contain_null;
98
82
        return cloned;
99
82
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
53
    MinMaxFuncBase* clone() const override {
93
53
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
53
        cloned->_max = _max;
95
53
        cloned->_min = _min;
96
53
        cloned->_min_value_set = _min_value_set;
97
53
        cloned->_contain_null = _contain_null;
98
53
        return cloned;
99
53
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
437
    MinMaxFuncBase* clone() const override {
93
437
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
437
        cloned->_max = _max;
95
437
        cloned->_min = _min;
96
437
        cloned->_min_value_set = _min_value_set;
97
437
        cloned->_contain_null = _contain_null;
98
437
        return cloned;
99
437
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
138
    MinMaxFuncBase* clone() const override {
93
138
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
138
        cloned->_max = _max;
95
138
        cloned->_min = _min;
96
138
        cloned->_min_value_set = _min_value_set;
97
138
        cloned->_contain_null = _contain_null;
98
138
        return cloned;
99
138
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
Line
Count
Source
92
13
    MinMaxFuncBase* clone() const override {
93
13
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
13
        cloned->_max = _max;
95
13
        cloned->_min = _min;
96
13
        cloned->_min_value_set = _min_value_set;
97
13
        cloned->_contain_null = _contain_null;
98
13
        return cloned;
99
13
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIfLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIdLb1ELb1EE5cloneEv
Line
Count
Source
92
8
    MinMaxFuncBase* clone() const override {
93
8
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
8
        cloned->_max = _max;
95
8
        cloned->_min = _min;
96
8
        cloned->_min_value_set = _min_value_set;
97
8
        cloned->_contain_null = _contain_null;
98
8
        return cloned;
99
8
    }
_ZNK5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5cloneEv
Line
Count
Source
92
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_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
20
    MinMaxFuncBase* clone() const override {
93
20
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
20
        cloned->_max = _max;
95
20
        cloned->_min = _min;
96
20
        cloned->_min_value_set = _min_value_set;
97
20
        cloned->_contain_null = _contain_null;
98
20
        return cloned;
99
20
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
18
    MinMaxFuncBase* clone() const override {
93
18
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
18
        cloned->_max = _max;
95
18
        cloned->_min = _min;
96
18
        cloned->_min_value_set = _min_value_set;
97
18
        cloned->_contain_null = _contain_null;
98
18
        return cloned;
99
18
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5cloneEv
Line
Count
Source
92
46
    MinMaxFuncBase* clone() const override {
93
46
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
46
        cloned->_max = _max;
95
46
        cloned->_min = _min;
96
46
        cloned->_min_value_set = _min_value_set;
97
46
        cloned->_contain_null = _contain_null;
98
46
        return cloned;
99
46
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5cloneEv
Line
Count
Source
92
10
    MinMaxFuncBase* clone() const override {
93
10
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
10
        cloned->_max = _max;
95
10
        cloned->_min = _min;
96
10
        cloned->_min_value_set = _min_value_set;
97
10
        cloned->_contain_null = _contain_null;
98
10
        return cloned;
99
10
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5cloneEv
Line
Count
Source
92
20
    MinMaxFuncBase* clone() const override {
93
20
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
20
        cloned->_max = _max;
95
20
        cloned->_min = _min;
96
20
        cloned->_min_value_set = _min_value_set;
97
20
        cloned->_contain_null = _contain_null;
98
20
        return cloned;
99
20
    }
_ZNK5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5cloneEv
Line
Count
Source
92
6
    MinMaxFuncBase* clone() const override {
93
6
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
6
        cloned->_max = _max;
95
6
        cloned->_min = _min;
96
6
        cloned->_min_value_set = _min_value_set;
97
6
        cloned->_contain_null = _contain_null;
98
6
        return cloned;
99
6
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
Line
Count
Source
92
3
    MinMaxFuncBase* clone() const override {
93
3
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
3
        cloned->_max = _max;
95
3
        cloned->_min = _min;
96
3
        cloned->_min_value_set = _min_value_set;
97
3
        cloned->_contain_null = _contain_null;
98
3
        return cloned;
99
3
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
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
    }
100
101
4.77k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
101
1
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
4
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
101
367
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
268
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
2.35k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
1.15k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
41
    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
10
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
12
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
107
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
161
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
8
    void* get_max() override { return &_max; }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
163
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
22
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
29
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
44
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
13
    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
13
    void* get_max() override { return &_max; }
102
103
4.81k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
103
1
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
103
4
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
103
353
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
268
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
2.38k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
1.17k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
40
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
103
4
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
103
12
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
106
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
161
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
8
    void* get_min() override { return &_min; }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
159
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
22
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
29
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
53
    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
13
    void* get_min() override { return &_min; }
104
105
1.61k
    Status assign(void* min_data, void* max_data) override {
106
1.61k
        if constexpr (IsStringValue) {
107
79
            _min_value_set = true;
108
79
        }
109
1.61k
        _min = *(T*)min_data;
110
1.61k
        _max = *(T*)max_data;
111
1.61k
        return Status::OK();
112
1.61k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
71
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
71
        _min = *(T*)min_data;
110
71
        _max = *(T*)max_data;
111
71
        return Status::OK();
112
71
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
159
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
159
        _min = *(T*)min_data;
110
159
        _max = *(T*)max_data;
111
159
        return Status::OK();
112
159
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
905
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
905
        _min = *(T*)min_data;
110
905
        _max = *(T*)max_data;
111
905
        return Status::OK();
112
905
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
155
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
155
        _min = *(T*)min_data;
110
155
        _max = *(T*)max_data;
111
155
        return Status::OK();
112
155
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
9
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
9
        _min = *(T*)min_data;
110
9
        _max = *(T*)max_data;
111
9
        return Status::OK();
112
9
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
2
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
2
        _min = *(T*)min_data;
110
2
        _max = *(T*)max_data;
111
2
        return Status::OK();
112
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
71
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
71
        _min = *(T*)min_data;
110
71
        _max = *(T*)max_data;
111
71
        return Status::OK();
112
71
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
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
    }
_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
79
    Status assign(void* min_data, void* max_data) override {
106
79
        if constexpr (IsStringValue) {
107
79
            _min_value_set = true;
108
79
        }
109
79
        _min = *(T*)min_data;
110
79
        _max = *(T*)max_data;
111
79
        return Status::OK();
112
79
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
11
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
11
        _min = *(T*)min_data;
110
11
        _max = *(T*)max_data;
111
11
        return Status::OK();
112
11
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
5
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
5
        _min = *(T*)min_data;
110
5
        _max = *(T*)max_data;
111
5
        return Status::OK();
112
5
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
7
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
7
        _min = *(T*)min_data;
110
7
        _max = *(T*)max_data;
111
7
        return Status::OK();
112
7
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE6assignEPvS7_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
113
114
2.36k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
2
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
180
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
305
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
1.40k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
154
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
8
    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
70
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
122
    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
83
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
10
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
8
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
2
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
115
116
private:
117
2.35k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2.35k
        if constexpr (NeedMin) {
119
2.35k
            f(filter->mutable_min_val(), _min);
120
2.35k
        }
121
2.35k
        if constexpr (NeedMax) {
122
2.35k
            f(filter->mutable_max_val(), _max);
123
2.35k
        }
124
2.35k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
2
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2
        if constexpr (NeedMin) {
119
2
            f(filter->mutable_min_val(), _min);
120
2
        }
121
2
        if constexpr (NeedMax) {
122
2
            f(filter->mutable_max_val(), _max);
123
2
        }
124
2
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7_set_pbIZNS_13get_convertorIaEEDavEUlPNS_12PColumnValueERKaE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
180
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
180
        if constexpr (NeedMin) {
119
180
            f(filter->mutable_min_val(), _min);
120
180
        }
121
180
        if constexpr (NeedMax) {
122
180
            f(filter->mutable_max_val(), _max);
123
180
        }
124
180
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
305
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
305
        if constexpr (NeedMin) {
119
305
            f(filter->mutable_min_val(), _min);
120
305
        }
121
305
        if constexpr (NeedMax) {
122
305
            f(filter->mutable_max_val(), _max);
123
305
        }
124
305
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
1.40k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.40k
        if constexpr (NeedMin) {
119
1.40k
            f(filter->mutable_min_val(), _min);
120
1.40k
        }
121
1.40k
        if constexpr (NeedMax) {
122
1.40k
            f(filter->mutable_max_val(), _max);
123
1.40k
        }
124
1.40k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
154
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
154
        if constexpr (NeedMin) {
119
154
            f(filter->mutable_min_val(), _min);
120
154
        }
121
154
        if constexpr (NeedMax) {
122
154
            f(filter->mutable_max_val(), _max);
123
154
        }
124
154
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_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: _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
70
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
70
        if constexpr (NeedMin) {
119
70
            f(filter->mutable_min_val(), _min);
120
70
        }
121
70
        if constexpr (NeedMax) {
122
70
            f(filter->mutable_max_val(), _max);
123
70
        }
124
70
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
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
    }
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
83
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
83
        if constexpr (NeedMin) {
119
83
            f(filter->mutable_min_val(), _min);
120
83
        }
121
83
        if constexpr (NeedMax) {
122
83
            f(filter->mutable_max_val(), _max);
123
83
        }
124
83
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
10
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
10
        if constexpr (NeedMin) {
119
10
            f(filter->mutable_min_val(), _min);
120
10
        }
121
10
        if constexpr (NeedMax) {
122
10
            f(filter->mutable_max_val(), _max);
123
10
        }
124
10
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
4
        if constexpr (NeedMin) {
119
4
            f(filter->mutable_min_val(), _min);
120
4
        }
121
4
        if constexpr (NeedMax) {
122
4
            f(filter->mutable_max_val(), _max);
123
4
        }
124
4
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
8
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
8
        if constexpr (NeedMin) {
119
8
            f(filter->mutable_min_val(), _min);
120
8
        }
121
8
        if constexpr (NeedMax) {
122
8
            f(filter->mutable_max_val(), _max);
123
8
        }
124
8
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS5_EEDavEUlPNS_12PColumnValueERKS5_E_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE7_set_pbIZNS_13get_convertorIjEEDavEUlPNS_12PColumnValueERKjE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7_set_pbIZNS_13get_convertorIoEEDavEUlPNS_12PColumnValueERKoE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
2
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
2
        if constexpr (NeedMin) {
119
2
            f(filter->mutable_min_val(), _min);
120
2
        }
121
2
        if constexpr (NeedMax) {
122
2
            f(filter->mutable_max_val(), _max);
123
2
        }
124
2
    }
125
126
    void _update_batch_string(const auto& column_string, const uint8_t* __restrict nullmap,
127
227
                              size_t start, size_t size) {
128
11.0k
        for (size_t i = start; i < size; i++) {
129
10.8k
            if (nullmap == nullptr || !nullmap[i]) {
130
10.7k
                if constexpr (NeedMin) {
131
10.7k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
281
                        _min = column_string.get_data_at(i).to_string();
133
281
                        _min_value_set = true;
134
281
                    }
135
10.7k
                }
136
10.7k
                if constexpr (NeedMax) {
137
10.7k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
996
                        _max = column_string.get_data_at(i).to_string();
139
996
                    }
140
10.7k
                }
141
10.7k
            }
142
10.8k
        }
143
227
    }
_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
226
                              size_t start, size_t size) {
128
11.0k
        for (size_t i = start; i < size; i++) {
129
10.8k
            if (nullmap == nullptr || !nullmap[i]) {
130
10.7k
                if constexpr (NeedMin) {
131
10.7k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
280
                        _min = column_string.get_data_at(i).to_string();
133
280
                        _min_value_set = true;
134
280
                    }
135
10.7k
                }
136
10.7k
                if constexpr (NeedMax) {
137
10.7k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
988
                        _max = column_string.get_data_at(i).to_string();
139
988
                    }
140
10.7k
                }
141
10.7k
            }
142
10.8k
        }
143
226
    }
144
145
3.07k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
3.07k
        const auto size = column->size();
147
3.07k
        if constexpr (std::is_same_v<T, std::string>) {
148
108
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
107
            } else {
152
107
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
107
                                     size);
154
107
            }
155
2.97k
        } else {
156
2.97k
            const T* data = (T*)column->get_raw_data().data;
157
4.56M
            for (size_t i = start; i < size; i++) {
158
4.55M
                if constexpr (NeedMin) {
159
4.55M
                    _min = std::min(_min, *(data + i));
160
4.55M
                }
161
4.55M
                if constexpr (NeedMax) {
162
4.55M
                    _max = std::max(_max, *(data + i));
163
4.55M
                }
164
4.55M
            }
165
2.97k
        }
166
3.07k
    }
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
237
    void _update_batch(const ColumnPtr& column, size_t start) {
146
237
        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
237
        } else {
156
237
            const T* data = (T*)column->get_raw_data().data;
157
749
            for (size_t i = start; i < size; i++) {
158
512
                if constexpr (NeedMin) {
159
512
                    _min = std::min(_min, *(data + i));
160
512
                }
161
512
                if constexpr (NeedMax) {
162
512
                    _max = std::max(_max, *(data + i));
163
512
                }
164
512
            }
165
237
        }
166
237
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
2.13k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.13k
        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.13k
        } else {
156
2.13k
            const T* data = (T*)column->get_raw_data().data;
157
4.55M
            for (size_t i = start; i < size; i++) {
158
4.55M
                if constexpr (NeedMin) {
159
4.55M
                    _min = std::min(_min, *(data + i));
160
4.55M
                }
161
4.55M
                if constexpr (NeedMax) {
162
4.55M
                    _max = std::max(_max, *(data + i));
163
4.55M
                }
164
4.55M
            }
165
2.13k
        }
166
2.13k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
160
    void _update_batch(const ColumnPtr& column, size_t start) {
146
160
        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
160
        } else {
156
160
            const T* data = (T*)column->get_raw_data().data;
157
813
            for (size_t i = start; i < size; i++) {
158
653
                if constexpr (NeedMin) {
159
653
                    _min = std::min(_min, *(data + i));
160
653
                }
161
653
                if constexpr (NeedMax) {
162
653
                    _max = std::max(_max, *(data + i));
163
653
                }
164
653
            }
165
160
        }
166
160
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
192
    void _update_batch(const ColumnPtr& column, size_t start) {
146
192
        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
192
        } else {
156
192
            const T* data = (T*)column->get_raw_data().data;
157
669
            for (size_t i = start; i < size; i++) {
158
477
                if constexpr (NeedMin) {
159
477
                    _min = std::min(_min, *(data + i));
160
477
                }
161
477
                if constexpr (NeedMax) {
162
477
                    _max = std::max(_max, *(data + i));
163
477
                }
164
477
            }
165
192
        }
166
192
    }
_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
12
    void _update_batch(const ColumnPtr& column, size_t start) {
146
12
        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
12
        } else {
156
12
            const T* data = (T*)column->get_raw_data().data;
157
26
            for (size_t i = start; i < size; i++) {
158
14
                if constexpr (NeedMin) {
159
14
                    _min = std::min(_min, *(data + i));
160
14
                }
161
14
                if constexpr (NeedMax) {
162
14
                    _max = std::max(_max, *(data + i));
163
14
                }
164
14
            }
165
12
        }
166
12
    }
_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
153
    void _update_batch(const ColumnPtr& column, size_t start) {
146
153
        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
153
        } else {
156
153
            const T* data = (T*)column->get_raw_data().data;
157
473
            for (size_t i = start; i < size; i++) {
158
320
                if constexpr (NeedMin) {
159
320
                    _min = std::min(_min, *(data + i));
160
320
                }
161
320
                if constexpr (NeedMax) {
162
320
                    _max = std::max(_max, *(data + i));
163
320
                }
164
320
            }
165
153
        }
166
153
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
26
    void _update_batch(const ColumnPtr& column, size_t start) {
146
26
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
26
        } else {
156
26
            const T* data = (T*)column->get_raw_data().data;
157
98
            for (size_t i = start; i < size; i++) {
158
72
                if constexpr (NeedMin) {
159
72
                    _min = std::min(_min, *(data + i));
160
72
                }
161
72
                if constexpr (NeedMax) {
162
72
                    _max = std::max(_max, *(data + i));
163
72
                }
164
72
            }
165
26
        }
166
26
    }
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
108
    void _update_batch(const ColumnPtr& column, size_t start) {
146
108
        const auto size = column->size();
147
108
        if constexpr (std::is_same_v<T, std::string>) {
148
108
            if (column->is_column_string64()) {
149
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
1
                                     size);
151
107
            } else {
152
107
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
107
                                     size);
154
107
            }
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
108
    }
_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
12
    void _update_batch(const ColumnPtr& column, size_t start) {
146
12
        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
12
        } else {
156
12
            const T* data = (T*)column->get_raw_data().data;
157
74
            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
12
        }
166
12
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
34
    void _update_batch(const ColumnPtr& column, size_t start) {
146
34
        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
34
        } else {
156
34
            const T* data = (T*)column->get_raw_data().data;
157
79
            for (size_t i = start; i < size; i++) {
158
45
                if constexpr (NeedMin) {
159
45
                    _min = std::min(_min, *(data + i));
160
45
                }
161
45
                if constexpr (NeedMax) {
162
45
                    _max = std::max(_max, *(data + i));
163
45
                }
164
45
            }
165
34
        }
166
34
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
5
    void _update_batch(const ColumnPtr& column, size_t start) {
146
5
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
5
        } else {
156
5
            const T* data = (T*)column->get_raw_data().data;
157
16
            for (size_t i = start; i < size; i++) {
158
11
                if constexpr (NeedMin) {
159
11
                    _min = std::min(_min, *(data + i));
160
11
                }
161
11
                if constexpr (NeedMax) {
162
11
                    _max = std::max(_max, *(data + i));
163
11
                }
164
11
            }
165
5
        }
166
5
    }
167
168
4.92k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
4.92k
        const auto size = column->size();
170
4.92k
        if constexpr (std::is_same_v<T, std::string>) {
171
119
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
119
            } else {
175
119
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
119
                                     start, size);
177
119
            }
178
4.81k
        } else {
179
4.81k
            const T* data = (T*)column->get_raw_data().data;
180
4.08M
            for (size_t i = start; i < size; i++) {
181
4.08M
                if (!nullmap[i]) {
182
4.07M
                    if constexpr (NeedMin) {
183
4.07M
                        _min = std::min(_min, *(data + i));
184
4.07M
                    }
185
4.07M
                    if constexpr (NeedMax) {
186
4.07M
                        _max = std::max(_max, *(data + i));
187
4.07M
                    }
188
4.07M
                }
189
4.08M
            }
190
4.81k
        }
191
4.92k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
1
        } else {
179
1
            const T* data = (T*)column->get_raw_data().data;
180
2
            for (size_t i = start; i < size; i++) {
181
1
                if (!nullmap[i]) {
182
1
                    if constexpr (NeedMin) {
183
1
                        _min = std::min(_min, *(data + i));
184
1
                    }
185
1
                    if constexpr (NeedMax) {
186
1
                        _max = std::max(_max, *(data + i));
187
1
                    }
188
1
                }
189
1
            }
190
1
        }
191
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
31
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
31
        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
31
        } else {
179
31
            const T* data = (T*)column->get_raw_data().data;
180
126
            for (size_t i = start; i < size; i++) {
181
95
                if (!nullmap[i]) {
182
93
                    if constexpr (NeedMin) {
183
93
                        _min = std::min(_min, *(data + i));
184
93
                    }
185
93
                    if constexpr (NeedMax) {
186
93
                        _max = std::max(_max, *(data + i));
187
93
                    }
188
93
                }
189
95
            }
190
31
        }
191
31
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
729
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
729
        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
729
        } else {
179
729
            const T* data = (T*)column->get_raw_data().data;
180
2.62k
            for (size_t i = start; i < size; i++) {
181
1.90k
                if (!nullmap[i]) {
182
1.87k
                    if constexpr (NeedMin) {
183
1.87k
                        _min = std::min(_min, *(data + i));
184
1.87k
                    }
185
1.87k
                    if constexpr (NeedMax) {
186
1.87k
                        _max = std::max(_max, *(data + i));
187
1.87k
                    }
188
1.87k
                }
189
1.90k
            }
190
729
        }
191
729
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
595
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
595
        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
595
        } else {
179
595
            const T* data = (T*)column->get_raw_data().data;
180
3.17k
            for (size_t i = start; i < size; i++) {
181
2.57k
                if (!nullmap[i]) {
182
2.38k
                    if constexpr (NeedMin) {
183
2.38k
                        _min = std::min(_min, *(data + i));
184
2.38k
                    }
185
2.38k
                    if constexpr (NeedMax) {
186
2.38k
                        _max = std::max(_max, *(data + i));
187
2.38k
                    }
188
2.38k
                }
189
2.57k
            }
190
595
        }
191
595
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1.81k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1.81k
        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.81k
        } else {
179
1.81k
            const T* data = (T*)column->get_raw_data().data;
180
3.87M
            for (size_t i = start; i < size; i++) {
181
3.87M
                if (!nullmap[i]) {
182
3.86M
                    if constexpr (NeedMin) {
183
3.86M
                        _min = std::min(_min, *(data + i));
184
3.86M
                    }
185
3.86M
                    if constexpr (NeedMax) {
186
3.86M
                        _max = std::max(_max, *(data + i));
187
3.86M
                    }
188
3.86M
                }
189
3.87M
            }
190
1.81k
        }
191
1.81k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1.07k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1.07k
        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.07k
        } else {
179
1.07k
            const T* data = (T*)column->get_raw_data().data;
180
205k
            for (size_t i = start; i < size; i++) {
181
204k
                if (!nullmap[i]) {
182
203k
                    if constexpr (NeedMin) {
183
203k
                        _min = std::min(_min, *(data + i));
184
203k
                    }
185
203k
                    if constexpr (NeedMax) {
186
203k
                        _max = std::max(_max, *(data + i));
187
203k
                    }
188
203k
                }
189
204k
            }
190
1.07k
        }
191
1.07k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
15
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
15
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
15
        } else {
179
15
            const T* data = (T*)column->get_raw_data().data;
180
30
            for (size_t i = start; i < size; i++) {
181
15
                if (!nullmap[i]) {
182
15
                    if constexpr (NeedMin) {
183
15
                        _min = std::min(_min, *(data + i));
184
15
                    }
185
15
                    if constexpr (NeedMax) {
186
15
                        _max = std::max(_max, *(data + i));
187
15
                    }
188
15
                }
189
15
            }
190
15
        }
191
15
    }
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
29
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
29
        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
29
        } else {
179
29
            const T* data = (T*)column->get_raw_data().data;
180
77
            for (size_t i = start; i < size; i++) {
181
48
                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
48
            }
190
29
        }
191
29
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
17
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
17
        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
17
        } else {
179
17
            const T* data = (T*)column->get_raw_data().data;
180
113
            for (size_t i = start; i < size; i++) {
181
96
                if (!nullmap[i]) {
182
96
                    if constexpr (NeedMin) {
183
96
                        _min = std::min(_min, *(data + i));
184
96
                    }
185
96
                    if constexpr (NeedMax) {
186
96
                        _max = std::max(_max, *(data + i));
187
96
                    }
188
96
                }
189
96
            }
190
17
        }
191
17
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
57
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
57
        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
57
        } else {
179
57
            const T* data = (T*)column->get_raw_data().data;
180
504
            for (size_t i = start; i < size; i++) {
181
447
                if (!nullmap[i]) {
182
397
                    if constexpr (NeedMin) {
183
397
                        _min = std::min(_min, *(data + i));
184
397
                    }
185
397
                    if constexpr (NeedMax) {
186
397
                        _max = std::max(_max, *(data + i));
187
397
                    }
188
397
                }
189
447
            }
190
57
        }
191
57
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
323
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
323
        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
323
        } else {
179
323
            const T* data = (T*)column->get_raw_data().data;
180
781
            for (size_t i = start; i < size; i++) {
181
458
                if (!nullmap[i]) {
182
440
                    if constexpr (NeedMin) {
183
440
                        _min = std::min(_min, *(data + i));
184
440
                    }
185
440
                    if constexpr (NeedMax) {
186
440
                        _max = std::max(_max, *(data + i));
187
440
                    }
188
440
                }
189
458
            }
190
323
        }
191
323
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_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
32
            for (size_t i = start; i < size; i++) {
181
25
                if (!nullmap[i]) {
182
18
                    if constexpr (NeedMin) {
183
18
                        _min = std::min(_min, *(data + i));
184
18
                    }
185
18
                    if constexpr (NeedMax) {
186
18
                        _max = std::max(_max, *(data + i));
187
18
                    }
188
18
                }
189
25
            }
190
7
        }
191
7
    }
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
119
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
119
        const auto size = column->size();
170
119
        if constexpr (std::is_same_v<T, std::string>) {
171
119
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
119
            } else {
175
119
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
119
                                     start, size);
177
119
            }
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
119
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
64
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
64
        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
64
        } else {
179
64
            const T* data = (T*)column->get_raw_data().data;
180
207
            for (size_t i = start; i < size; i++) {
181
143
                if (!nullmap[i]) {
182
89
                    if constexpr (NeedMin) {
183
89
                        _min = std::min(_min, *(data + i));
184
89
                    }
185
89
                    if constexpr (NeedMax) {
186
89
                        _max = std::max(_max, *(data + i));
187
89
                    }
188
89
                }
189
143
            }
190
64
        }
191
64
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
21
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
21
        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
21
        } else {
179
21
            const T* data = (T*)column->get_raw_data().data;
180
46
            for (size_t i = start; i < size; i++) {
181
25
                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
25
            }
190
21
        }
191
21
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
17
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
17
        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
17
        } else {
179
17
            const T* data = (T*)column->get_raw_data().data;
180
60
            for (size_t i = start; i < size; i++) {
181
43
                if (!nullmap[i]) {
182
32
                    if constexpr (NeedMin) {
183
32
                        _min = std::min(_min, *(data + i));
184
32
                    }
185
32
                    if constexpr (NeedMax) {
186
32
                        _max = std::max(_max, *(data + i));
187
32
                    }
188
32
                }
189
43
            }
190
17
        }
191
17
    }
_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
21
            for (size_t i = start; i < size; i++) {
181
18
                if (!nullmap[i]) {
182
18
                    if constexpr (NeedMin) {
183
18
                        _min = std::min(_min, *(data + i));
184
18
                    }
185
18
                    if constexpr (NeedMax) {
186
18
                        _max = std::max(_max, *(data + i));
187
18
                    }
188
18
                }
189
18
            }
190
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
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
528
            for (size_t i = start; i < size; i++) {
181
521
                if (!nullmap[i]) {
182
489
                    if constexpr (NeedMin) {
183
489
                        _min = std::min(_min, *(data + i));
184
489
                    }
185
489
                    if constexpr (NeedMax) {
186
489
                        _max = std::max(_max, *(data + i));
187
489
                    }
188
489
                }
189
521
            }
190
7
        }
191
7
    }
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