Coverage Report

Created: 2026-10-10 07:46

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
20.4k
    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
20.5k
    virtual ~MinMaxFuncBase() = default;
41
42
    virtual void to_pb(PMinMaxFilter* filter) = 0;
43
};
44
45
template <class T, bool NeedMax = true, bool NeedMin = true>
46
class MinMaxNumFunc : public MinMaxFuncBase {
47
public:
48
    static constexpr bool IsStringValue = std::is_same_v<T, std::string>;
49
20.4k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIhLb1ELb1EEC2Eb
Line
Count
Source
49
1
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EEC2Eb
Line
Count
Source
49
18
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIaLb1ELb1EEC2Eb
Line
Count
Source
49
406
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIsLb1ELb1EEC2Eb
Line
Count
Source
49
305
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIiLb1ELb1EEC2Eb
Line
Count
Source
49
12.1k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIlLb1ELb1EEC2Eb
Line
Count
Source
49
2.69k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncInLb1ELb1EEC2Eb
Line
Count
Source
49
138
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIfLb1ELb1EEC2Eb
Line
Count
Source
49
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIdLb1ELb1EEC2Eb
Line
Count
Source
49
10
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EEC2Eb
Line
Count
Source
49
16
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
49
519
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EEC2Eb
Line
Count
Source
49
2.43k
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EEC2Eb
Line
Count
Source
49
12
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EEC2Eb
Line
Count
Source
49
25
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EEC2Eb
Line
Count
Source
49
944
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EEC2Eb
Line
Count
Source
49
18
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EEC2Eb
Line
Count
Source
49
402
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EEC2Eb
Line
Count
Source
49
373
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EEC2Eb
Line
Count
Source
49
26
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIjLb1ELb1EEC2Eb
Line
Count
Source
49
2
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
_ZN5doris13MinMaxNumFuncIoLb1ELb1EEC2Eb
Line
Count
Source
49
26
    MinMaxNumFunc(bool null_aware) : MinMaxFuncBase(null_aware) {}
50
943
    ~MinMaxNumFunc() override = default;
51
52
5.03k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
5.03k
        if (is_column_nullable(*column)) {
54
3.29k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3.29k
            const auto& col = nullable->get_nested_column_ptr();
56
3.29k
            const auto& nullmap = nullable->get_null_map_data();
57
3.29k
            if (nullable->has_null()) {
58
2.50k
                _update_batch(col, nullmap, start);
59
2.50k
                _contain_null = true;
60
2.50k
            } else {
61
796
                _update_batch(col, start);
62
796
            }
63
3.29k
        } else {
64
1.73k
            _update_batch(column, start);
65
1.73k
        }
66
5.03k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
3
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
3
        if (is_column_nullable(*column)) {
54
2
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
2
            const auto& col = nullable->get_nested_column_ptr();
56
2
            const auto& nullmap = nullable->get_null_map_data();
57
2
            if (nullable->has_null()) {
58
2
                _update_batch(col, nullmap, start);
59
2
                _contain_null = true;
60
2
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
2
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
3
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
185
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
185
        if (is_column_nullable(*column)) {
54
172
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
172
            const auto& col = nullable->get_nested_column_ptr();
56
172
            const auto& nullmap = nullable->get_null_map_data();
57
172
            if (nullable->has_null()) {
58
142
                _update_batch(col, nullmap, start);
59
142
                _contain_null = true;
60
142
            } else {
61
30
                _update_batch(col, start);
62
30
            }
63
172
        } else {
64
13
            _update_batch(column, start);
65
13
        }
66
185
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
78
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
78
        if (is_column_nullable(*column)) {
54
77
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
77
            const auto& col = nullable->get_nested_column_ptr();
56
77
            const auto& nullmap = nullable->get_null_map_data();
57
77
            if (nullable->has_null()) {
58
77
                _update_batch(col, nullmap, start);
59
77
                _contain_null = true;
60
77
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
77
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
78
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
2.95k
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
2.95k
        if (is_column_nullable(*column)) {
54
1.68k
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
1.68k
            const auto& col = nullable->get_nested_column_ptr();
56
1.68k
            const auto& nullmap = nullable->get_null_map_data();
57
1.68k
            if (nullable->has_null()) {
58
1.04k
                _update_batch(col, nullmap, start);
59
1.04k
                _contain_null = true;
60
1.04k
            } else {
61
647
                _update_batch(col, start);
62
647
            }
63
1.68k
        } else {
64
1.26k
            _update_batch(column, start);
65
1.26k
        }
66
2.95k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
786
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
786
        if (is_column_nullable(*column)) {
54
708
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
708
            const auto& col = nullable->get_nested_column_ptr();
56
708
            const auto& nullmap = nullable->get_null_map_data();
57
708
            if (nullable->has_null()) {
58
673
                _update_batch(col, nullmap, start);
59
673
                _contain_null = true;
60
673
            } else {
61
35
                _update_batch(col, start);
62
35
            }
63
708
        } else {
64
78
            _update_batch(column, start);
65
78
        }
66
786
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
49
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
49
        if (is_column_nullable(*column)) {
54
7
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
7
            const auto& col = nullable->get_nested_column_ptr();
56
7
            const auto& nullmap = nullable->get_null_map_data();
57
7
            if (nullable->has_null()) {
58
7
                _update_batch(col, nullmap, start);
59
7
                _contain_null = true;
60
7
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
42
        } else {
64
42
            _update_batch(column, start);
65
42
        }
66
49
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
1
        if (is_column_nullable(*column)) {
54
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
0
            const auto& col = nullable->get_nested_column_ptr();
56
0
            const auto& nullmap = nullable->get_null_map_data();
57
0
            if (nullable->has_null()) {
58
0
                _update_batch(col, nullmap, start);
59
0
                _contain_null = true;
60
0
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
1
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
6
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
6
        if (is_column_nullable(*column)) {
54
5
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
5
            const auto& col = nullable->get_nested_column_ptr();
56
5
            const auto& nullmap = nullable->get_null_map_data();
57
5
            if (nullable->has_null()) {
58
0
                _update_batch(col, nullmap, start);
59
0
                _contain_null = true;
60
5
            } else {
61
5
                _update_batch(col, start);
62
5
            }
63
5
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
6
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
5
        if (is_column_nullable(*column)) {
54
3
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3
            const auto& col = nullable->get_nested_column_ptr();
56
3
            const auto& nullmap = nullable->get_null_map_data();
57
3
            if (nullable->has_null()) {
58
3
                _update_batch(col, nullmap, start);
59
3
                _contain_null = true;
60
3
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
3
        } else {
64
2
            _update_batch(column, start);
65
2
        }
66
5
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
52
210
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
210
        if (is_column_nullable(*column)) {
54
24
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
24
            const auto& col = nullable->get_nested_column_ptr();
56
24
            const auto& nullmap = nullable->get_null_map_data();
57
24
            if (nullable->has_null()) {
58
22
                _update_batch(col, nullmap, start);
59
22
                _contain_null = true;
60
22
            } else {
61
2
                _update_batch(col, start);
62
2
            }
63
186
        } else {
64
186
            _update_batch(column, start);
65
186
        }
66
210
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
52
325
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
325
        if (is_column_nullable(*column)) {
54
272
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
272
            const auto& col = nullable->get_nested_column_ptr();
56
272
            const auto& nullmap = nullable->get_null_map_data();
57
273
            if (nullable->has_null()) {
58
273
                _update_batch(col, nullmap, start);
59
273
                _contain_null = true;
60
18.4E
            } else {
61
18.4E
                _update_batch(col, start);
62
18.4E
            }
63
272
        } else {
64
53
            _update_batch(column, start);
65
53
        }
66
325
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
6
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
6
        if (is_column_nullable(*column)) {
54
6
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
6
            const auto& col = nullable->get_nested_column_ptr();
56
6
            const auto& nullmap = nullable->get_null_map_data();
57
6
            if (nullable->has_null()) {
58
6
                _update_batch(col, nullmap, start);
59
6
                _contain_null = true;
60
6
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
6
        } else {
64
0
            _update_batch(column, start);
65
0
        }
66
6
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
17
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
17
        if (is_column_nullable(*column)) {
54
17
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
17
            const auto& col = nullable->get_nested_column_ptr();
56
17
            const auto& nullmap = nullable->get_null_map_data();
57
17
            if (nullable->has_null()) {
58
17
                _update_batch(col, nullmap, start);
59
17
                _contain_null = true;
60
17
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
17
        } else {
64
0
            _update_batch(column, start);
65
0
        }
66
17
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EEm
Line
Count
Source
52
240
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
240
        if (is_column_nullable(*column)) {
54
170
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
170
            const auto& col = nullable->get_nested_column_ptr();
56
170
            const auto& nullmap = nullable->get_null_map_data();
57
170
            if (nullable->has_null()) {
58
116
                _update_batch(col, nullmap, start);
59
116
                _contain_null = true;
60
116
            } else {
61
54
                _update_batch(col, start);
62
54
            }
63
170
        } else {
64
70
            _update_batch(column, start);
65
70
        }
66
240
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
52
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
5
        if (is_column_nullable(*column)) {
54
4
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
4
            const auto& col = nullable->get_nested_column_ptr();
56
4
            const auto& nullmap = nullable->get_null_map_data();
57
4
            if (nullable->has_null()) {
58
4
                _update_batch(col, nullmap, start);
59
4
                _contain_null = true;
60
4
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
4
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
5
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
52
32
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
32
        if (is_column_nullable(*column)) {
54
21
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
21
            const auto& col = nullable->get_nested_column_ptr();
56
21
            const auto& nullmap = nullable->get_null_map_data();
57
21
            if (nullable->has_null()) {
58
21
                _update_batch(col, nullmap, start);
59
21
                _contain_null = true;
60
21
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
21
        } else {
64
11
            _update_batch(column, start);
65
11
        }
66
32
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
52
128
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
128
        if (is_column_nullable(*column)) {
54
117
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
117
            const auto& col = nullable->get_nested_column_ptr();
56
117
            const auto& nullmap = nullable->get_null_map_data();
57
117
            if (nullable->has_null()) {
58
93
                _update_batch(col, nullmap, start);
59
93
                _contain_null = true;
60
93
            } else {
61
24
                _update_batch(col, start);
62
24
            }
63
117
        } else {
64
11
            _update_batch(column, start);
65
11
        }
66
128
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
52
4
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
4
        if (is_column_nullable(*column)) {
54
3
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3
            const auto& col = nullable->get_nested_column_ptr();
56
3
            const auto& nullmap = nullable->get_null_map_data();
57
3
            if (nullable->has_null()) {
58
3
                _update_batch(col, nullmap, start);
59
3
                _contain_null = true;
60
3
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
3
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
4
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
1
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
1
        if (is_column_nullable(*column)) {
54
0
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
0
            const auto& col = nullable->get_nested_column_ptr();
56
0
            const auto& nullmap = nullable->get_null_map_data();
57
0
            if (nullable->has_null()) {
58
0
                _update_batch(col, nullmap, start);
59
0
                _contain_null = true;
60
0
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
1
        } else {
64
1
            _update_batch(column, start);
65
1
        }
66
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE16insert_fixed_lenERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
52
5
    void insert_fixed_len(const ColumnPtr& column, size_t start) override {
53
5
        if (is_column_nullable(*column)) {
54
3
            const auto* nullable = assert_cast<const ColumnNullable*>(column.get());
55
3
            const auto& col = nullable->get_nested_column_ptr();
56
3
            const auto& nullmap = nullable->get_null_map_data();
57
3
            if (nullable->has_null()) {
58
3
                _update_batch(col, nullmap, start);
59
3
                _contain_null = true;
60
3
            } else {
61
0
                _update_batch(col, start);
62
0
            }
63
3
        } else {
64
2
            _update_batch(column, start);
65
2
        }
66
5
    }
67
68
11.6k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
11.6k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
11.6k
        if constexpr (NeedMin) {
71
11.6k
            if constexpr (IsStringValue) {
72
578
                if (other_minmax->_min < _min || !_min_value_set) {
73
38
                    _min = other_minmax->_min;
74
38
                    _min_value_set = true;
75
38
                }
76
11.0k
            } else if (other_minmax->_min < _min) {
77
833
                _min = other_minmax->_min;
78
833
            }
79
11.6k
        }
80
11.6k
        if constexpr (NeedMax) {
81
11.6k
            if (other_minmax->_max > _max) {
82
856
                _max = other_minmax->_max;
83
856
            }
84
11.6k
        }
85
86
11.6k
        _contain_null |= minmax_func->contain_null();
87
11.6k
        return Status::OK();
88
11.6k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
30
    Status merge(MinMaxFuncBase* minmax_func) override {
69
30
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
30
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
30
            } else if (other_minmax->_min < _min) {
77
3
                _min = other_minmax->_min;
78
3
            }
79
30
        }
80
30
        if constexpr (NeedMax) {
81
30
            if (other_minmax->_max > _max) {
82
1
                _max = other_minmax->_max;
83
1
            }
84
30
        }
85
86
30
        _contain_null |= minmax_func->contain_null();
87
30
        return Status::OK();
88
30
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
36
    Status merge(MinMaxFuncBase* minmax_func) override {
69
36
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
36
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
36
            } else if (other_minmax->_min < _min) {
77
6
                _min = other_minmax->_min;
78
6
            }
79
36
        }
80
36
        if constexpr (NeedMax) {
81
36
            if (other_minmax->_max > _max) {
82
6
                _max = other_minmax->_max;
83
6
            }
84
36
        }
85
86
36
        _contain_null |= minmax_func->contain_null();
87
36
        return Status::OK();
88
36
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
7.01k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
7.01k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
7.01k
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
7.01k
            } else if (other_minmax->_min < _min) {
77
537
                _min = other_minmax->_min;
78
537
            }
79
7.01k
        }
80
7.01k
        if constexpr (NeedMax) {
81
7.01k
            if (other_minmax->_max > _max) {
82
548
                _max = other_minmax->_max;
83
548
            }
84
7.01k
        }
85
86
7.01k
        _contain_null |= minmax_func->contain_null();
87
7.01k
        return Status::OK();
88
7.01k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
1.02k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
1.02k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
1.02k
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
1.02k
            } else if (other_minmax->_min < _min) {
77
99
                _min = other_minmax->_min;
78
99
            }
79
1.02k
        }
80
1.02k
        if constexpr (NeedMax) {
81
1.02k
            if (other_minmax->_max > _max) {
82
108
                _max = other_minmax->_max;
83
108
            }
84
1.02k
        }
85
86
1.02k
        _contain_null |= minmax_func->contain_null();
87
1.02k
        return Status::OK();
88
1.02k
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
79
    Status merge(MinMaxFuncBase* minmax_func) override {
69
79
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
79
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
79
            } else if (other_minmax->_min < _min) {
77
8
                _min = other_minmax->_min;
78
8
            }
79
79
        }
80
79
        if constexpr (NeedMax) {
81
79
            if (other_minmax->_max > _max) {
82
6
                _max = other_minmax->_max;
83
6
            }
84
79
        }
85
86
79
        _contain_null |= minmax_func->contain_null();
87
79
        return Status::OK();
88
79
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIdLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
3
    Status merge(MinMaxFuncBase* minmax_func) override {
69
3
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
3
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
3
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
3
        }
80
3
        if constexpr (NeedMax) {
81
3
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
3
        }
85
86
3
        _contain_null |= minmax_func->contain_null();
87
3
        return Status::OK();
88
3
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
225
    Status merge(MinMaxFuncBase* minmax_func) override {
69
225
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
225
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
225
            } else if (other_minmax->_min < _min) {
77
38
                _min = other_minmax->_min;
78
38
            }
79
225
        }
80
225
        if constexpr (NeedMax) {
81
225
            if (other_minmax->_max > _max) {
82
44
                _max = other_minmax->_max;
83
44
            }
84
225
        }
85
86
225
        _contain_null |= minmax_func->contain_null();
87
225
        return Status::OK();
88
225
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
2.05k
    Status merge(MinMaxFuncBase* minmax_func) override {
69
2.05k
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
2.05k
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
2.05k
            } else if (other_minmax->_min < _min) {
77
115
                _min = other_minmax->_min;
78
115
            }
79
2.05k
        }
80
2.05k
        if constexpr (NeedMax) {
81
2.05k
            if (other_minmax->_max > _max) {
82
105
                _max = other_minmax->_max;
83
105
            }
84
2.05k
        }
85
86
2.05k
        _contain_null |= minmax_func->contain_null();
87
2.05k
        return Status::OK();
88
2.05k
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
7
    Status merge(MinMaxFuncBase* minmax_func) override {
69
7
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
7
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
7
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
7
        }
80
7
        if constexpr (NeedMax) {
81
7
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
7
        }
85
86
7
        _contain_null |= minmax_func->contain_null();
87
7
        return Status::OK();
88
7
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
15
    Status merge(MinMaxFuncBase* minmax_func) override {
69
15
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
15
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
15
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
15
        }
80
15
        if constexpr (NeedMax) {
81
15
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
15
        }
85
86
15
        _contain_null |= minmax_func->contain_null();
87
15
        return Status::OK();
88
15
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
578
    Status merge(MinMaxFuncBase* minmax_func) override {
69
578
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
578
        if constexpr (NeedMin) {
71
578
            if constexpr (IsStringValue) {
72
578
                if (other_minmax->_min < _min || !_min_value_set) {
73
38
                    _min = other_minmax->_min;
74
38
                    _min_value_set = true;
75
38
                }
76
            } else if (other_minmax->_min < _min) {
77
                _min = other_minmax->_min;
78
            }
79
578
        }
80
578
        if constexpr (NeedMax) {
81
578
            if (other_minmax->_max > _max) {
82
24
                _max = other_minmax->_max;
83
24
            }
84
578
        }
85
86
578
        _contain_null |= minmax_func->contain_null();
87
578
        return Status::OK();
88
578
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
3
    Status merge(MinMaxFuncBase* minmax_func) override {
69
3
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
3
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
3
            } else if (other_minmax->_min < _min) {
77
0
                _min = other_minmax->_min;
78
0
            }
79
3
        }
80
3
        if constexpr (NeedMax) {
81
3
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
3
        }
85
86
3
        _contain_null |= minmax_func->contain_null();
87
3
        return Status::OK();
88
3
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
311
    Status merge(MinMaxFuncBase* minmax_func) override {
69
311
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
311
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
311
            } else if (other_minmax->_min < _min) {
77
3
                _min = other_minmax->_min;
78
3
            }
79
311
        }
80
311
        if constexpr (NeedMax) {
81
311
            if (other_minmax->_max > _max) {
82
1
                _max = other_minmax->_max;
83
1
            }
84
311
        }
85
86
311
        _contain_null |= minmax_func->contain_null();
87
311
        return Status::OK();
88
311
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
267
    Status merge(MinMaxFuncBase* minmax_func) override {
69
267
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
267
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
267
            } else if (other_minmax->_min < _min) {
77
23
                _min = other_minmax->_min;
78
23
            }
79
267
        }
80
267
        if constexpr (NeedMax) {
81
267
            if (other_minmax->_max > _max) {
82
13
                _max = other_minmax->_max;
83
13
            }
84
267
        }
85
86
267
        _contain_null |= minmax_func->contain_null();
87
267
        return Status::OK();
88
267
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE5mergeEPNS_14MinMaxFuncBaseE
Line
Count
Source
68
16
    Status merge(MinMaxFuncBase* minmax_func) override {
69
16
        auto* other_minmax = static_cast<MinMaxNumFunc<T>*>(minmax_func);
70
16
        if constexpr (NeedMin) {
71
            if constexpr (IsStringValue) {
72
                if (other_minmax->_min < _min || !_min_value_set) {
73
                    _min = other_minmax->_min;
74
                    _min_value_set = true;
75
                }
76
16
            } else if (other_minmax->_min < _min) {
77
1
                _min = other_minmax->_min;
78
1
            }
79
16
        }
80
16
        if constexpr (NeedMax) {
81
16
            if (other_minmax->_max > _max) {
82
0
                _max = other_minmax->_max;
83
0
            }
84
16
        }
85
86
16
        _contain_null |= minmax_func->contain_null();
87
16
        return Status::OK();
88
16
    }
89
90
4.24k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_maxEv
Line
Count
Source
90
1
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
10
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_maxEv
Line
Count
Source
90
188
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_maxEv
Line
Count
Source
90
122
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_maxEv
Line
Count
Source
90
2.43k
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_maxEv
Line
Count
Source
90
829
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_maxEv
Line
Count
Source
90
28
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_maxEv
Line
Count
Source
90
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_maxEv
Line
Count
Source
90
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
10
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
140
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
195
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
3
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_maxEv
Line
Count
Source
90
5
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
152
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_maxEv
Line
Count
Source
90
10
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_maxEv
Line
Count
Source
90
49
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_maxEv
Line
Count
Source
90
45
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_maxEv
Line
Count
Source
90
14
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_maxEv
Line
Count
Source
90
2
    void* get_max() override { return &_max; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_maxEv
Line
Count
Source
90
6
    void* get_max() override { return &_max; }
91
92
4.27k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE7get_minEv
Line
Count
Source
92
1
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE7get_minEv
Line
Count
Source
92
10
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE7get_minEv
Line
Count
Source
92
189
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7get_minEv
Line
Count
Source
92
122
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7get_minEv
Line
Count
Source
92
2.44k
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7get_minEv
Line
Count
Source
92
827
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7get_minEv
Line
Count
Source
92
28
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE7get_minEv
Line
Count
Source
92
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7get_minEv
Line
Count
Source
92
3
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE7get_minEv
Line
Count
Source
92
10
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
92
140
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7get_minEv
Line
Count
Source
92
196
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE7get_minEv
Line
Count
Source
92
3
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE7get_minEv
Line
Count
Source
92
5
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE7get_minEv
Line
Count
Source
92
159
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7get_minEv
Line
Count
Source
92
10
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7get_minEv
Line
Count
Source
92
49
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7get_minEv
Line
Count
Source
92
49
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE7get_minEv
Line
Count
Source
92
14
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE7get_minEv
Line
Count
Source
92
2
    void* get_min() override { return &_min; }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE7get_minEv
Line
Count
Source
92
6
    void* get_min() override { return &_min; }
93
94
1.29k
    Status assign(void* min_data, void* max_data) override {
95
1.29k
        if constexpr (IsStringValue) {
96
71
            _min_value_set = true;
97
71
        }
98
1.29k
        _min = *(T*)min_data;
99
1.29k
        _max = *(T*)max_data;
100
1.29k
        return Status::OK();
101
1.29k
    }
_ZN5doris13MinMaxNumFuncIhLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
7
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
7
        _min = *(T*)min_data;
99
7
        _max = *(T*)max_data;
100
7
        return Status::OK();
101
7
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
62
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
62
        _min = *(T*)min_data;
99
62
        _max = *(T*)max_data;
100
62
        return Status::OK();
101
62
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
805
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
805
        _min = *(T*)min_data;
99
805
        _max = *(T*)max_data;
100
805
        return Status::OK();
101
805
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
129
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
129
        _min = *(T*)min_data;
99
129
        _max = *(T*)max_data;
100
129
        return Status::OK();
101
129
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
11
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
11
        _min = *(T*)min_data;
99
11
        _max = *(T*)max_data;
100
11
        return Status::OK();
101
11
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
3
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
3
        _min = *(T*)min_data;
99
3
        _max = *(T*)max_data;
100
3
        return Status::OK();
101
3
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
2
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
2
        _min = *(T*)min_data;
99
2
        _max = *(T*)max_data;
100
2
        return Status::OK();
101
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
94
55
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
55
        _min = *(T*)min_data;
99
55
        _max = *(T*)max_data;
100
55
        return Status::OK();
101
55
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE6assignEPvS5_
Line
Count
Source
94
109
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
109
        _min = *(T*)min_data;
99
109
        _max = *(T*)max_data;
100
109
        return Status::OK();
101
109
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE6assignEPvS3_
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE6assignEPvS8_
Line
Count
Source
94
71
    Status assign(void* min_data, void* max_data) override {
95
71
        if constexpr (IsStringValue) {
96
71
            _min_value_set = true;
97
71
        }
98
71
        _min = *(T*)min_data;
99
71
        _max = *(T*)max_data;
100
71
        return Status::OK();
101
71
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE6assignEPvS4_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE6assignEPvS4_
Line
Count
Source
94
5
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
5
        _min = *(T*)min_data;
99
5
        _max = *(T*)max_data;
100
5
        return Status::OK();
101
5
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE6assignEPvS3_
Line
Count
Source
94
25
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
25
        _min = *(T*)min_data;
99
25
        _max = *(T*)max_data;
100
25
        return Status::OK();
101
25
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE6assignEPvS7_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
1
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
1
        _min = *(T*)min_data;
99
1
        _max = *(T*)max_data;
100
1
        return Status::OK();
101
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE6assignEPvS2_
Line
Count
Source
94
3
    Status assign(void* min_data, void* max_data) override {
95
        if constexpr (IsStringValue) {
96
            _min_value_set = true;
97
        }
98
3
        _min = *(T*)min_data;
99
3
        _max = *(T*)max_data;
100
3
        return Status::OK();
101
3
    }
102
103
1.47k
    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
103
6
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
64
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
994
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
132
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
10
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
7
    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
103
56
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
108
    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
103
71
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
4
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE5to_pbEPNS_13PMinMaxFilterE
Line
Count
Source
103
24
    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
103
2
    void to_pb(PMinMaxFilter* filter) override { _set_pb(filter, get_convertor<T>()); }
104
105
private:
106
1.47k
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
1.47k
        if constexpr (NeedMin) {
108
1.47k
            f(filter->mutable_min_val(), _min);
109
1.47k
        }
110
1.47k
        if constexpr (NeedMax) {
111
1.47k
            f(filter->mutable_max_val(), _max);
112
1.47k
        }
113
1.47k
    }
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
106
6
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
6
        if constexpr (NeedMin) {
108
6
            f(filter->mutable_min_val(), _min);
109
6
        }
110
6
        if constexpr (NeedMax) {
111
6
            f(filter->mutable_max_val(), _max);
112
6
        }
113
6
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE7_set_pbIZNS_13get_convertorIsEEDavEUlPNS_12PColumnValueERKsE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
64
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
64
        if constexpr (NeedMin) {
108
64
            f(filter->mutable_min_val(), _min);
109
64
        }
110
64
        if constexpr (NeedMax) {
111
64
            f(filter->mutable_max_val(), _max);
112
64
        }
113
64
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE7_set_pbIZNS_13get_convertorIiEEDavEUlPNS_12PColumnValueERKiE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
994
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
994
        if constexpr (NeedMin) {
108
994
            f(filter->mutable_min_val(), _min);
109
994
        }
110
994
        if constexpr (NeedMax) {
111
994
            f(filter->mutable_max_val(), _max);
112
994
        }
113
994
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE7_set_pbIZNS_13get_convertorIlEEDavEUlPNS_12PColumnValueERKlE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
132
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
132
        if constexpr (NeedMin) {
108
132
            f(filter->mutable_min_val(), _min);
109
132
        }
110
132
        if constexpr (NeedMax) {
111
132
            f(filter->mutable_max_val(), _max);
112
132
        }
113
132
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE7_set_pbIZNS_13get_convertorInEEDavEUlPNS_12PColumnValueERKnE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
10
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
10
        if constexpr (NeedMin) {
108
10
            f(filter->mutable_min_val(), _min);
109
10
        }
110
10
        if constexpr (NeedMax) {
111
10
            f(filter->mutable_max_val(), _max);
112
10
        }
113
10
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE7_set_pbIZNS_13get_convertorIfEEDavEUlPNS_12PColumnValueERKfE_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE7_set_pbIZNS_13get_convertorIdEEDavEUlPNS_12PColumnValueERKdE_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
7
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
7
        if constexpr (NeedMin) {
108
7
            f(filter->mutable_min_val(), _min);
109
7
        }
110
7
        if constexpr (NeedMax) {
111
7
            f(filter->mutable_max_val(), _max);
112
7
        }
113
7
    }
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
106
56
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
56
        if constexpr (NeedMin) {
108
56
            f(filter->mutable_min_val(), _min);
109
56
        }
110
56
        if constexpr (NeedMax) {
111
56
            f(filter->mutable_max_val(), _max);
112
56
        }
113
56
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE7_set_pbIZNS_13get_convertorIS3_EEDavEUlPNS_12PColumnValueERKS3_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
108
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
108
        if constexpr (NeedMin) {
108
108
            f(filter->mutable_min_val(), _min);
109
108
        }
110
108
        if constexpr (NeedMax) {
111
108
            f(filter->mutable_max_val(), _max);
112
108
        }
113
108
    }
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
106
71
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
71
        if constexpr (NeedMin) {
108
71
            f(filter->mutable_min_val(), _min);
109
71
        }
110
71
        if constexpr (NeedMax) {
111
71
            f(filter->mutable_max_val(), _max);
112
71
        }
113
71
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE7_set_pbIZNS_13get_convertorIS2_EEDavEUlPNS_12PColumnValueERKS2_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
4
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
4
        if constexpr (NeedMin) {
108
4
            f(filter->mutable_min_val(), _min);
109
4
        }
110
4
        if constexpr (NeedMax) {
111
4
            f(filter->mutable_max_val(), _max);
112
4
        }
113
4
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE7_set_pbIZNS_13get_convertorIS1_EEDavEUlPNS_12PColumnValueERKS1_E_EEvPNS_13PMinMaxFilterET_
Line
Count
Source
106
24
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
24
        if constexpr (NeedMin) {
108
24
            f(filter->mutable_min_val(), _min);
109
24
        }
110
24
        if constexpr (NeedMax) {
111
24
            f(filter->mutable_max_val(), _max);
112
24
        }
113
24
    }
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
106
2
    void _set_pb(PMinMaxFilter* filter, auto f) {
107
2
        if constexpr (NeedMin) {
108
2
            f(filter->mutable_min_val(), _min);
109
2
        }
110
2
        if constexpr (NeedMax) {
111
2
            f(filter->mutable_max_val(), _max);
112
2
        }
113
2
    }
114
115
    void _update_batch_string(const auto& column_string, const uint8_t* __restrict nullmap,
116
240
                              size_t start, size_t size) {
117
3.29k
        for (size_t i = start; i < size; i++) {
118
3.05k
            if (nullmap == nullptr || !nullmap[i]) {
119
2.93k
                if constexpr (NeedMin) {
120
2.93k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
355
                        _min = column_string.get_data_at(i).to_string();
122
355
                        _min_value_set = true;
123
355
                    }
124
2.93k
                }
125
2.93k
                if constexpr (NeedMax) {
126
2.93k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
640
                        _max = column_string.get_data_at(i).to_string();
128
640
                    }
129
2.93k
                }
130
2.93k
            }
131
3.05k
        }
132
240
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE20_update_batch_stringINS_9ColumnStrImEEEEvRKT_PKhmm
Line
Count
Source
116
1
                              size_t start, size_t size) {
117
9
        for (size_t i = start; i < size; i++) {
118
8
            if (nullmap == nullptr || !nullmap[i]) {
119
8
                if constexpr (NeedMin) {
120
8
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
1
                        _min = column_string.get_data_at(i).to_string();
122
1
                        _min_value_set = true;
123
1
                    }
124
8
                }
125
8
                if constexpr (NeedMax) {
126
8
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
8
                        _max = column_string.get_data_at(i).to_string();
128
8
                    }
129
8
                }
130
8
            }
131
8
        }
132
1
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE20_update_batch_stringINS_9ColumnStrIjEEEEvRKT_PKhmm
Line
Count
Source
116
239
                              size_t start, size_t size) {
117
3.28k
        for (size_t i = start; i < size; i++) {
118
3.04k
            if (nullmap == nullptr || !nullmap[i]) {
119
2.92k
                if constexpr (NeedMin) {
120
2.92k
                    if (column_string.get_data_at(i) < StringRef(_min) || !_min_value_set) {
121
354
                        _min = column_string.get_data_at(i).to_string();
122
354
                        _min_value_set = true;
123
354
                    }
124
2.92k
                }
125
2.92k
                if constexpr (NeedMax) {
126
2.92k
                    if (column_string.get_data_at(i) > StringRef(_max)) {
127
632
                        _max = column_string.get_data_at(i).to_string();
128
632
                    }
129
2.92k
                }
130
2.92k
            }
131
3.04k
        }
132
239
    }
133
134
2.54k
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2.54k
        const auto size = column->size();
136
2.54k
        if constexpr (std::is_same_v<T, std::string>) {
137
124
            if (column->is_column_string64()) {
138
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
1
                                     size);
140
123
            } else {
141
123
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
123
                                     size);
143
123
            }
