Coverage Report

Created: 2026-10-15 15:47

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
17.2k
    MinMaxFuncBase(bool null_aware) : FilterBase(null_aware) {}
33
    virtual void insert_fixed_len(const ColumnPtr& column, size_t start) = 0;
34
    virtual void* get_max() = 0;
35
    virtual void* get_min() = 0;
36
    // assign minmax data
37
    virtual Status assign(void* min_data, void* max_data) = 0;
38
    // merge from other minmax_func
39
    virtual Status merge(MinMaxFuncBase* minmax_func) = 0;
40
    // Deep copy. The returned object shares nothing with this one.
41
    virtual MinMaxFuncBase* clone() const = 0;
42
17.2k
    virtual ~MinMaxFuncBase() = default;
43
44
    virtual void to_pb(PMinMaxFilter* filter) = 0;
45
};
46
47
template <class T, bool NeedMax = true, bool NeedMin = true>
48
class MinMaxNumFunc : public MinMaxFuncBase {
49
public:
50
    static constexpr bool IsStringValue = std::is_same_v<T, std::string>;
51
17.2k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
51
1
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
51
36
    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.11k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
51
8.93k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
51
3.23k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
51
228
    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
21
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
51
40
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
638
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
51
273
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
51
39
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
Line
Count
Source
51
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
51
532
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
51
146
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
51
70
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
51
201
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
51
26
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIjLb1ELb1EEC2Eb
Line
Count
Source
51
10
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIoLb1ELb1EEC2Eb
Line
Count
Source
51
24
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
52
521
    ~MinMaxNumFunc() override = default;
53
54
5.93k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
5.93k
        if (is_column_nullable(*column)) {
56
3.71k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
3.71k
            const auto& col = nullable->get_nested_column_ptr();
58
3.71k
            const auto& nullmap = nullable->get_null_map_data();
59
3.71k
            if (nullable->has_null()) {
60
3.22k
                _update_batch(col, nullmap, start);
61
3.22k
                _contain_null = true;
62
3.22k
            } else {
63
493
                _update_batch(col, start);
64
493
            }
65
3.71k
        } else {
66
2.21k
            _update_batch(column, start);
67
2.21k
        }
68
5.93k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
3
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3
        if (is_column_nullable(*column)) {
56
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
2
            const auto& col = nullable->get_nested_column_ptr();
58
2
            const auto& nullmap = nullable->get_null_map_data();
59
2
            if (nullable->has_null()) {
60
2
                _update_batch(col, nullmap, start);
61
2
                _contain_null = true;
62
2
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
2
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
3
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
589
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
589
        if (is_column_nullable(*column)) {
56
581
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
581
            const auto& col = nullable->get_nested_column_ptr();
58
581
            const auto& nullmap = nullable->get_null_map_data();
59
581
            if (nullable->has_null()) {
60
449
                _update_batch(col, nullmap, start);
61
449
                _contain_null = true;
62
449
            } else {
63
132
                _update_batch(col, start);
64
132
            }
65
581
        } else {
66
8
            _update_batch(column, start);
67
8
        }
68
589
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
215
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
215
        if (is_column_nullable(*column)) {
56
214
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
214
            const auto& col = nullable->get_nested_column_ptr();
58
214
            const auto& nullmap = nullable->get_null_map_data();
59
214
            if (nullable->has_null()) {
60
214
                _update_batch(col, nullmap, start);
61
214
                _contain_null = true;
62
214
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
214
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
215
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
3.51k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
3.51k
        if (is_column_nullable(*column)) {
56
1.90k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1.90k
            const auto& col = nullable->get_nested_column_ptr();
58
1.90k
            const auto& nullmap = nullable->get_null_map_data();
59
1.90k
            if (nullable->has_null()) {
60
1.62k
                _update_batch(col, nullmap, start);
61
1.62k
                _contain_null = true;
62
1.62k
            } else {
63
282
                _update_batch(col, start);
64
282
            }
65
1.90k
        } else {
66
1.61k
            _update_batch(column, start);
67
1.61k
        }
68
3.51k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
777
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
777
        if (is_column_nullable(*column)) {
56
654
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
654
            const auto& col = nullable->get_nested_column_ptr();
58
654
            const auto& nullmap = nullable->get_null_map_data();
59
655
            if (nullable->has_null()) {
60
655
                _update_batch(col, nullmap, start);
61
655
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
654
        } else {
66
123
            _update_batch(column, start);
67
123
        }
68
777
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
142
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
142
        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
135
        } else {
66
135
            _update_batch(column, start);
67
135
        }
68
142
    }
_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
11
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
11
        if (is_column_nullable(*column)) {
56
10
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
10
            const auto& col = nullable->get_nested_column_ptr();
58
10
            const auto& nullmap = nullable->get_null_map_data();
59
10
            if (nullable->has_null()) {
60
3
                _update_batch(col, nullmap, start);
61
3
                _contain_null = true;
62
7
            } else {
63
7
                _update_batch(col, start);
64
7
            }
65
10
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
11
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
34
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
34
        if (is_column_nullable(*column)) {
56
32
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
32
            const auto& col = nullable->get_nested_column_ptr();
58
32
            const auto& nullmap = nullable->get_null_map_data();
59
32
            if (nullable->has_null()) {
60
32
                _update_batch(col, nullmap, start);
61
32
                _contain_null = true;
62
32
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
32
        } else {
66
2
            _update_batch(column, start);
67
2
        }
68
34
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
241
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
241
        if (is_column_nullable(*column)) {
56
44
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
44
            const auto& col = nullable->get_nested_column_ptr();
58
44
            const auto& nullmap = nullable->get_null_map_data();
59
44
            if (nullable->has_null()) {
60
42
                _update_batch(col, nullmap, start);
61
42
                _contain_null = true;
62
42
            } else {
63
2
                _update_batch(col, start);
64
2
            }
65
197
        } else {
66
197
            _update_batch(column, start);
67
197
        }
68
241
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
54
49
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
49
        if (is_column_nullable(*column)) {
56
29
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
29
            const auto& col = nullable->get_nested_column_ptr();
58
29
            const auto& nullmap = nullable->get_null_map_data();
59
29
            if (nullable->has_null()) {
60
29
                _update_batch(col, nullmap, start);
61
29
                _contain_null = true;
62
29
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
29
        } else {
66
20
            _update_batch(column, start);
67
20
        }
68
49
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
23
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
23
        if (is_column_nullable(*column)) {
56
23
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
23
            const auto& col = nullable->get_nested_column_ptr();
58
23
            const auto& nullmap = nullable->get_null_map_data();
59
23
            if (nullable->has_null()) {
60
23
                _update_batch(col, nullmap, start);
61
23
                _contain_null = true;
62
23
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
23
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
23
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
1
        if (is_column_nullable(*column)) {
56
1
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
1
            const auto& col = nullable->get_nested_column_ptr();
58
1
            const auto& nullmap = nullable->get_null_map_data();
59
1
            if (nullable->has_null()) {
60
1
                _update_batch(col, nullmap, start);
61
1
                _contain_null = true;
62
1
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
1
        } else {
66
0
            _update_batch(column, start);
67
0
        }
68
1
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
54
167
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
167
        if (is_column_nullable(*column)) {
56
103
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
103
            const auto& col = nullable->get_nested_column_ptr();
58
103
            const auto& nullmap = nullable->get_null_map_data();
59
103
            if (nullable->has_null()) {
60
59
                _update_batch(col, nullmap, start);
61
59
                _contain_null = true;
62
59
            } else {
63
44
                _update_batch(col, start);
64
44
            }
65
103
        } else {
66
64
            _update_batch(column, start);
67
64
        }
68
167
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
44
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
44
        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
44
            if (nullable->has_null()) {
60
44
                _update_batch(col, nullmap, start);
61
44
                _contain_null = true;
62
18.4E
            } else {
63
18.4E
                _update_batch(col, start);
64
18.4E
            }
65
43
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
44
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
54
41
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
41
        if (is_column_nullable(*column)) {
56
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
40
        } else {
66
40
            _update_batch(column, start);
67
40
        }
68
41
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
54
64
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
64
        if (is_column_nullable(*column)) {
56
56
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
56
            const auto& col = nullable->get_nested_column_ptr();
58
56
            const auto& nullmap = nullable->get_null_map_data();
59
56
            if (nullable->has_null()) {
60
28
                _update_batch(col, nullmap, start);
61
28
                _contain_null = true;
62
28
            } else {
63
28
                _update_batch(col, start);
64
28
            }
65
56
        } else {
66
8
            _update_batch(column, start);
67
8
        }
68
64
    }
_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
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
5
        if (is_column_nullable(*column)) {
56
4
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
4
            const auto& col = nullable->get_nested_column_ptr();
58
4
            const auto& nullmap = nullable->get_null_map_data();
59
4
            if (nullable->has_null()) {
60
4
                _update_batch(col, nullmap, start);
61
4
                _contain_null = true;
62
4
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
4
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
5
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
54
11
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
55
11
        if (is_column_nullable(*column)) {
56
10
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
57
10
            const auto& col = nullable->get_nested_column_ptr();
58
10
            const auto& nullmap = nullable->get_null_map_data();
59
10
            if (nullable->has_null()) {
60
10
                _update_batch(col, nullmap, start);
61
10
                _contain_null = true;
62
10
            } else {
63
0
                _update_batch(col, start);
64
0
            }
65
10
        } else {
66
1
            _update_batch(column, start);
67
1
        }
68
11
    }
69
70
5.54k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
5.54k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
5.54k
        if constexpr (NeedMin) {
73
5.54k
            if constexpr (IsStringValue) {
74
95
                if (other_minmax->_min < _min || !_min_value_set) {
75
30
                    _min = other_minmax->_min;
76
30
                    _min_value_set = true;
77
30
                }
78
5.45k
            } else if (other_minmax->_min < _min) {
79
552
                _min = other_minmax->_min;
80
552
            }
81
5.54k
        }
82
5.54k
        if constexpr (NeedMax) {
83
5.54k
            if (other_minmax->_max > _max) {
84
575
                _max = other_minmax->_max;
85
575
            }
86
5.54k
        }
87
88
5.54k
        _contain_null |= minmax_func->contain_null();
89
5.54k
        return Status::OK();
90
5.54k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_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
64
    Status merge(MinMaxFuncBase* minmax_func) override {
71
64
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
64
        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
64
            } else if (other_minmax->_min < _min) {
79
11
                _min = other_minmax->_min;
80
11
            }
81
64
        }
82
64
        if constexpr (NeedMax) {
83
64
            if (other_minmax->_max > _max) {
84
7
                _max = other_minmax->_max;
85
7
            }
86
64
        }
87
88
64
        _contain_null |= minmax_func->contain_null();
89
64
        return Status::OK();
90
64
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
116
    Status merge(MinMaxFuncBase* minmax_func) override {
71
116
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
116
        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
116
            } else if (other_minmax->_min < _min) {
79
39
                _min = other_minmax->_min;
80
39
            }
81
116
        }
82
116
        if constexpr (NeedMax) {
83
116
            if (other_minmax->_max > _max) {
84
55
                _max = other_minmax->_max;
85
55
            }
86
116
        }
87
88
116
        _contain_null |= minmax_func->contain_null();
89
116
        return Status::OK();
90
116
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
3.67k
    Status merge(MinMaxFuncBase* minmax_func) override {
71
3.67k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
3.67k
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
3.67k
            } else if (other_minmax->_min < _min) {
79
290
                _min = other_minmax->_min;
80
290
            }
81
3.67k
        }
82
3.67k
        if constexpr (NeedMax) {
83
3.67k
            if (other_minmax->_max > _max) {
84
287
                _max = other_minmax->_max;
85
287
            }
86
3.67k
        }
87
88
3.67k
        _contain_null |= minmax_func->contain_null();
89
3.67k
        return Status::OK();
90
3.67k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
965
    Status merge(MinMaxFuncBase* minmax_func) override {
71
965
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
965
        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
965
            } else if (other_minmax->_min < _min) {
79
109
                _min = other_minmax->_min;
80
109
            }
81
965
        }
82
965
        if constexpr (NeedMax) {
83
965
            if (other_minmax->_max > _max) {
84
104
                _max = other_minmax->_max;
85
104
            }
86
965
        }
87
88
965
        _contain_null |= minmax_func->contain_null();
89
965
        return Status::OK();
90
965
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
118
    Status merge(MinMaxFuncBase* minmax_func) override {
71
118
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
118
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
118
            } else if (other_minmax->_min < _min) {
79
10
                _min = other_minmax->_min;
80
10
            }
81
118
        }
82
118
        if constexpr (NeedMax) {
83
118
            if (other_minmax->_max > _max) {
84
11
                _max = other_minmax->_max;
85
11
            }
86
118
        }
87
88
118
        _contain_null |= minmax_func->contain_null();
89
118
        return Status::OK();
90
118
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
3
    Status merge(MinMaxFuncBase* minmax_func) override {
71
3
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
3
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
3
            } else if (other_minmax->_min < _min) {
79
0
                _min = other_minmax->_min;
80
0
            }
81
3
        }
82
3
        if constexpr (NeedMax) {
83
3
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
3
        }
87
88
3
        _contain_null |= minmax_func->contain_null();
89
3
        return Status::OK();
90
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_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
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
257
    Status merge(MinMaxFuncBase* minmax_func) override {
71
257
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
257
        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
257
            } else if (other_minmax->_min < _min) {
79
42
                _min = other_minmax->_min;
80
42
            }
81
257
        }
82
257
        if constexpr (NeedMax) {
83
257
            if (other_minmax->_max > _max) {
84
46
                _max = other_minmax->_max;
85
46
            }
86
257
        }
87
88
257
        _contain_null |= minmax_func->contain_null();
89
257
        return Status::OK();
90
257
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
56
    Status merge(MinMaxFuncBase* minmax_func) override {
71
56
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
56
        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
56
            } else if (other_minmax->_min < _min) {
79
14
                _min = other_minmax->_min;
80
14
            }
81
56
        }
82
56
        if constexpr (NeedMax) {
83
56
            if (other_minmax->_max > _max) {
84
13
                _max = other_minmax->_max;
85
13
            }
86
56
        }
87
88
56
        _contain_null |= minmax_func->contain_null();
89
56
        return Status::OK();
90
56
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_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
0
                _min = other_minmax->_min;
80
0
            }
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
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
95
    Status merge(MinMaxFuncBase* minmax_func) override {
71
95
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
95
        if constexpr (NeedMin) {
73
95
            if constexpr (IsStringValue) {
74
95
                if (other_minmax->_min < _min || !_min_value_set) {
75
30
                    _min = other_minmax->_min;
76
30
                    _min_value_set = true;
77
30
                }
78
            } else if (other_minmax->_min < _min) {
79
                _min = other_minmax->_min;
80
            }
81
95
        }
82
95
        if constexpr (NeedMax) {
83
95
            if (other_minmax->_max > _max) {
84
23
                _max = other_minmax->_max;
85
23
            }
86
95
        }
87
88
95
        _contain_null |= minmax_func->contain_null();
89
95
        return Status::OK();
90
95
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
25
    Status merge(MinMaxFuncBase* minmax_func) override {
71
25
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
25
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
25
            } else if (other_minmax->_min < _min) {
79
12
                _min = other_minmax->_min;
80
12
            }
81
25
        }
82
25
        if constexpr (NeedMax) {
83
25
            if (other_minmax->_max > _max) {
84
8
                _max = other_minmax->_max;
85
8
            }
86
25
        }
87
88
25
        _contain_null |= minmax_func->contain_null();
89
25
        return Status::OK();
90
25
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
37
    Status merge(MinMaxFuncBase* minmax_func) override {
71
37
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
37
        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
37
            } else if (other_minmax->_min < _min) {
79
9
                _min = other_minmax->_min;
80
9
            }
81
37
        }
82
37
        if constexpr (NeedMax) {
83
37
            if (other_minmax->_max > _max) {
84
6
                _max = other_minmax->_max;
85
6
            }
86
37
        }
87
88
37
        _contain_null |= minmax_func->contain_null();
89
37
        return Status::OK();
90
37
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
57
    Status merge(MinMaxFuncBase* minmax_func) override {
71
57
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
57
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
57
            } else if (other_minmax->_min < _min) {
79
15
                _min = other_minmax->_min;
80
15
            }
81
57
        }
82
57
        if constexpr (NeedMax) {
83
57
            if (other_minmax->_max > _max) {
84
15
                _max = other_minmax->_max;
85
15
            }
86
57
        }
87
88
57
        _contain_null |= minmax_func->contain_null();
89
57
        return Status::OK();
90
57
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
70
3
    Status merge(MinMaxFuncBase* minmax_func) override {
71
3
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
72
3
        if constexpr (NeedMin) {
73
            if constexpr (IsStringValue) {
74
                if (other_minmax->_min < _min || !_min_value_set) {
75
                    _min = other_minmax->_min;
76
                    _min_value_set = true;
77
                }
78
3
            } else if (other_minmax->_min < _min) {
79
1
                _min = other_minmax->_min;
80
1
            }
81
3
        }
82
3
        if constexpr (NeedMax) {
83
3
            if (other_minmax->_max > _max) {
84
0
                _max = other_minmax->_max;
85
0
            }
86
3
        }
87
88
3
        _contain_null |= minmax_func->contain_null();
89
3
        return Status::OK();
90
3
    }