144
2.41k
        } else {
145
2.41k
            const T* data = (T*)column->get_raw_data().data;
146
596k
            for (size_t i = start; i < size; i++) {
147
594k
                if constexpr (NeedMin) {
148
594k
                    _min = std::min(_min, *(data + i));
149
594k
                }
150
594k
                if constexpr (NeedMax) {
151
594k
                    _max = std::max(_max, *(data + i));
152
594k
                }
153
594k
            }
154
2.41k
        }
155
2.54k
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIhLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
_ZN5doris13MinMaxNumFuncINS_14DecimalV2ValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
45
    void _update_batch(const ColumnPtr& column, size_t start) {
135
45
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
45
        } else {
145
45
            const T* data = (T*)column->get_raw_data().data;
146
183
            for (size_t i = start; i < size; i++) {
147
138
                if constexpr (NeedMin) {
148
138
                    _min = std::min(_min, *(data + i));
149
138
                }
150
138
                if constexpr (NeedMax) {
151
138
                    _max = std::max(_max, *(data + i));
152
138
                }
153
138
            }
154
45
        }
155
45
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1.91k
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1.91k
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1.91k
        } else {
145
1.91k
            const T* data = (T*)column->get_raw_data().data;
146
594k
            for (size_t i = start; i < size; i++) {
147
592k
                if constexpr (NeedMin) {
148
592k
                    _min = std::min(_min, *(data + i));
149
592k
                }
150
592k
                if constexpr (NeedMax) {
151
592k
                    _max = std::max(_max, *(data + i));
152
592k
                }
153
592k
            }
154
1.91k
        }