91
92
706
    MinMaxFuncBase* clone() const override {
93
706
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
706
        cloned->_max = _max;
95
706
        cloned->_min = _min;
96
706
        cloned->_min_value_set = _min_value_set;
97
706
        cloned->_contain_null = _contain_null;
98
706
        return cloned;
99
706
    }
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
28
    MinMaxFuncBase* clone() const override {
93
28
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
28
        cloned->_max = _max;
95
28
        cloned->_min = _min;
96
28
        cloned->_min_value_set = _min_value_set;
97
28
        cloned->_contain_null = _contain_null;
98
28
        return cloned;
99
28
    }
_ZNK5doris13MinMaxNumFuncIsLb1ELb1EE5cloneEv
Line
Count
Source
92
11
    MinMaxFuncBase* clone() const override {
93
11
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
11
        cloned->_max = _max;
95
11
        cloned->_min = _min;
96
11
        cloned->_min_value_set = _min_value_set;
97
11
        cloned->_contain_null = _contain_null;
98
11
        return cloned;
99
11
    }
_ZNK5doris13MinMaxNumFuncIiLb1ELb1EE5cloneEv
Line
Count
Source
92
447
    MinMaxFuncBase* clone() const override {
93
447
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
447
        cloned->_max = _max;
95
447
        cloned->_min = _min;
96
447
        cloned->_min_value_set = _min_value_set;
97
447
        cloned->_contain_null = _contain_null;
98
447
        return cloned;
99
447
    }