155
1.91k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
115
    void _update_batch(const ColumnPtr& column, size_t start) {
135
115
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
115
        } else {
145
115
            const T* data = (T*)column->get_raw_data().data;
146
977
            for (size_t i = start; i < size; i++) {
147
862
                if constexpr (NeedMin) {
148
862
                    _min = std::min(_min, *(data + i));
149
862
                }
150
862
                if constexpr (NeedMax) {
151
862
                    _max = std::max(_max, *(data + i));
152
862
                }
153
862
            }
154
115
        }
155
115
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
42
    void _update_batch(const ColumnPtr& column, size_t start) {
135
42
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
42
        } else {
145
42
            const T* data = (T*)column->get_raw_data().data;
146
94
            for (size_t i = start; i < size; i++) {
147
52
                if constexpr (NeedMin) {
148
52
                    _min = std::min(_min, *(data + i));
149
52
                }
150
52
                if constexpr (NeedMax) {
151
52
                    _max = std::max(_max, *(data + i));
152
52
                }
153
52
            }
154
42
        }
155
42
    }
_ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
6
    void _update_batch(const ColumnPtr& column, size_t start) {
135
6
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
6
        } else {
145
6
            const T* data = (T*)column->get_raw_data().data;
146
14
            for (size_t i = start; i < size; i++) {
147
8
                if constexpr (NeedMin) {
148
8
                    _min = std::min(_min, *(data + i));
149
8
                }
150
8
                if constexpr (NeedMax) {
151
8
                    _max = std::max(_max, *(data + i));
152
8
                }
153
8
            }
154
6
        }
155
6
    }
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
2
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
2
        } else {
145
2
            const T* data = (T*)column->get_raw_data().data;
146
8
            for (size_t i = start; i < size; i++) {
147
6
                if constexpr (NeedMin) {
148
6
                    _min = std::min(_min, *(data + i));
149
6
                }
150
6
                if constexpr (NeedMax) {
151
6
                    _max = std::max(_max, *(data + i));
152
6
                }
153
6
            }
154
2
        }
155
2
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
134
188
    void _update_batch(const ColumnPtr& column, size_t start) {
135
188
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
188
        } else {
145
188
            const T* data = (T*)column->get_raw_data().data;
146
1.19k
            for (size_t i = start; i < size; i++) {
147
1.00k
                if constexpr (NeedMin) {
148
1.00k
                    _min = std::min(_min, *(data + i));
149
1.00k
                }
150
1.00k
                if constexpr (NeedMax) {
151
1.00k
                    _max = std::max(_max, *(data + i));
152
1.00k
                }
153
1.00k
            }
154
188
        }
155
188
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EEm
Line
Count
Source
134
52
    void _update_batch(const ColumnPtr& column, size_t start) {
135
52
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
52
        } else {
145
52
            const T* data = (T*)column->get_raw_data().data;
146
202
            for (size_t i = start; i < size; i++) {
147
150
                if constexpr (NeedMin) {
148
150
                    _min = std::min(_min, *(data + i));
149
150
                }
150
150
                if constexpr (NeedMax) {
151
150
                    _max = std::max(_max, *(data + i));
152
150
                }
153
150
            }
154
52
        }