_ZNK5doris13MinMaxNumFuncIlLb1ELb1EE5cloneEv
Line
Count
Source
92
129
    MinMaxFuncBase* clone() const override {
93
129
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
129
        cloned->_max = _max;
95
129
        cloned->_min = _min;
96
129
        cloned->_min_value_set = _min_value_set;
97
129
        cloned->_contain_null = _contain_null;
98
129
        return cloned;
99
129
    }
_ZNK5doris13MinMaxNumFuncInLb1ELb1EE5cloneEv
Line
Count
Source
92
17
    MinMaxFuncBase* clone() const override {
93
17
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
17
        cloned->_max = _max;
95
17
        cloned->_min = _min;
96
17
        cloned->_min_value_set = _min_value_set;
97
17
        cloned->_contain_null = _contain_null;
98
17
        return cloned;
99
17
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIfLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIdLb1ELb1EE5cloneEv
Line
Count
Source
92
2
    MinMaxFuncBase* clone() const override {
93
2
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
2
        cloned->_max = _max;
95
2
        cloned->_min = _min;
96
2
        cloned->_min_value_set = _min_value_set;
97
2
        cloned->_contain_null = _contain_null;
98
2
        return cloned;
99
2
    }
_ZNK5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5cloneEv
Line
Count
Source
92
2
    MinMaxFuncBase* clone() const override {
93
2
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
2
        cloned->_max = _max;
95
2
        cloned->_min = _min;
96
2
        cloned->_min_value_set = _min_value_set;
97
2
        cloned->_contain_null = _contain_null;
98
2
        return cloned;
99
2
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
23
    MinMaxFuncBase* clone() const override {
93
23
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
23
        cloned->_max = _max;
95
23
        cloned->_min = _min;
96
23
        cloned->_min_value_set = _min_value_set;
97
23
        cloned->_contain_null = _contain_null;
98
23
        return cloned;
99
23
    }
_ZNK5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5cloneEv
Line
Count
Source
92
7
    MinMaxFuncBase* clone() const override {
93
7
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
7
        cloned->_max = _max;
95
7
        cloned->_min = _min;
96
7
        cloned->_min_value_set = _min_value_set;
97
7
        cloned->_contain_null = _contain_null;
98
7
        return cloned;
99
7
    }
_ZNK5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5cloneEv
Line
Count
Source
92
1
    MinMaxFuncBase* clone() const override {
93
1
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
1
        cloned->_max = _max;
95
1
        cloned->_min = _min;
96
1
        cloned->_min_value_set = _min_value_set;
97
1
        cloned->_contain_null = _contain_null;
98
1
        return cloned;
99
1
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5cloneEv
Line
Count
Source
92
11
    MinMaxFuncBase* clone() const override {
93
11
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
11
        cloned->_max = _max;
95
11
        cloned->_min = _min;
96
11
        cloned->_min_value_set = _min_value_set;
97
11
        cloned->_contain_null = _contain_null;
98
11
        return cloned;
99
11
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5cloneEv
Line
Count
Source
92
9
    MinMaxFuncBase* clone() const override {
93
9
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
9
        cloned->_max = _max;
95
9
        cloned->_min = _min;
96
9
        cloned->_min_value_set = _min_value_set;
97
9
        cloned->_contain_null = _contain_null;
98
9
        return cloned;
99
9
    }
_ZNK5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5cloneEv
Line
Count
Source
92
5
    MinMaxFuncBase* clone() const override {
93
5
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
5
        cloned->_max = _max;
95
5
        cloned->_min = _min;
96
5
        cloned->_min_value_set = _min_value_set;
97
5
        cloned->_contain_null = _contain_null;
98
5
        return cloned;
99
5
    }
_ZNK5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5cloneEv
Line
Count
Source
92
11
    MinMaxFuncBase* clone() const override {
93
11
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
11
        cloned->_max = _max;
95
11
        cloned->_min = _min;
96
11
        cloned->_min_value_set = _min_value_set;
97
11
        cloned->_contain_null = _contain_null;
98
11
        return cloned;
99
11
    }
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5cloneEv
Unexecuted instantiation: _ZNK5doris13MinMaxNumFuncIjLb1ELb1EE5cloneEv
_ZNK5doris13MinMaxNumFuncIoLb1ELb1EE5cloneEv
Line
Count
Source
92
1
    MinMaxFuncBase* clone() const override {
93
1
        auto* cloned = new MinMaxNumFunc(_null_aware);
94
1
        cloned->_max = _max;
95
1
        cloned->_min = _min;
96
1
        cloned->_min_value_set = _min_value_set;
97
1
        cloned->_contain_null = _contain_null;
98
1
        return cloned;
99
1
    }
100
101
5.50k
    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
791
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
101
481
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
101
2.43k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
101
1.08k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
101
46
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
101
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
101
5
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
6
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
164
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
109
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
9
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
101
1
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
201
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
101
61
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
101
17
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
101
61
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
101
14
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_maxEv
Line
Count
Source
101
6
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_maxEv
Line
Count
Source
101
12
    void* get_max() override { return &_max; }
102
103
5.50k
    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
749
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
103
482
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
103
2.44k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
103
1.10k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
103
45
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
103
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
103
6
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
103
6
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
164
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
103
108
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
103
9
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
103
1
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
103
204
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
103
62
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
103
17
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
103
63
    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
6
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_minEv
Line
Count
Source
103
12
    void* get_min() override { return &_min; }
104
105
1.35k
    Status assign(void* min_data, void* max_data) override {
106
1.35k
        if constexpr (IsStringValue) {
107
73
            _min_value_set = true;
108
73
        }
109
1.35k
        _min = *(T*)min_data;
110
1.35k
        _max = *(T*)max_data;
111
1.35k
        return Status::OK();
112
1.35k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
73
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
73
        _min = *(T*)min_data;
110
73
        _max = *(T*)max_data;
111
73
        return Status::OK();
112
73
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
217
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
217
        _min = *(T*)min_data;
110
217
        _max = *(T*)max_data;
111
217
        return Status::OK();
112
217
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
627
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
627
        _min = *(T*)min_data;
110
627
        _max = *(T*)max_data;
111
627
        return Status::OK();
112
627
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
173
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
173
        _min = *(T*)min_data;
110
173
        _max = *(T*)max_data;
111
173
        return Status::OK();
112
173
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
15
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
15
        _min = *(T*)min_data;
110
15
        _max = *(T*)max_data;
111
15
        return Status::OK();
112
15
    }
_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
73
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
73
        _min = *(T*)min_data;
110
73
        _max = *(T*)max_data;
111
73
        return Status::OK();
112
73
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
105
25
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
25
        _min = *(T*)min_data;
110
25
        _max = *(T*)max_data;
111
25
        return Status::OK();
112
25
    }
_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
73
    Status assign(void* min_data, void* max_data) override {
106
73
        if constexpr (IsStringValue) {
107
73
            _min_value_set = true;
108
73
        }
109
73
        _min = *(T*)min_data;
110
73
        _max = *(T*)max_data;
111
73
        return Status::OK();
112
73
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
19
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
19
        _min = *(T*)min_data;
110
19
        _max = *(T*)max_data;
111
19
        return Status::OK();
112
19
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE6assignEPvS4_
Line
Count
Source
105
5
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
5
        _min = *(T*)min_data;
110
5
        _max = *(T*)max_data;
111
5
        return Status::OK();
112
5
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE6assignEPvS3_
Line
Count
Source
105
37
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
37
        _min = *(T*)min_data;
110
37
        _max = *(T*)max_data;
111
37
        return Status::OK();
112
37
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE6assignEPvS7_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
1
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
1
        _min = *(T*)min_data;
110
1
        _max = *(T*)max_data;
111
1
        return Status::OK();
112
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE6assignEPvS2_
Line
Count
Source
105
3
    Status assign(void* min_data, void* max_data) override {
106
        if constexpr (IsStringValue) {
107
            _min_value_set = true;
108
        }
109
3
        _min = *(T*)min_data;
110
3
        _max = *(T*)max_data;
111
3
        return Status::OK();
112
3
    }
113
114
1.57k
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
72
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
221
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
853
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
178
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
14
    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
72
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
24
    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
70
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
18
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
36
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
114
2
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
115
116
private:
117
1.57k
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
1.57k
        if constexpr (NeedMin) {
119
1.57k
            f(filter->mutable_min_val(), _min);
120
1.57k
        }
121
1.57k
        if constexpr (NeedMax) {
122
1.57k
            f(filter->mutable_max_val(), _max);
123
1.57k
        }
124
1.57k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE7_set_pbIZNS_13get_convertorIhEEDavEUlPNS_12PColumnValueERKhE_EEvPNS_13PMinMaxFilterET_
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7_set_pbIZNS_13get_convertorIaEEDavEUlPNS_12PColumnValueERKaE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
72
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
72
        if constexpr (NeedMin) {
119
72
            f(filter->mutable_min_val(), _min);
120
72
        }
121
72
        if constexpr (NeedMax) {
122
72
            f(filter->mutable_max_val(), _max);
123
72
        }
124
72
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
221
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
221
        if constexpr (NeedMin) {
119
221
            f(filter->mutable_min_val(), _min);
120
221
        }
121
221
        if constexpr (NeedMax) {
122
221
            f(filter->mutable_max_val(), _max);
123
221
        }
124
221
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
852
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
852
        if constexpr (NeedMin) {
119
852
            f(filter->mutable_min_val(), _min);
120
852
        }
121
852
        if constexpr (NeedMax) {
122
852
            f(filter->mutable_max_val(), _max);
123
852
        }
124
852
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
178
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
178
        if constexpr (NeedMin) {
119
178
            f(filter->mutable_min_val(), _min);
120
178
        }
121
178
        if constexpr (NeedMax) {
122
178
            f(filter->mutable_max_val(), _max);
123
178
        }
124
178
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
14
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
14
        if constexpr (NeedMin) {
119
14
            f(filter->mutable_min_val(), _min);
120
14
        }
121
14
        if constexpr (NeedMax) {
122
14
            f(filter->mutable_max_val(), _max);
123
14
        }
124
14
    }
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
72
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
72
        if constexpr (NeedMin) {
119
72
            f(filter->mutable_min_val(), _min);
120
72
        }
121
72
        if constexpr (NeedMax) {
122
72
            f(filter->mutable_max_val(), _max);
123
72
        }
124
72
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
24
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
24
        if constexpr (NeedMin) {
119
24
            f(filter->mutable_min_val(), _min);
120
24
        }
121
24
        if constexpr (NeedMax) {
122
24
            f(filter->mutable_max_val(), _max);
123
24
        }
124
24
    }
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
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_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
18
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
18
        if constexpr (NeedMin) {
119
18
            f(filter->mutable_min_val(), _min);
120
18
        }
121
18
        if constexpr (NeedMax) {
122
18
            f(filter->mutable_max_val(), _max);
123
18
        }
124
18
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
4
        if constexpr (NeedMin) {
119
4
            f(filter->mutable_min_val(), _min);
120
4
        }
121
4
        if constexpr (NeedMax) {
122
4
            f(filter->mutable_max_val(), _max);
123
4
        }
124
4
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
117
36
    void _set_pb(PMinMaxFilter* filter, auto f) {
118
36
        if constexpr (NeedMin) {
119
36
            f(filter->mutable_min_val(), _min);
120
36
        }
121
36
        if constexpr (NeedMax) {
122
36
            f(filter->mutable_max_val(), _max);
123
36
        }
124
36
    }
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
167
                              size_t start, size_t size) {
128
2.48k
        for (size_t i = start; i < size; i++) {
129
2.31k
            if (nullmap == nullptr || !nullmap[i]) {
130
2.28k
                if constexpr (NeedMin) {
131
2.28k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
202
                        _min = column_string.get_data_at(i).to_string();
133
202
                        _min_value_set = true;
134
202
                    }
135
2.28k
                }
136
2.28k
                if constexpr (NeedMax) {
137
2.28k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
475
                        _max = column_string.get_data_at(i).to_string();
139
475
                    }
140
2.28k
                }
141
2.28k
            }
142
2.31k
        }
143
167
    }
_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
166
                              size_t start, size_t size) {
128
2.47k
        for (size_t i = start; i < size; i++) {
129
2.30k
            if (nullmap == nullptr || !nullmap[i]) {
130
2.27k
                if constexpr (NeedMin) {
131
2.27k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
132
201
                        _min = column_string.get_data_at(i).to_string();
133
201
                        _min_value_set = true;
134
201
                    }
135
2.27k
                }
136
2.27k
                if constexpr (NeedMax) {
137
2.27k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
138
467
                        _max = column_string.get_data_at(i).to_string();
139
467
                    }
140
2.27k
                }
141
2.27k
            }
142
2.30k
        }
143
166
    }
144
145
2.71k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2.71k
        const auto size = column->size();
147
2.71k
        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.60k
        } else {
156
2.60k
            const T* data = (T*)column->get_raw_data().data;
157
8.12M
            for (size_t i = start; i < size; i++) {
158
8.12M
                if constexpr (NeedMin) {
159
8.12M
                    _min = std::min(_min, *(data + i));
160
8.12M
                }
161
8.12M
                if constexpr (NeedMax) {
162
8.12M
                    _max = std::max(_max, *(data + i));
163
8.12M
                }
164
8.12M
            }
165
2.60k
        }
166
2.71k
    }
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
142
    void _update_batch(const ColumnPtr& column, size_t start) {
146
142
        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
142
        } else {
156
142
            const T* data = (T*)column->get_raw_data().data;
157
475
            for (size_t i = start; i < size; i++) {
158
333
                if constexpr (NeedMin) {
159
333
                    _min = std::min(_min, *(data + i));
160
333
                }
161
333
                if constexpr (NeedMax) {
162
333
                    _max = std::max(_max, *(data + i));
163
333
                }
164
333
            }
165
142
        }