155
52
    }
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
134
124
    void _update_batch(const ColumnPtr& column, size_t start) {
135
124
        const auto size = column->size();
136
124
        if constexpr (std::is_same_v<T, std::string>) {
137
124
            if (column->is_column_string64()) {
138
1
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
1
                                     size);
140
123
            } else {
141
123
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
123
                                     size);
143
123
            }
144
        } else {
145
            const T* data = (T*)column->get_raw_data().data;
146
            for (size_t i = start; i < size; i++) {
147
                if constexpr (NeedMin) {
148
                    _min = std::min(_min, *(data + i));
149
                }
150
                if constexpr (NeedMax) {
151
                    _max = std::max(_max, *(data + i));
152
                }
153
            }
154
        }
155
124
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEm
Line
Count
Source
134
11
    void _update_batch(const ColumnPtr& column, size_t start) {
135
11
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
11
        } else {
145
11
            const T* data = (T*)column->get_raw_data().data;
146
74
            for (size_t i = start; i < size; i++) {
147
63
                if constexpr (NeedMin) {
148
63
                    _min = std::min(_min, *(data + i));
149
63
                }
150
63
                if constexpr (NeedMax) {
151
63
                    _max = std::max(_max, *(data + i));
152
63
                }
153
63
            }
154
11
        }