166
142
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1.89k
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1.89k
        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.89k
        } else {
156
1.89k
            const T* data = (T*)column->get_raw_data().data;
157
8.12M
            for (size_t i = start; i < size; i++) {
158
8.12M
                if constexpr (NeedMin) {
159
8.12M
                    _min = std::min(_min, *(data + i));
160
8.12M
                }
161
8.12M
                if constexpr (NeedMax) {
162
8.12M
                    _max = std::max(_max, *(data + i));
163
8.12M
                }
164
8.12M
            }
165
1.89k
        }
166
1.89k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
123
    void _update_batch(const ColumnPtr& column, size_t start) {
146
123
        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
123
        } else {
156
123
            const T* data = (T*)column->get_raw_data().data;
157
526
            for (size_t i = start; i < size; i++) {
158
403
                if constexpr (NeedMin) {
159
403
                    _min = std::min(_min, *(data + i));
160
403
                }
161
403
                if constexpr (NeedMax) {
162
403
                    _max = std::max(_max, *(data + i));
163
403
                }
164
403
            }
165
123
        }
166
123
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
134
    void _update_batch(const ColumnPtr& column, size_t start) {
146
134
        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
134
        } else {
156
134
            const T* data = (T*)column->get_raw_data().data;
157
339
            for (size_t i = start; i < size; i++) {
158
205
                if constexpr (NeedMin) {
159
205
                    _min = std::min(_min, *(data + i));
160
205
                }
161
205
                if constexpr (NeedMax) {
162
205
                    _max = std::max(_max, *(data + i));
163
205
                }
164
205
            }
165
134
        }
166
134
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
1
    void _update_batch(const ColumnPtr& column, size_t start) {
146
1
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
1
        } else {
156
1
            const T* data = (T*)column->get_raw_data().data;
157
4
            for (size_t i = start; i < size; i++) {
158
3
                if constexpr (NeedMin) {
159
3
                    _min = std::min(_min, *(data + i));
160
3
                }
161
3
                if constexpr (NeedMax) {
162
3
                    _max = std::max(_max, *(data + i));
163
3
                }
164
3
            }
165
1
        }
166
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
145
8
    void _update_batch(const ColumnPtr& column, size_t start) {
146
8
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
8
        } else {
156
8
            const T* data = (T*)column->get_raw_data().data;
157
18
            for (size_t i = start; i < size; i++) {
158
10
                if constexpr (NeedMin) {
159
10
                    _min = std::min(_min, *(data + i));
160
10
                }
161
10
                if constexpr (NeedMax) {
162
10
                    _max = std::max(_max, *(data + i));
163
10
                }
164
10
            }
165
8
        }
166
8
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
2
    void _update_batch(const ColumnPtr& column, size_t start) {
146
2
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
2
        } else {
156
2
            const T* data = (T*)column->get_raw_data().data;
157
8
            for (size_t i = start; i < size; i++) {
158
6
                if constexpr (NeedMin) {
159
6
                    _min = std::min(_min, *(data + i));
160
6
                }
161
6
                if constexpr (NeedMax) {
162
6
                    _max = std::max(_max, *(data + i));
163
6
                }
164
6
            }
165
2
        }
166
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
199
    void _update_batch(const ColumnPtr& column, size_t start) {
146
199
        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
199
        } else {
156
199
            const T* data = (T*)column->get_raw_data().data;
157
593
            for (size_t i = start; i < size; i++) {
158
394
                if constexpr (NeedMin) {
159
394
                    _min = std::min(_min, *(data + i));
160
394
                }
161
394
                if constexpr (NeedMax) {
162
394
                    _max = std::max(_max, *(data + i));
163
394
                }
164
394
            }
165
199
        }