155
11
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EEm
Line
Count
Source
134
36
    void _update_batch(const ColumnPtr& column, size_t start) {
135
36
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
36
        } else {
145
36
            const T* data = (T*)column->get_raw_data().data;
146
80
            for (size_t i = start; i < size; i++) {
147
44
                if constexpr (NeedMin) {
148
44
                    _min = std::min(_min, *(data + i));
149
44
                }
150
44
                if constexpr (NeedMax) {
151
44
                    _max = std::max(_max, *(data + i));
152
44
                }
153
44
            }
154
36
        }
155
36
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
1
    void _update_batch(const ColumnPtr& column, size_t start) {
135
1
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
1
        } else {
145
1
            const T* data = (T*)column->get_raw_data().data;
146
4
            for (size_t i = start; i < size; i++) {
147
3
                if constexpr (NeedMin) {
148
3
                    _min = std::min(_min, *(data + i));
149
3
                }
150
3
                if constexpr (NeedMax) {
151
3
                    _max = std::max(_max, *(data + i));
152
3
                }
153
3
            }
154
1
        }
155
1
    }
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEm
Line
Count
Source
134
2
    void _update_batch(const ColumnPtr& column, size_t start) {
135
2
        const auto size = column->size();
136
        if constexpr (std::is_same_v<T, std::string>) {
137
            if (column->is_column_string64()) {
138
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullptr, start,
139
                                     size);
140
            } else {
141
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullptr, start,
142
                                     size);
143
            }