166
199
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
145
20
    void _update_batch(const ColumnPtr& column, size_t start) {
146
20
        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
20
        } else {
156
20
            const T* data = (T*)column->get_raw_data().data;
157
62
            for (size_t i = start; i < size; i++) {
158
42
                if constexpr (NeedMin) {
159
42
                    _min = std::min(_min, *(data + i));
160
42
                }
161
42
                if constexpr (NeedMax) {
162
42
                    _max = std::max(_max, *(data + i));
163
42
                }
164
42
            }
165
20
        }
166
20
    }
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
40
    void _update_batch(const ColumnPtr& column, size_t start) {
146
40
        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
40
        } else {
156
40
            const T* data = (T*)column->get_raw_data().data;
157
148
            for (size_t i = start; i < size; i++) {
158
108
                if constexpr (NeedMin) {
159
108
                    _min = std::min(_min, *(data + i));
160
108
                }
161
108
                if constexpr (NeedMax) {
162
108
                    _max = std::max(_max, *(data + i));
163
108
                }
164
108
            }
165
40
        }
166
40
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
145
36
    void _update_batch(const ColumnPtr& column, size_t start) {
146
36
        const auto size = column->size();
147
        if constexpr (std::is_same_v<T, std::string>) {
148
            if (column->is_column_string64()) {
149
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
150
                                     size);
151
            } else {
152
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
153
                                     size);
154
            }
155
36
        } else {
156
36
            const T* data = (T*)column->get_raw_data().data;
157
82
            for (size_t i = start; i < size; i++) {
158
46
                if constexpr (NeedMin) {
159
46
                    _min = std::min(_min, *(data + i));
160
46
                }
161
46
                if constexpr (NeedMax) {
162
46
                    _max = std::max(_max, *(data + i));
163
46
                }
164
46
            }
165
36
        }
166
36
    }
_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
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
    }
167
168
3.21k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
3.21k
        const auto size = column->size();
170
3.21k
        if constexpr (std::is_same_v<T, std::string>) {
171
59
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
59
            } else {
175
59
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
59
                                     start, size);
177
59
            }
178
3.15k
        } else {
179
3.15k
            const T* data = (T*)column->get_raw_data().data;
180
1.04M
            for (size_t i = start; i < size; i++) {
181
1.04M
                if (!nullmap[i]) {
182
1.04M
                    if constexpr (NeedMin) {
183
1.04M
                        _min = std::min(_min, *(data + i));
184
1.04M
                    }
185
1.04M
                    if constexpr (NeedMax) {
186
1.04M
                        _max = std::max(_max, *(data + i));
187
1.04M
                    }
188
1.04M
                }
189
1.04M
            }
190
3.15k
        }
191
3.21k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
2
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
2
        } else {
179
2
            const T* data = (T*)column->get_raw_data().data;
180
8
            for (size_t i = start; i < size; i++) {
181
6
                if (!nullmap[i]) {
182
6
                    if constexpr (NeedMin) {
183
6
                        _min = std::min(_min, *(data + i));
184
6
                    }
185
6
                    if constexpr (NeedMax) {
186
6
                        _max = std::max(_max, *(data + i));
187
6
                    }
188
6
                }
189
6
            }
190
2
        }
191
2
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
448
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
448
        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
448
        } else {
179
448
            const T* data = (T*)column->get_raw_data().data;
180
1.37k
            for (size_t i = start; i < size; i++) {
181
923
                if (!nullmap[i]) {
182
903
                    if constexpr (NeedMin) {
183
903
                        _min = std::min(_min, *(data + i));
184
903
                    }
185
903
                    if constexpr (NeedMax) {
186
903
                        _max = std::max(_max, *(data + i));
187
903
                    }
188
903
                }
189
923
            }
190
448
        }
191
448
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
214
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
214
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
214
        } else {
179
214
            const T* data = (T*)column->get_raw_data().data;
180
1.08k
            for (size_t i = start; i < size; i++) {
181
868
                if (!nullmap[i]) {
182
747
                    if constexpr (NeedMin) {
183
747
                        _min = std::min(_min, *(data + i));
184
747
                    }
185
747
                    if constexpr (NeedMax) {
186
747
                        _max = std::max(_max, *(data + i));
187
747
                    }
188
747
                }
189
868
            }
190
214
        }
191
214
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1.61k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1.61k
        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.61k
        } else {
179
1.61k
            const T* data = (T*)column->get_raw_data().data;
180
1.03M
            for (size_t i = start; i < size; i++) {
181
1.03M
                if (!nullmap[i]) {
182
1.03M
                    if constexpr (NeedMin) {
183
1.03M
                        _min = std::min(_min, *(data + i));
184
1.03M
                    }
185
1.03M
                    if constexpr (NeedMax) {
186
1.03M
                        _max = std::max(_max, *(data + i));
187
1.03M
                    }
188
1.03M
                }
189
1.03M
            }
190
1.61k
        }
191
1.61k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
650
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
650
        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
650
        } else {
179
650
            const T* data = (T*)column->get_raw_data().data;
180
4.39k
            for (size_t i = start; i < size; i++) {
181
3.74k
                if (!nullmap[i]) {
182
3.13k
                    if constexpr (NeedMin) {
183
3.13k
                        _min = std::min(_min, *(data + i));
184
3.13k
                    }
185
3.13k
                    if constexpr (NeedMax) {
186
3.13k
                        _max = std::max(_max, *(data + i));
187
3.13k
                    }
188
3.13k
                }
189
3.74k
            }
190
650
        }
191
650
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_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
14
            for (size_t i = start; i < size; i++) {
181
7
                if (!nullmap[i]) {
182
7
                    if constexpr (NeedMin) {
183
7
                        _min = std::min(_min, *(data + i));
184
7
                    }
185
7
                    if constexpr (NeedMax) {
186
7
                        _max = std::max(_max, *(data + i));
187
7
                    }
188
7
                }
189
7
            }
190
7
        }