144
2
        } else {
145
2
            const T* data = (T*)column->get_raw_data().data;
146
7
            for (size_t i = start; i < size; i++) {
147
5
                if constexpr (NeedMin) {
148
5
                    _min = std::min(_min, *(data + i));
149
5
                }
150
5
                if constexpr (NeedMax) {
151
5
                    _max = std::max(_max, *(data + i));
152
5
                }
153
5
            }
154
2
        }
155
2
    }
156
157
2.49k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
2.49k
        const auto size = column->size();
159
2.49k
        if constexpr (std::is_same_v<T, std::string>) {
160
116
            if (column->is_column_string64()) {
161
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
0
                                     start, size);
163
116
            } else {
164
116
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
116
                                     start, size);
166
116
            }
167
2.37k
        } else {
168
2.37k
            const T* data = (T*)column->get_raw_data().data;
169
1.62M
            for (size_t i = start; i < size; i++) {
170
1.62M
                if (!nullmap[i]) {
171
1.62M
                    if constexpr (NeedMin) {
172
1.62M
                        _min = std::min(_min, *(data + i));
173
1.62M
                    }
174
1.62M
                    if constexpr (NeedMax) {
175
1.62M
                        _max = std::max(_max, *(data + i));
176
1.62M
                    }
177
1.62M
                }
178
1.61M
            }
179
2.37k
        }
180
2.49k
    }
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
157
2
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
2
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
2
        } else {
168
2
            const T* data = (T*)column->get_raw_data().data;
169
8
            for (size_t i = start; i < size; i++) {
170
6
                if (!nullmap[i]) {
171
6
                    if constexpr (NeedMin) {
172
6
                        _min = std::min(_min, *(data + i));
173
6
                    }
174
6
                    if constexpr (NeedMax) {
175
6
                        _max = std::max(_max, *(data + i));
176
6
                    }
177
6
                }
178
6
            }
179
2
        }
180
2
    }
_ZN5doris13MinMaxNumFuncIaLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
142
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
142
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
142
        } else {
168
142
            const T* data = (T*)column->get_raw_data().data;
169
438
            for (size_t i = start; i < size; i++) {
170
296
                if (!nullmap[i]) {
171
287
                    if constexpr (NeedMin) {
172
287
                        _min = std::min(_min, *(data + i));
173
287
                    }
174
287
                    if constexpr (NeedMax) {
175
287
                        _max = std::max(_max, *(data + i));
176
287
                    }
177
287
                }
178
296
            }
179
142
        }
180
142
    }
_ZN5doris13MinMaxNumFuncIsLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
77
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
77
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
77
        } else {
168
77
            const T* data = (T*)column->get_raw_data().data;
169
451
            for (size_t i = start; i < size; i++) {
170
374
                if (!nullmap[i]) {
171
328
                    if constexpr (NeedMin) {
172
328
                        _min = std::min(_min, *(data + i));
173
328
                    }
174
328
                    if constexpr (NeedMax) {
175
328
                        _max = std::max(_max, *(data + i));
176
328
                    }
177
328
                }
178
374
            }
179
77
        }
180
77
    }
_ZN5doris13MinMaxNumFuncIiLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
1.03k
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
1.03k
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
1.03k
        } else {
168
1.03k
            const T* data = (T*)column->get_raw_data().data;
169
1.61M
            for (size_t i = start; i < size; i++) {
170
1.61M
                if (!nullmap[i]) {
171
1.61M
                    if constexpr (NeedMin) {
172
1.61M
                        _min = std::min(_min, *(data + i));
173
1.61M
                    }
174
1.61M
                    if constexpr (NeedMax) {
175
1.61M
                        _max = std::max(_max, *(data + i));
176
1.61M
                    }
177
1.61M
                }
178
1.61M
            }
179
1.03k
        }
180
1.03k
    }
_ZN5doris13MinMaxNumFuncIlLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
668
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
668
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
668
        } else {
168
668
            const T* data = (T*)column->get_raw_data().data;
169
3.21k
            for (size_t i = start; i < size; i++) {
170
2.54k
                if (!nullmap[i]) {
171
2.14k
                    if constexpr (NeedMin) {
172
2.14k
                        _min = std::min(_min, *(data + i));
173
2.14k
                    }
174
2.14k
                    if constexpr (NeedMax) {
175
2.14k
                        _max = std::max(_max, *(data + i));
176
2.14k
                    }
177
2.14k
                }
178
2.54k
            }
179
668
        }
180
668
    }
_ZN5doris13MinMaxNumFuncInLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
7
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
7
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
7
        } else {
168
7
            const T* data = (T*)column->get_raw_data().data;
169
14
            for (size_t i = start; i < size; i++) {
170
7
                if (!nullmap[i]) {
171
7
                    if constexpr (NeedMin) {
172
7
                        _min = std::min(_min, *(data + i));
173
7
                    }
174
7
                    if constexpr (NeedMax) {
175
7
                        _max = std::max(_max, *(data + i));
176
7
                    }
177
7
                }
178
7
            }
179
7
        }
180
7
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIfLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIdLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncINS_16VecDateTimeValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
3
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
3
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
3
        } else {
168
3
            const T* data = (T*)column->get_raw_data().data;
169
27
            for (size_t i = start; i < size; i++) {
170
24
                if (!nullmap[i]) {
171
24
                    if constexpr (NeedMin) {
172
24
                        _min = std::min(_min, *(data + i));
173
24
                    }
174
24
                    if constexpr (NeedMax) {
175
24
                        _max = std::max(_max, *(data + i));
176
24
                    }
177
24
                }
178
24
            }
179
3
        }
180
3
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_15DateV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
22
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
22
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
22
        } else {
168
22
            const T* data = (T*)column->get_raw_data().data;
169
320
            for (size_t i = start; i < size; i++) {
170
298
                if (!nullmap[i]) {
171
263
                    if constexpr (NeedMin) {
172
263
                        _min = std::min(_min, *(data + i));
173
263
                    }
174
263
                    if constexpr (NeedMax) {
175
263
                        _max = std::max(_max, *(data + i));
176
263
                    }
177
263
                }
178
298
            }
179
22
        }