191
7
    }
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
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
15
            for (size_t i = start; i < size; i++) {
181
12
                if (!nullmap[i]) {
182
12
                    if constexpr (NeedMin) {
183
12
                        _min = std::min(_min, *(data + i));
184
12
                    }
185
12
                    if constexpr (NeedMax) {
186
12
                        _max = std::max(_max, *(data + i));
187
12
                    }
188
12
                }
189
12
            }
190
3
        }
191
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
32
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
32
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
32
        } else {
179
32
            const T* data = (T*)column->get_raw_data().data;
180
128
            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
32
        }
191
32
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
42
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
42
        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
42
        } else {
179
42
            const T* data = (T*)column->get_raw_data().data;
180
373
            for (size_t i = start; i < size; i++) {
181
331
                if (!nullmap[i]) {
182
286
                    if constexpr (NeedMin) {
183
286
                        _min = std::min(_min, *(data + i));
184
286
                    }
185
286
                    if constexpr (NeedMax) {
186
286
                        _max = std::max(_max, *(data + i));
187
286
                    }
188
286
                }
189
331
            }
190
42
        }
191
42
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_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
113
            for (size_t i = start; i < size; i++) {
181
84
                if (!nullmap[i]) {
182
75
                    if constexpr (NeedMin) {
183
75
                        _min = std::min(_min, *(data + i));
184
75
                    }
185
75
                    if constexpr (NeedMax) {
186
75
                        _max = std::max(_max, *(data + i));
187
75
                    }
188
75
                }
189
84
            }
190
29
        }
191
29
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
23
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
23
        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
23
        } else {
179
23
            const T* data = (T*)column->get_raw_data().data;
180
81
            for (size_t i = start; i < size; i++) {
181
58
                if (!nullmap[i]) {
182
51
                    if constexpr (NeedMin) {
183
51
                        _min = std::min(_min, *(data + i));
184
51
                    }
185
51
                    if constexpr (NeedMax) {
186
51
                        _max = std::max(_max, *(data + i));
187
51
                    }
188
51
                }
189
58
            }
190
23
        }
191
23
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
1
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
1
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
1
        } else {
179
1
            const T* data = (T*)column->get_raw_data().data;
180
4
            for (size_t i = start; i < size; i++) {
181
3
                if (!nullmap[i]) {
182
3
                    if constexpr (NeedMin) {
183
3
                        _min = std::min(_min, *(data + i));
184
3
                    }
185
3
                    if constexpr (NeedMax) {
186
3
                        _max = std::max(_max, *(data + i));
187
3
                    }
188
3
                }
189
3
            }
190
1
        }
191
1
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
59
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
59
        const auto size = column->size();
170
59
        if constexpr (std::is_same_v<T, std::string>) {
171
59
            if (column->is_column_string64()) {
172
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
0
                                     start, size);
174
59
            } else {
175
59
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
59
                                     start, size);
177
59
            }
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
59
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
43
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
43
        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
43
        } else {
179
43
            const T* data = (T*)column->get_raw_data().data;
180
154
            for (size_t i = start; i < size; i++) {
181
111
                if (!nullmap[i]) {
182
53
                    if constexpr (NeedMin) {
183
53
                        _min = std::min(_min, *(data + i));
184
53
                    }
185
53
                    if constexpr (NeedMax) {
186
53
                        _max = std::max(_max, *(data + i));
187
53
                    }
188
53
                }
189
111
            }
190
43
        }
191
43
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_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
6
            for (size_t i = start; i < size; i++) {
181
5
                if (!nullmap[i]) {
182
4
                    if constexpr (NeedMin) {
183
4
                        _min = std::min(_min, *(data + i));
184
4
                    }
185
4
                    if constexpr (NeedMax) {
186
4
                        _max = std::max(_max, *(data + i));
187
4
                    }
188
4
                }
189
5
            }
190
1
        }
191
1
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
28
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
28
        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
28
        } else {
179
28
            const T* data = (T*)column->get_raw_data().data;
180
122
            for (size_t i = start; i < size; i++) {
181
94
                if (!nullmap[i]) {
182
60
                    if constexpr (NeedMin) {
183
60
                        _min = std::min(_min, *(data + i));
184
60
                    }
185
60
                    if constexpr (NeedMax) {
186
60
                        _max = std::max(_max, *(data + i));
187
60
                    }
188
60
                }
189
94
            }
190
28
        }
191
28
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
3
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
3
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
3
        } else {
179
3
            const T* data = (T*)column->get_raw_data().data;
180
39
            for (size_t i = start; i < size; i++) {
181
36
                if (!nullmap[i]) {
182
36
                    if constexpr (NeedMin) {
183
36
                        _min = std::min(_min, *(data + i));
184
36
                    }
185
36
                    if constexpr (NeedMax) {
186
36
                        _max = std::max(_max, *(data + i));
187
36
                    }
188
36
                }
189
36
            }
190
3
        }
191
3
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
4
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
4
        const auto size = column->size();
170
        if constexpr (std::is_same_v<T, std::string>) {
171
            if (column->is_column_string64()) {
172
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
173
                                     start, size);
174
            } else {
175
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
176
                                     start, size);
177
            }
178
4
        } else {
179
4
            const T* data = (T*)column->get_raw_data().data;
180
48
            for (size_t i = start; i < size; i++) {
181
44
                if (!nullmap[i]) {
182
40
                    if constexpr (NeedMin) {
183
40
                        _min = std::min(_min, *(data + i));
184
40
                    }
185
40
                    if constexpr (NeedMax) {
186
40
                        _max = std::max(_max, *(data + i));
187
40
                    }
188
40
                }
189
44
            }
190
4
        }
191
4
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
168
10
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
169
10
        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
10
        } else {
179
10
            const T* data = (T*)column->get_raw_data().data;
180
579
            for (size_t i = start; i < size; i++) {
181
569
                if (!nullmap[i]) {
182
533
                    if constexpr (NeedMin) {
183
533
                        _min = std::min(_min, *(data + i));
184
533
                    }
185
533
                    if constexpr (NeedMax) {
186
533
                        _max = std::max(_max, *(data + i));
187
533
                    }
188
533
                }
189
569
            }
190
10
        }
191
10
    }
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