180
22
    }
_ZN5doris13MinMaxNumFuncINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS6_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
273
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
273
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
273
        } else {
168
273
            const T* data = (T*)column->get_raw_data().data;
169
585
            for (size_t i = start; i < size; i++) {
170
312
                if (!nullmap[i]) {
171
311
                    if constexpr (NeedMin) {
172
311
                        _min = std::min(_min, *(data + i));
173
311
                    }
174
311
                    if constexpr (NeedMax) {
175
311
                        _max = std::max(_max, *(data + i));
176
311
                    }
177
311
                }
178
312
            }
179
273
        }
180
273
    }
_ZN5doris13MinMaxNumFuncINS_16TimeStampNsValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
6
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
6
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
6
        } else {
168
6
            const T* data = (T*)column->get_raw_data().data;
169
20
            for (size_t i = start; i < size; i++) {
170
14
                if (!nullmap[i]) {
171
13
                    if constexpr (NeedMin) {
172
13
                        _min = std::min(_min, *(data + i));
173
13
                    }
174
13
                    if constexpr (NeedMax) {
175
13
                        _max = std::max(_max, *(data + i));
176
13
                    }
177
13
                }
178
14
            }
179
6
        }
180
6
    }
_ZN5doris13MinMaxNumFuncINS_16TimestampTzValueELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
17
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
17
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
17
        } else {
168
17
            const T* data = (T*)column->get_raw_data().data;
169
68
            for (size_t i = start; i < size; i++) {
170
51
                if (!nullmap[i]) {
171
51
                    if constexpr (NeedMin) {
172
51
                        _min = std::min(_min, *(data + i));
173
51
                    }
174
51
                    if constexpr (NeedMax) {
175
51
                        _max = std::max(_max, *(data + i));
176
51
                    }
177
51
                }
178
51
            }
179
17
        }
180
17
    }
_ZN5doris13MinMaxNumFuncINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS9_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
116
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
116
        const auto size = column->size();
159
116
        if constexpr (std::is_same_v<T, std::string>) {
160
116
            if (column->is_column_string64()) {
161
0
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
0
                                     start, size);
163
116
            } else {
164
116
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
116
                                     start, size);
166
116
            }
167
        } else {
168
            const T* data = (T*)column->get_raw_data().data;
169
            for (size_t i = start; i < size; i++) {
170
                if (!nullmap[i]) {
171
                    if constexpr (NeedMin) {
172
                        _min = std::min(_min, *(data + i));
173
                    }
174
                    if constexpr (NeedMax) {
175
                        _max = std::max(_max, *(data + i));
176
                    }
177
                }
178
            }
179
        }
180
116
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIiEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
4
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
4
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
4
        } else {
168
4
            const T* data = (T*)column->get_raw_data().data;
169
9
            for (size_t i = start; i < size; i++) {
170
5
                if (!nullmap[i]) {
171
5
                    if constexpr (NeedMin) {
172
5
                        _min = std::min(_min, *(data + i));
173
5
                    }
174
5
                    if constexpr (NeedMax) {
175
5
                        _max = std::max(_max, *(data + i));
176
5
                    }
177
5
                }
178
5
            }
179
4
        }
180
4
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIlEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
21
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
21
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
21
        } else {
168
21
            const T* data = (T*)column->get_raw_data().data;
169
46
            for (size_t i = start; i < size; i++) {
170
25
                if (!nullmap[i]) {
171
24
                    if constexpr (NeedMin) {
172
24
                        _min = std::min(_min, *(data + i));
173
24
                    }
174
24
                    if constexpr (NeedMax) {
175
24
                        _max = std::max(_max, *(data + i));
176
24
                    }
177
24
                }
178
25
            }
179
21
        }
180
21
    }
_ZN5doris13MinMaxNumFuncINS_12Decimal128V3ELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
93
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
93
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
93
        } else {
168
93
            const T* data = (T*)column->get_raw_data().data;
169
393
            for (size_t i = start; i < size; i++) {
170
300
                if (!nullmap[i]) {
171
155
                    if constexpr (NeedMin) {
172
155
                        _min = std::min(_min, *(data + i));
173
155
                    }
174
155
                    if constexpr (NeedMax) {
175
155
                        _max = std::max(_max, *(data + i));
176
155
                    }
177
155
                }
178
300
            }
179
93
        }
180
93
    }
_ZN5doris13MinMaxNumFuncINS_7DecimalIN4wide7integerILm256EiEEEELb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS8_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
3
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
3
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
3
        } else {
168
3
            const T* data = (T*)column->get_raw_data().data;
169
39
            for (size_t i = start; i < size; i++) {
170
36
                if (!nullmap[i]) {
171
36
                    if constexpr (NeedMin) {
172
36
                        _min = std::min(_min, *(data + i));
173
36
                    }
174
36
                    if constexpr (NeedMax) {
175
36
                        _max = std::max(_max, *(data + i));
176
36
                    }
177
36
                }
178
36
            }
179
3
        }
180
3
    }
Unexecuted instantiation: _ZN5doris13MinMaxNumFuncIjLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
_ZN5doris13MinMaxNumFuncIoLb1ELb1EE13_update_batchERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEm
Line
Count
Source
157
3
    void _update_batch(const ColumnPtr& column, const NullMap& nullmap, size_t start) {
158
3
        const auto size = column->size();
159
        if constexpr (std::is_same_v<T, std::string>) {
160
            if (column->is_column_string64()) {
161
                _update_batch_string(assert_cast<const ColumnString64&>(*column), nullmap.data(),
162
                                     start, size);
163
            } else {
164
                _update_batch_string(assert_cast<const ColumnString&>(*column), nullmap.data(),
165
                                     start, size);
166
            }
167
3
        } else {
168
3
            const T* data = (T*)column->get_raw_data().data;
169
516
            for (size_t i = start; i < size; i++) {
170
513
                if (!nullmap[i]) {
171
481
                    if constexpr (NeedMin) {
172
481
                        _min = std::min(_min, *(data + i));
173
481
                    }
174
481
                    if constexpr (NeedMax) {
175
481
                        _max = std::max(_max, *(data + i));
176
481
                    }
177
481
                }
178
513
            }
179
3
        }
180
3
    }
181
182
    T _max = type_limit<T>::min();
183
    T _min = type_limit<T>::max();
184
185
    bool _min_value_set = false;
186
};
187
188
template <class T>
189
using MinNumFunc = MinMaxNumFunc<T, false, true>;
190
191
template <class T>
192
using MaxNumFunc = MinMaxNumFunc<T, true, false>;
193
194
} // namespace doris