Coverage Report

Created: 2026-08-14 09:56

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/short_circuit_util.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
#include "core/block/column_with_type_and_name.h"
20
#include "core/column/column.h"
21
#include "core/column/column_const.h"
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_vector.h"
24
#include "core/field.h"
25
#include "exprs/vexpr.h"
26
27
namespace doris {
28
29
// Used to store a column along with its null_map and whether it is a const column.
30
// If the input column is not nullable, then null_map will be nullptr.
31
struct ColumnNullConstView {
32
    const IColumn& column;
33
    const NullMap* null_map;
34
    const bool is_const;
35
36
6.40k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
6.40k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
6.40k
        if (const auto* nullable_column =
40
6.40k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
1.75k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
1.75k
                                        .null_map = &nullable_column->get_null_map_data(),
43
1.75k
                                        .is_const = is_const};
44
4.64k
        } else {
45
4.64k
            return ColumnNullConstView {
46
4.64k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
4.64k
        }
48
6.40k
    }
49
};
50
51
// Scalar version stores a reference to the actual data type array for convenient subsequent operations.
52
template <PrimitiveType PType>
53
struct ColumnNullConstViewScalar {
54
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
55
    using ArrayType = typename ColumnType::Container;
56
57
    const ArrayType& data;
58
    const NullMap* null_map;
59
    const bool is_const;
60
61
28.8k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
28.8k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
28.8k
        const NullMap* null_map = nullptr;
64
28.8k
        const ArrayType* data = nullptr;
65
28.8k
        if (const auto* nullable_column =
66
28.8k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
8.51k
            null_map = &nullable_column->get_null_map_data();
68
8.51k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
8.51k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
20.3k
        } else {
71
20.3k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
20.3k
        }
73
74
28.8k
        return ColumnNullConstViewScalar {
75
28.8k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
28.8k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
12.0k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
12.0k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
12.0k
        const NullMap* null_map = nullptr;
64
12.0k
        const ArrayType* data = nullptr;
65
12.0k
        if (const auto* nullable_column =
66
12.0k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
5.58k
            null_map = &nullable_column->get_null_map_data();
68
5.58k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
5.58k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6.47k
        } else {
71
6.47k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
6.47k
        }
73
74
12.0k
        return ColumnNullConstViewScalar {
75
12.0k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
12.0k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
13.5k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
13.5k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
13.5k
        const NullMap* null_map = nullptr;
64
13.5k
        const ArrayType* data = nullptr;
65
13.5k
        if (const auto* nullable_column =
66
13.5k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
395
            null_map = &nullable_column->get_null_map_data();
68
395
            const auto& nested_from_column = nullable_column->get_nested_column();
69
395
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
13.1k
        } else {
71
13.1k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
13.1k
        }
73
74
13.5k
        return ColumnNullConstViewScalar {
75
13.5k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
13.5k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
4
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
4
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
4
        const NullMap* null_map = nullptr;
64
4
        const ArrayType* data = nullptr;
65
4
        if (const auto* nullable_column =
66
4
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
2
            null_map = &nullable_column->get_null_map_data();
68
2
            const auto& nested_from_column = nullable_column->get_nested_column();
69
2
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
4
        return ColumnNullConstViewScalar {
75
4
                .data = *data, .null_map = null_map, .is_const = is_const};
76
4
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
2.39k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.39k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.39k
        const NullMap* null_map = nullptr;
64
2.39k
        const ArrayType* data = nullptr;
65
2.39k
        if (const auto* nullable_column =
66
2.39k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
2.13k
            null_map = &nullable_column->get_null_map_data();
68
2.13k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
2.13k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2.13k
        } else {
71
260
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
260
        }
73
74
2.39k
        return ColumnNullConstViewScalar {
75
2.39k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.39k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
235
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
235
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
235
        const NullMap* null_map = nullptr;
64
235
        const ArrayType* data = nullptr;
65
235
        if (const auto* nullable_column =
66
235
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
111
            null_map = &nullable_column->get_null_map_data();
68
111
            const auto& nested_from_column = nullable_column->get_nested_column();
69
111
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
124
        } else {
71
124
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
124
        }
73
74
235
        return ColumnNullConstViewScalar {
75
235
                .data = *data, .null_map = null_map, .is_const = is_const};
76
235
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
220
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
220
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
220
        const NullMap* null_map = nullptr;
64
220
        const ArrayType* data = nullptr;
65
220
        if (const auto* nullable_column =
66
220
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
142
            null_map = &nullable_column->get_null_map_data();
68
142
            const auto& nested_from_column = nullable_column->get_nested_column();
69
142
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
142
        } else {
71
78
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
78
        }
73
74
220
        return ColumnNullConstViewScalar {
75
220
                .data = *data, .null_map = null_map, .is_const = is_const};
76
220
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
8
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
8
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
8
        const NullMap* null_map = nullptr;
64
8
        const ArrayType* data = nullptr;
65
8
        if (const auto* nullable_column =
66
8
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
6
            null_map = &nullable_column->get_null_map_data();
68
6
            const auto& nested_from_column = nullable_column->get_nested_column();
69
6
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
8
        return ColumnNullConstViewScalar {
75
8
                .data = *data, .null_map = null_map, .is_const = is_const};
76
8
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
126
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
126
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
126
        const NullMap* null_map = nullptr;
64
126
        const ArrayType* data = nullptr;
65
126
        if (const auto* nullable_column =
66
126
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
11
            null_map = &nullable_column->get_null_map_data();
68
11
            const auto& nested_from_column = nullable_column->get_nested_column();
69
11
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
115
        } else {
71
115
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
115
        }
73
74
126
        return ColumnNullConstViewScalar {
75
126
                .data = *data, .null_map = null_map, .is_const = is_const};
76
126
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
130
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
130
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
130
        const NullMap* null_map = nullptr;
64
130
        const ArrayType* data = nullptr;
65
130
        if (const auto* nullable_column =
66
130
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
65
            null_map = &nullable_column->get_null_map_data();
68
65
            const auto& nested_from_column = nullable_column->get_nested_column();
69
65
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
65
        } else {
71
65
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
65
        }
73
74
130
        return ColumnNullConstViewScalar {
75
130
                .data = *data, .null_map = null_map, .is_const = is_const};
76
130
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
5
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
5
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
5
        const NullMap* null_map = nullptr;
64
5
        const ArrayType* data = nullptr;
65
5
        if (const auto* nullable_column =
66
5
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
5
            null_map = &nullable_column->get_null_map_data();
68
5
            const auto& nested_from_column = nullable_column->get_nested_column();
69
5
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
5
        return ColumnNullConstViewScalar {
75
5
                .data = *data, .null_map = null_map, .is_const = is_const};
76
5
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
90
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
90
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
90
        const NullMap* null_map = nullptr;
64
90
        const ArrayType* data = nullptr;
65
90
        if (const auto* nullable_column =
66
90
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
27
            null_map = &nullable_column->get_null_map_data();
68
27
            const auto& nested_from_column = nullable_column->get_nested_column();
69
27
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
63
        } else {
71
63
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
63
        }
73
74
90
        return ColumnNullConstViewScalar {
75
90
                .data = *data, .null_map = null_map, .is_const = is_const};
76
90
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
32
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
32
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
32
        const NullMap* null_map = nullptr;
64
32
        const ArrayType* data = nullptr;
65
32
        if (const auto* nullable_column =
66
32
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
27
            null_map = &nullable_column->get_null_map_data();
68
27
            const auto& nested_from_column = nullable_column->get_nested_column();
69
27
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
27
        } else {
71
5
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5
        }
73
74
32
        return ColumnNullConstViewScalar {
75
32
                .data = *data, .null_map = null_map, .is_const = is_const};
76
32
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
4
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
4
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
4
        const NullMap* null_map = nullptr;
64
4
        const ArrayType* data = nullptr;
65
4
        if (const auto* nullable_column =
66
4
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
4
            null_map = &nullable_column->get_null_map_data();
68
4
            const auto& nested_from_column = nullable_column->get_nested_column();
69
4
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
4
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
4
        return ColumnNullConstViewScalar {
75
4
                .data = *data, .null_map = null_map, .is_const = is_const};
76
4
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
942
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
942
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
458
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
458
                                          .null_map = &nullable_column->get_null_map_data()};
88
484
        } else {
89
484
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
484
        }
91
942
    }
92
93
13.8k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
13.8k
        auto index = index_check_const(i, from.is_const);
95
13.8k
        column.insert_from(from.column, index);
96
13.8k
        if (null_map != nullptr && from.null_map != nullptr) {
97
9.20k
            null_map->push_back((*from.null_map)[index]);
98
9.20k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
3.72k
            null_map->push_back(0);
101
3.72k
        }
102
13.8k
    }
103
104
23
    void insert_null() {
105
23
        if (null_map == nullptr) {
106
0
            throw doris::Exception(ErrorCode::INTERNAL_ERROR,
107
0
                                   "Cannot insert null value into non-nullable column in "
108
0
                                   "ShortCircuitCoalesceExpr.");
109
0
        }
110
23
        column.insert_default();
111
23
        null_map->push_back(1);
112
23
    }
113
};
114
115
template <PrimitiveType PType>
116
struct MutableColumnNullViewScalar {
117
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
118
    using ArrayType = typename ColumnType::Container;
119
120
    ArrayType& data;
121
    NullMap* null_map;
122
123
7.16k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
7.16k
        ColumnType* data_column = nullptr;
125
7.16k
        NullMap* null_map = nullptr;
126
7.16k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.64k
            null_map = &nullable_column->get_null_map_data();
128
1.64k
            auto& nested_column = nullable_column->get_nested_column();
129
1.64k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
5.51k
        } else {
131
5.51k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
5.51k
        }
133
134
7.16k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
7.16k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
95
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
95
        ColumnType* data_column = nullptr;
125
95
        NullMap* null_map = nullptr;
126
95
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
93
        } else {
131
93
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
93
        }
133
134
95
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
5.40k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
5.40k
        ColumnType* data_column = nullptr;
125
5.40k
        NullMap* null_map = nullptr;
126
5.40k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
368
            null_map = &nullable_column->get_null_map_data();
128
368
            auto& nested_column = nullable_column->get_nested_column();
129
368
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
5.04k
        } else {
131
5.04k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
5.04k
        }
133
134
5.40k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
5.40k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.21k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.21k
        ColumnType* data_column = nullptr;
125
1.21k
        NullMap* null_map = nullptr;
126
1.21k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.08k
            null_map = &nullable_column->get_null_map_data();
128
1.08k
            auto& nested_column = nullable_column->get_nested_column();
129
1.08k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.08k
        } else {
131
128
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
128
        }
133
134
1.21k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.21k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
118
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
118
        ColumnType* data_column = nullptr;
125
118
        NullMap* null_map = nullptr;
126
118
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
21
            null_map = &nullable_column->get_null_map_data();
128
21
            auto& nested_column = nullable_column->get_nested_column();
129
21
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
97
        } else {
131
97
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
97
        }
133
134
118
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
118
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
108
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
108
        ColumnType* data_column = nullptr;
125
108
        NullMap* null_map = nullptr;
126
108
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
84
            null_map = &nullable_column->get_null_map_data();
128
84
            auto& nested_column = nullable_column->get_nested_column();
129
84
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
84
        } else {
131
24
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
24
        }
133
134
108
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
108
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
4
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
4
        ColumnType* data_column = nullptr;
125
4
        NullMap* null_map = nullptr;
126
4
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
4
            null_map = &nullable_column->get_null_map_data();
128
4
            auto& nested_column = nullable_column->get_nested_column();
129
4
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
4
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
79
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
79
        ColumnType* data_column = nullptr;
125
79
        NullMap* null_map = nullptr;
126
79
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
77
        } else {
131
77
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
77
        }
133
134
79
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
79
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
65
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
65
        ColumnType* data_column = nullptr;
125
65
        NullMap* null_map = nullptr;
126
65
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
49
            null_map = &nullable_column->get_null_map_data();
128
49
            auto& nested_column = nullable_column->get_nested_column();
129
49
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
49
        } else {
131
16
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
16
        }
133
134
65
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
65
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
44
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
44
        ColumnType* data_column = nullptr;
125
44
        NullMap* null_map = nullptr;
126
44
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
13
            null_map = &nullable_column->get_null_map_data();
128
13
            auto& nested_column = nullable_column->get_nested_column();
129
13
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
31
        } else {
131
31
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
31
        }
133
134
44
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
44
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
19
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
19
        ColumnType* data_column = nullptr;
125
19
        NullMap* null_map = nullptr;
126
19
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
8
            null_map = &nullable_column->get_null_map_data();
128
8
            auto& nested_column = nullable_column->get_nested_column();
129
8
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
11
        } else {
131
11
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
11
        }
133
134
19
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
19
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
136
137
16.9k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
16.9k
        auto& result_data = data;
139
16.9k
        const auto& from_data = from.data;
140
141
16.9k
        auto* result_null_map_data = null_map;
142
16.9k
        const auto* from_null_map_data = from.null_map;
143
144
16.9k
        if (from.is_const) {
145
5.31k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5.31k
                                     from_null_map_data, selector);
147
11.6k
        } else {
148
11.6k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
11.6k
                                      from_null_map_data, selector);
150
11.6k
        }
151
16.9k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
190
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
190
        auto& result_data = data;
139
190
        const auto& from_data = from.data;
140
141
190
        auto* result_null_map_data = null_map;
142
190
        const auto* from_null_map_data = from.null_map;
143
144
190
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
188
        } else {
148
188
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
188
                                      from_null_map_data, selector);
150
188
        }
151
190
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
13.5k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
13.5k
        auto& result_data = data;
139
13.5k
        const auto& from_data = from.data;
140
141
13.5k
        auto* result_null_map_data = null_map;
142
13.5k
        const auto* from_null_map_data = from.null_map;
143
144
13.5k
        if (from.is_const) {
145
4.60k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4.60k
                                     from_null_map_data, selector);
147
8.94k
        } else {
148
8.94k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
8.94k
                                      from_null_map_data, selector);
150
8.94k
        }
151
13.5k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
4
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
4
        auto& result_data = data;
139
4
        const auto& from_data = from.data;
140
141
4
        auto* result_null_map_data = null_map;
142
4
        const auto* from_null_map_data = from.null_map;
143
144
4
        if (from.is_const) {
145
4
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4
                                     from_null_map_data, selector);
147
4
        } else {
148
0
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
0
                                      from_null_map_data, selector);
150
0
        }
151
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
2.39k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.39k
        auto& result_data = data;
139
2.39k
        const auto& from_data = from.data;
140
141
2.39k
        auto* result_null_map_data = null_map;
142
2.39k
        const auto* from_null_map_data = from.null_map;
143
144
2.39k
        if (from.is_const) {
145
513
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
513
                                     from_null_map_data, selector);
147
1.88k
        } else {
148
1.88k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.88k
                                      from_null_map_data, selector);
150
1.88k
        }
151
2.39k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
235
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
235
        auto& result_data = data;
139
235
        const auto& from_data = from.data;
140
141
235
        auto* result_null_map_data = null_map;
142
235
        const auto* from_null_map_data = from.null_map;
143
144
235
        if (from.is_const) {
145
47
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
47
                                     from_null_map_data, selector);
147
188
        } else {
148
188
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
188
                                      from_null_map_data, selector);
150
188
        }
151
235
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
220
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
220
        auto& result_data = data;
139
220
        const auto& from_data = from.data;
140
141
220
        auto* result_null_map_data = null_map;
142
220
        const auto* from_null_map_data = from.null_map;
143
144
220
        if (from.is_const) {
145
62
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
62
                                     from_null_map_data, selector);
147
158
        } else {
148
158
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
158
                                      from_null_map_data, selector);
150
158
        }
151
220
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
8
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
8
        auto& result_data = data;
139
8
        const auto& from_data = from.data;
140
141
8
        auto* result_null_map_data = null_map;
142
8
        const auto* from_null_map_data = from.null_map;
143
144
8
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
8
        } else {
148
8
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
8
                                      from_null_map_data, selector);
150
8
        }
151
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
126
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
126
        auto& result_data = data;
139
126
        const auto& from_data = from.data;
140
141
126
        auto* result_null_map_data = null_map;
142
126
        const auto* from_null_map_data = from.null_map;
143
144
126
        if (from.is_const) {
145
23
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
23
                                     from_null_map_data, selector);
147
103
        } else {
148
103
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
103
                                      from_null_map_data, selector);
150
103
        }
151
126
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
130
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
130
        auto& result_data = data;
139
130
        const auto& from_data = from.data;
140
141
130
        auto* result_null_map_data = null_map;
142
130
        const auto* from_null_map_data = from.null_map;
143
144
130
        if (from.is_const) {
145
49
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
49
                                     from_null_map_data, selector);
147
81
        } else {
148
81
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
81
                                      from_null_map_data, selector);
150
81
        }
151
130
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
5
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
5
        auto& result_data = data;
139
5
        const auto& from_data = from.data;
140
141
5
        auto* result_null_map_data = null_map;
142
5
        const auto* from_null_map_data = from.null_map;
143
144
5
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
5
        } else {
148
5
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
5
                                      from_null_map_data, selector);
150
5
        }
151
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
90
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
90
        auto& result_data = data;
139
90
        const auto& from_data = from.data;
140
141
90
        auto* result_null_map_data = null_map;
142
90
        const auto* from_null_map_data = from.null_map;
143
144
90
        if (from.is_const) {
145
8
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
8
                                     from_null_map_data, selector);
147
82
        } else {
148
82
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
82
                                      from_null_map_data, selector);
150
82
        }
151
90
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
32
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
32
        auto& result_data = data;
139
32
        const auto& from_data = from.data;
140
141
32
        auto* result_null_map_data = null_map;
142
32
        const auto* from_null_map_data = from.null_map;
143
144
32
        if (from.is_const) {
145
4
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4
                                     from_null_map_data, selector);
147
28
        } else {
148
28
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
28
                                      from_null_map_data, selector);
150
28
        }
151
32
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
4
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
4
        auto& result_data = data;
139
4
        const auto& from_data = from.data;
140
141
4
        auto* result_null_map_data = null_map;
142
4
        const auto* from_null_map_data = from.null_map;
143
144
4
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
2
        } else {
148
2
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2
                                      from_null_map_data, selector);
150
2
        }
151
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
152
153
    template <bool is_const>
154
    static void insert_into_result(ArrayType& result_data, const ArrayType& from_data,
155
                                   NullMap* result_null_map_data, const NullMap* from_null_map_data,
156
16.9k
                                   const Selector& selector) {
157
16.9k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
16.9k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2.68k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2.68k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
16.9k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
188
                                   const Selector& selector) {
157
188
        insert_with_selector<is_const>(result_data, from_data, selector);
158
188
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
188
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
4.60k
                                   const Selector& selector) {
157
4.60k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4.60k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
3
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
3
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4.60k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
8.94k
                                   const Selector& selector) {
157
8.94k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
8.94k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
378
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
378
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
8.94k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
4
                                   const Selector& selector) {
157
4
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb0EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb1EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
513
                                   const Selector& selector) {
157
513
        insert_with_selector<is_const>(result_data, from_data, selector);
158
513
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
447
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
447
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
513
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.88k
                                   const Selector& selector) {
157
1.88k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.88k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.57k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.57k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
1.88k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
47
                                   const Selector& selector) {
157
47
        insert_with_selector<is_const>(result_data, from_data, selector);
158
47
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
13
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
13
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
47
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
188
                                   const Selector& selector) {
157
188
        insert_with_selector<is_const>(result_data, from_data, selector);
158
188
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
28
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
28
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
188
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
62
                                   const Selector& selector) {
157
62
        insert_with_selector<is_const>(result_data, from_data, selector);
158
62
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
9
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
9
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
62
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
158
                                   const Selector& selector) {
157
158
        insert_with_selector<is_const>(result_data, from_data, selector);
158
158
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
103
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
103
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
158
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
8
                                   const Selector& selector) {
157
8
        insert_with_selector<is_const>(result_data, from_data, selector);
158
8
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
6
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
6
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
23
                                   const Selector& selector) {
157
23
        insert_with_selector<is_const>(result_data, from_data, selector);
158
23
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
0
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
103
                                   const Selector& selector) {
157
103
        insert_with_selector<is_const>(result_data, from_data, selector);
158
103
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
103
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
49
                                   const Selector& selector) {
157
49
        insert_with_selector<is_const>(result_data, from_data, selector);
158
49
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
19
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
19
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
49
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
81
                                   const Selector& selector) {
157
81
        insert_with_selector<is_const>(result_data, from_data, selector);
158
81
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
45
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
45
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
81
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
8
                                   const Selector& selector) {
157
8
        insert_with_selector<is_const>(result_data, from_data, selector);
158
8
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
82
                                   const Selector& selector) {
157
82
        insert_with_selector<is_const>(result_data, from_data, selector);
158
82
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
20
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
20
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
82
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
4
                                   const Selector& selector) {
157
4
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
0
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
28
                                   const Selector& selector) {
157
28
        insert_with_selector<is_const>(result_data, from_data, selector);
158
28
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
16
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
16
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
28
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
19.6k
                                     const Selector& selector) {
169
10.1M
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.1M
            auto index = selector[i];
171
10.1M
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.1M
        }
173
19.6k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
190
                                     const Selector& selector) {
169
571
        for (size_t i = 0; i < selector.size(); ++i) {
170
381
            auto index = selector[i];
171
381
            result_data[index] = data[index_check_const<is_const>(i)];
172
381
        }
173
190
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4.60k
                                     const Selector& selector) {
169
10.0M
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.0M
            auto index = selector[i];
171
10.0M
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.0M
        }
173
4.60k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
8.94k
                                     const Selector& selector) {
169
11.4k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.53k
            auto index = selector[i];
171
2.53k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.53k
        }
173
8.94k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
378
                                     const Selector& selector) {
169
2.17k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.80k
            auto index = selector[i];
171
1.80k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.80k
        }
173
378
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
7
        for (size_t i = 0; i < selector.size(); ++i) {
170
5
            auto index = selector[i];
171
5
            result_data[index] = data[index_check_const<is_const>(i)];
172
5
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
513
                                     const Selector& selector) {
169
2.11k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.60k
            auto index = selector[i];
171
1.60k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.60k
        }
173
513
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
447
                                     const Selector& selector) {
169
1.93k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.49k
            auto index = selector[i];
171
1.49k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.49k
        }
173
447
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.88k
                                     const Selector& selector) {
169
4.31k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.43k
            auto index = selector[i];
171
2.43k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.43k
        }
173
1.88k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.57k
                                     const Selector& selector) {
169
3.70k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.12k
            auto index = selector[i];
171
2.12k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.12k
        }
173
1.57k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
47
                                     const Selector& selector) {
169
141
        for (size_t i = 0; i < selector.size(); ++i) {
170
94
            auto index = selector[i];
171
94
            result_data[index] = data[index_check_const<is_const>(i)];
172
94
        }
173
47
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
13
                                     const Selector& selector) {
169
29
        for (size_t i = 0; i < selector.size(); ++i) {
170
16
            auto index = selector[i];
171
16
            result_data[index] = data[index_check_const<is_const>(i)];
172
16
        }
173
13
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
188
                                     const Selector& selector) {
169
370
        for (size_t i = 0; i < selector.size(); ++i) {
170
182
            auto index = selector[i];
171
182
            result_data[index] = data[index_check_const<is_const>(i)];
172
182
        }
173
188
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
28
                                     const Selector& selector) {
169
52
        for (size_t i = 0; i < selector.size(); ++i) {
170
24
            auto index = selector[i];
171
24
            result_data[index] = data[index_check_const<is_const>(i)];
172
24
        }
173
28
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
62
                                     const Selector& selector) {
169
6.77k
        for (size_t i = 0; i < selector.size(); ++i) {
170
6.71k
            auto index = selector[i];
171
6.71k
            result_data[index] = data[index_check_const<is_const>(i)];
172
6.71k
        }
173
62
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
9
                                     const Selector& selector) {
169
18
        for (size_t i = 0; i < selector.size(); ++i) {
170
9
            auto index = selector[i];
171
9
            result_data[index] = data[index_check_const<is_const>(i)];
172
9
        }
173
9
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
158
                                     const Selector& selector) {
169
1.52k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.36k
            auto index = selector[i];
171
1.36k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.36k
        }
173
158
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
103
                                     const Selector& selector) {
169
1.43k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.33k
            auto index = selector[i];
171
1.33k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.33k
        }
173
103
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
8
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
48
        for (size_t i = 0; i < selector.size(); ++i) {
170
25
            auto index = selector[i];
171
25
            result_data[index] = data[index_check_const<is_const>(i)];
172
25
        }
173
23
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
103
                                     const Selector& selector) {
169
225
        for (size_t i = 0; i < selector.size(); ++i) {
170
122
            auto index = selector[i];
171
122
            result_data[index] = data[index_check_const<is_const>(i)];
172
122
        }
173
103
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
5
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
49
                                     const Selector& selector) {
169
19.3k
        for (size_t i = 0; i < selector.size(); ++i) {
170
19.2k
            auto index = selector[i];
171
19.2k
            result_data[index] = data[index_check_const<is_const>(i)];
172
19.2k
        }
173
49
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
19
                                     const Selector& selector) {
169
46
        for (size_t i = 0; i < selector.size(); ++i) {
170
27
            auto index = selector[i];
171
27
            result_data[index] = data[index_check_const<is_const>(i)];
172
27
        }
173
19
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
81
                                     const Selector& selector) {
169
3.85k
        for (size_t i = 0; i < selector.size(); ++i) {
170
3.77k
            auto index = selector[i];
171
3.77k
            result_data[index] = data[index_check_const<is_const>(i)];
172
3.77k
        }
173
81
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
45
                                     const Selector& selector) {
169
141
        for (size_t i = 0; i < selector.size(); ++i) {
170
96
            auto index = selector[i];
171
96
            result_data[index] = data[index_check_const<is_const>(i)];
172
96
        }
173
45
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
8
                                     const Selector& selector) {
169
23
        for (size_t i = 0; i < selector.size(); ++i) {
170
15
            auto index = selector[i];
171
15
            result_data[index] = data[index_check_const<is_const>(i)];
172
15
        }
173
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
5
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
82
                                     const Selector& selector) {
169
173
        for (size_t i = 0; i < selector.size(); ++i) {
170
91
            auto index = selector[i];
171
91
            result_data[index] = data[index_check_const<is_const>(i)];
172
91
        }
173
82
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
20
                                     const Selector& selector) {
169
41
        for (size_t i = 0; i < selector.size(); ++i) {
170
21
            auto index = selector[i];
171
21
            result_data[index] = data[index_check_const<is_const>(i)];
172
21
        }
173
20
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
28
                                     const Selector& selector) {
169
69
        for (size_t i = 0; i < selector.size(); ++i) {
170
41
            auto index = selector[i];
171
41
            result_data[index] = data[index_check_const<is_const>(i)];
172
41
        }
173
28
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
16
                                     const Selector& selector) {
169
47
        for (size_t i = 0; i < selector.size(); ++i) {
170
31
            auto index = selector[i];
171
31
            result_data[index] = data[index_check_const<is_const>(i)];
172
31
        }
173
16
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
106
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
106
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
9.89k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.89k
            auto index = selector[i];
171
9.89k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.89k
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
9.89k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.89k
            auto index = selector[i];
171
9.89k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.89k
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
174
175
13
    void insert_null(const Selector& selector) {
176
13
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
13
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
12
        auto& null_map_data = *null_map;
183
29
        for (size_t i = 0; i < selector.size(); ++i) {
184
17
            null_map_data[selector[i]] = 1;
185
17
        }
186
12
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
12
    void insert_null(const Selector& selector) {
176
12
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
12
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
11
        auto& null_map_data = *null_map;
183
27
        for (size_t i = 0; i < selector.size(); ++i) {
184
16
            null_map_data[selector[i]] = 1;
185
16
        }
186
11
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
187
};
188
189
// Used to store a column and its corresponding selector.
190
// It can be understood as: the positions selected by the selector in the result column correspond to the column inside.
191
// column = filter_column_with_selector(result_column, selector)
192
// What we need to do is fill these positions back into the result column (in a sense, it can be seen as restoring them).
193
// If the column is empty, it means these positions are all null, e.g., the last parameter of coalesce is null, or the else branch of case when is not provided.
194
struct ColumnAndSelector {
195
    ColumnPtr column = nullptr;
196
    Selector selector; // positions in result column
197
198
6.23k
    bool output_nulls() const { return column.get() == nullptr; }
199
200
    std::string debug_string() const {
201
        std::stringstream ss;
202
        ss << "ColumnAndSelector(selector_size=" << selector.size()
203
           << ", output_nulls=" << output_nulls()
204
           << ", column size=" << (column ? std::to_string(column->size()) : "null") << ")";
205
206
        ss << "\n selector data: [";
207
        for (size_t i = 0; i < selector.size(); ++i) {
208
            if (i != 0) {
209
                ss << ", ";
210
            }
211
            ss << selector[i];
212
        }
213
        ss << "]";
214
        return ss.str();
215
    }
216
};
217
218
// Scalar version of fill.
219
// Initializes the result column at the beginning.
220
// Subsequently fills data from each column into the result column using selectors.
221
template <PrimitiveType PType>
222
struct ScalarFillWithSelector {
223
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
224
    using ArrayType = typename ColumnType::Container;
225
226
public:
227
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
228
                          const Selector& true_selector, const ColumnPtr& false_column,
229
5.38k
                          const Selector& false_selector, size_t count) {
230
5.38k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
5.38k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
5.38k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
5.38k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
5.38k
        auto result_column = result_type->create_column();
236
237
5.38k
        MutableColumnNullViewScalar<PType> result_column_view =
238
5.38k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
5.38k
        init_result_column(result_column_view, count);
240
241
5.38k
        ColumnNullConstViewScalar<PType> true_column_view =
242
5.38k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
5.38k
        ColumnNullConstViewScalar<PType> false_column_view =
244
5.38k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
5.38k
        result_column_view.insert_from(true_column_view, true_selector);
247
5.38k
        result_column_view.insert_from(false_column_view, false_selector);
248
5.38k
        DCHECK_EQ(result_column->size(), count);
249
5.38k
        return result_column;
250
5.38k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
95
                          const Selector& false_selector, size_t count) {
230
95
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
95
        DCHECK_EQ(true_column->size(), true_selector.size());
232
95
        DCHECK_EQ(false_column->size(), false_selector.size());
233
95
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
95
        auto result_column = result_type->create_column();
236
237
95
        MutableColumnNullViewScalar<PType> result_column_view =
238
95
                MutableColumnNullViewScalar<PType>::create(result_column);
239
95
        init_result_column(result_column_view, count);
240
241
95
        ColumnNullConstViewScalar<PType> true_column_view =
242
95
                ColumnNullConstViewScalar<PType>::create(true_column);
243
95
        ColumnNullConstViewScalar<PType> false_column_view =
244
95
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
95
        result_column_view.insert_from(true_column_view, true_selector);
247
95
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
95
        return result_column;
250
95
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
3.83k
                          const Selector& false_selector, size_t count) {
230
3.83k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
3.83k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
3.83k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
3.83k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
3.83k
        auto result_column = result_type->create_column();
236
237
3.83k
        MutableColumnNullViewScalar<PType> result_column_view =
238
3.83k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
3.83k
        init_result_column(result_column_view, count);
240
241
3.83k
        ColumnNullConstViewScalar<PType> true_column_view =
242
3.83k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
3.83k
        ColumnNullConstViewScalar<PType> false_column_view =
244
3.83k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
3.83k
        result_column_view.insert_from(true_column_view, true_selector);
247
3.83k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
3.83k
        return result_column;
250
3.83k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.12k
                          const Selector& false_selector, size_t count) {
230
1.12k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.12k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.12k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.12k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.12k
        auto result_column = result_type->create_column();
236
237
1.12k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.12k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.12k
        init_result_column(result_column_view, count);
240
241
1.12k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.12k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.12k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.12k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.12k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.12k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.12k
        return result_column;
250
1.12k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
111
                          const Selector& false_selector, size_t count) {
230
111
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
111
        DCHECK_EQ(true_column->size(), true_selector.size());
232
111
        DCHECK_EQ(false_column->size(), false_selector.size());
233
111
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
111
        auto result_column = result_type->create_column();
236
237
111
        MutableColumnNullViewScalar<PType> result_column_view =
238
111
                MutableColumnNullViewScalar<PType>::create(result_column);
239
111
        init_result_column(result_column_view, count);
240
241
111
        ColumnNullConstViewScalar<PType> true_column_view =
242
111
                ColumnNullConstViewScalar<PType>::create(true_column);
243
111
        ColumnNullConstViewScalar<PType> false_column_view =
244
111
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
111
        result_column_view.insert_from(true_column_view, true_selector);
247
111
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
111
        return result_column;
250
111
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
89
                          const Selector& false_selector, size_t count) {
230
89
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
89
        DCHECK_EQ(true_column->size(), true_selector.size());
232
89
        DCHECK_EQ(false_column->size(), false_selector.size());
233
89
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
89
        auto result_column = result_type->create_column();
236
237
89
        MutableColumnNullViewScalar<PType> result_column_view =
238
89
                MutableColumnNullViewScalar<PType>::create(result_column);
239
89
        init_result_column(result_column_view, count);
240
241
89
        ColumnNullConstViewScalar<PType> true_column_view =
242
89
                ColumnNullConstViewScalar<PType>::create(true_column);
243
89
        ColumnNullConstViewScalar<PType> false_column_view =
244
89
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
89
        result_column_view.insert_from(true_column_view, true_selector);
247
89
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
89
        return result_column;
250
89
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
4
                          const Selector& false_selector, size_t count) {
230
4
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4
        auto result_column = result_type->create_column();
236
237
4
        MutableColumnNullViewScalar<PType> result_column_view =
238
4
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4
        init_result_column(result_column_view, count);
240
241
4
        ColumnNullConstViewScalar<PType> true_column_view =
242
4
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4
        ColumnNullConstViewScalar<PType> false_column_view =
244
4
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4
        result_column_view.insert_from(true_column_view, true_selector);
247
4
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
4
        return result_column;
250
4
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
7
                          const Selector& false_selector, size_t count) {
230
7
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
7
        DCHECK_EQ(true_column->size(), true_selector.size());
232
7
        DCHECK_EQ(false_column->size(), false_selector.size());
233
7
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
7
        auto result_column = result_type->create_column();
236
237
7
        MutableColumnNullViewScalar<PType> result_column_view =
238
7
                MutableColumnNullViewScalar<PType>::create(result_column);
239
7
        init_result_column(result_column_view, count);
240
241
7
        ColumnNullConstViewScalar<PType> true_column_view =
242
7
                ColumnNullConstViewScalar<PType>::create(true_column);
243
7
        ColumnNullConstViewScalar<PType> false_column_view =
244
7
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
7
        result_column_view.insert_from(true_column_view, true_selector);
247
7
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
7
        return result_column;
250
7
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
64
                          const Selector& false_selector, size_t count) {
230
64
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
64
        DCHECK_EQ(true_column->size(), true_selector.size());
232
64
        DCHECK_EQ(false_column->size(), false_selector.size());
233
64
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
64
        auto result_column = result_type->create_column();
236
237
64
        MutableColumnNullViewScalar<PType> result_column_view =
238
64
                MutableColumnNullViewScalar<PType>::create(result_column);
239
64
        init_result_column(result_column_view, count);
240
241
64
        ColumnNullConstViewScalar<PType> true_column_view =
242
64
                ColumnNullConstViewScalar<PType>::create(true_column);
243
64
        ColumnNullConstViewScalar<PType> false_column_view =
244
64
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
64
        result_column_view.insert_from(true_column_view, true_selector);
247
64
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
64
        return result_column;
250
64
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
40
                          const Selector& false_selector, size_t count) {
230
40
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
40
        DCHECK_EQ(true_column->size(), true_selector.size());
232
40
        DCHECK_EQ(false_column->size(), false_selector.size());
233
40
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
40
        auto result_column = result_type->create_column();
236
237
40
        MutableColumnNullViewScalar<PType> result_column_view =
238
40
                MutableColumnNullViewScalar<PType>::create(result_column);
239
40
        init_result_column(result_column_view, count);
240
241
40
        ColumnNullConstViewScalar<PType> true_column_view =
242
40
                ColumnNullConstViewScalar<PType>::create(true_column);
243
40
        ColumnNullConstViewScalar<PType> false_column_view =
244
40
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
40
        result_column_view.insert_from(true_column_view, true_selector);
247
40
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
40
        return result_column;
250
40
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
9
                          const Selector& false_selector, size_t count) {
230
9
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
9
        DCHECK_EQ(true_column->size(), true_selector.size());
232
9
        DCHECK_EQ(false_column->size(), false_selector.size());
233
9
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
9
        auto result_column = result_type->create_column();
236
237
9
        MutableColumnNullViewScalar<PType> result_column_view =
238
9
                MutableColumnNullViewScalar<PType>::create(result_column);
239
9
        init_result_column(result_column_view, count);
240
241
9
        ColumnNullConstViewScalar<PType> true_column_view =
242
9
                ColumnNullConstViewScalar<PType>::create(true_column);
243
9
        ColumnNullConstViewScalar<PType> false_column_view =
244
9
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
9
        result_column_view.insert_from(true_column_view, true_selector);
247
9
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
9
        return result_column;
250
9
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
1.77k
                          size_t count) {
255
1.77k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.77k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.77k
                                             return sum + cs.selector.size();
258
1.77k
                                         }));
259
1.77k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.77k
        auto result_column = result_type->create_column();
261
262
1.77k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.77k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.77k
        init_result_column(result_column_view, count);
265
266
6.22k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
6.22k
            if (columns_and_selector.output_nulls()) {
268
11
                result_column_view.insert_null(columns_and_selector.selector);
269
6.21k
            } else {
270
6.21k
                ColumnNullConstViewScalar<PType> from_column_view =
271
6.21k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6.21k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6.21k
            }
274
6.22k
        }
275
1.77k
        DCHECK_EQ(result_column->size(), count);
276
1.77k
        return result_column;
277
1.77k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1.57k
                          size_t count) {
255
1.57k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.57k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.57k
                                             return sum + cs.selector.size();
258
1.57k
                                         }));
259
1.57k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.57k
        auto result_column = result_type->create_column();
261
262
1.57k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.57k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.57k
        init_result_column(result_column_view, count);
265
266
5.87k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5.87k
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
5.87k
            } else {
270
5.87k
                ColumnNullConstViewScalar<PType> from_column_view =
271
5.87k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5.87k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5.87k
            }
274
5.87k
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1.57k
        return result_column;
277
1.57k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
87
                          size_t count) {
255
87
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
87
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
87
                                             return sum + cs.selector.size();
258
87
                                         }));
259
87
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
87
        auto result_column = result_type->create_column();
261
262
87
        MutableColumnNullViewScalar<PType> result_column_view =
263
87
                MutableColumnNullViewScalar<PType>::create(result_column);
264
87
        init_result_column(result_column_view, count);
265
266
153
        for (const auto& columns_and_selector : columns_and_selectors) {
267
153
            if (columns_and_selector.output_nulls()) {
268
10
                result_column_view.insert_null(columns_and_selector.selector);
269
143
            } else {
270
143
                ColumnNullConstViewScalar<PType> from_column_view =
271
143
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
143
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
143
            }
274
153
        }
275
        DCHECK_EQ(result_column->size(), count);
276
87
        return result_column;
277
87
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
7
                          size_t count) {
255
7
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
7
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
7
                                             return sum + cs.selector.size();
258
7
                                         }));
259
7
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
7
        auto result_column = result_type->create_column();
261
262
7
        MutableColumnNullViewScalar<PType> result_column_view =
263
7
                MutableColumnNullViewScalar<PType>::create(result_column);
264
7
        init_result_column(result_column_view, count);
265
266
13
        for (const auto& columns_and_selector : columns_and_selectors) {
267
13
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
13
            } else {
270
13
                ColumnNullConstViewScalar<PType> from_column_view =
271
13
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
13
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
13
            }
274
13
        }
275
        DCHECK_EQ(result_column->size(), count);
276
7
        return result_column;
277
7
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
19
                          size_t count) {
255
19
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
19
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
19
                                             return sum + cs.selector.size();
258
19
                                         }));
259
19
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
19
        auto result_column = result_type->create_column();
261
262
19
        MutableColumnNullViewScalar<PType> result_column_view =
263
19
                MutableColumnNullViewScalar<PType>::create(result_column);
264
19
        init_result_column(result_column_view, count);
265
266
42
        for (const auto& columns_and_selector : columns_and_selectors) {
267
42
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
42
            } else {
270
42
                ColumnNullConstViewScalar<PType> from_column_view =
271
42
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
42
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
42
            }
274
42
        }
275
        DCHECK_EQ(result_column->size(), count);
276
19
        return result_column;
277
19
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
72
                          size_t count) {
255
72
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
72
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
72
                                             return sum + cs.selector.size();
258
72
                                         }));
259
72
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
72
        auto result_column = result_type->create_column();
261
262
72
        MutableColumnNullViewScalar<PType> result_column_view =
263
72
                MutableColumnNullViewScalar<PType>::create(result_column);
264
72
        init_result_column(result_column_view, count);
265
266
112
        for (const auto& columns_and_selector : columns_and_selectors) {
267
112
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
112
            } else {
270
112
                ColumnNullConstViewScalar<PType> from_column_view =
271
112
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
112
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
112
            }
274
112
        }
275
        DCHECK_EQ(result_column->size(), count);
276
72
        return result_column;
277
72
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1
                          size_t count) {
255
1
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1
                                             return sum + cs.selector.size();
258
1
                                         }));
259
1
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1
        auto result_column = result_type->create_column();
261
262
1
        MutableColumnNullViewScalar<PType> result_column_view =
263
1
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1
        init_result_column(result_column_view, count);
265
266
2
        for (const auto& columns_and_selector : columns_and_selectors) {
267
2
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
2
            } else {
270
2
                ColumnNullConstViewScalar<PType> from_column_view =
271
2
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
2
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
2
            }
274
2
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1
        return result_column;
277
1
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
5
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
5
            } else {
270
5
                ColumnNullConstViewScalar<PType> from_column_view =
271
5
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5
            }
274
5
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
10
        for (const auto& columns_and_selector : columns_and_selectors) {
267
10
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
10
            } else {
270
10
                ColumnNullConstViewScalar<PType> from_column_view =
271
10
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
10
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
10
            }
274
10
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
10
                          size_t count) {
255
10
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
10
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
10
                                             return sum + cs.selector.size();
258
10
                                         }));
259
10
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
10
        auto result_column = result_type->create_column();
261
262
10
        MutableColumnNullViewScalar<PType> result_column_view =
263
10
                MutableColumnNullViewScalar<PType>::create(result_column);
264
10
        init_result_column(result_column_view, count);
265
266
14
        for (const auto& columns_and_selector : columns_and_selectors) {
267
14
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
14
            } else {
270
14
                ColumnNullConstViewScalar<PType> from_column_view =
271
14
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
14
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
14
            }
274
14
        }
275
        DCHECK_EQ(result_column->size(), count);
276
10
        return result_column;
277
10
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
278
279
private:
280
    // if result_column is nullable,nullmap will all init to false
281
    static void init_result_column(MutableColumnNullViewScalar<PType>& result_column_view,
282
7.15k
                                   size_t count) {
283
7.15k
        result_column_view.data.resize(count);
284
7.15k
        if (result_column_view.null_map != nullptr) {
285
1.64k
            result_column_view.null_map->resize_fill(count, 0);
286
1.64k
        }
287
7.15k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
95
                                   size_t count) {
283
95
        result_column_view.data.resize(count);
284
95
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
95
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
5.40k
                                   size_t count) {
283
5.40k
        result_column_view.data.resize(count);
284
5.40k
        if (result_column_view.null_map != nullptr) {
285
368
            result_column_view.null_map->resize_fill(count, 0);
286
368
        }
287
5.40k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.21k
                                   size_t count) {
283
1.21k
        result_column_view.data.resize(count);
284
1.21k
        if (result_column_view.null_map != nullptr) {
285
1.08k
            result_column_view.null_map->resize_fill(count, 0);
286
1.08k
        }
287
1.21k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
118
                                   size_t count) {
283
118
        result_column_view.data.resize(count);
284
118
        if (result_column_view.null_map != nullptr) {
285
21
            result_column_view.null_map->resize_fill(count, 0);
286
21
        }
287
118
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Line
Count
Source
282
108
                                   size_t count) {
283
108
        result_column_view.data.resize(count);
284
108
        if (result_column_view.null_map != nullptr) {
285
84
            result_column_view.null_map->resize_fill(count, 0);
286
84
        }
287
108
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
4
                                   size_t count) {
283
4
        result_column_view.data.resize(count);
284
4
        if (result_column_view.null_map != nullptr) {
285
4
            result_column_view.null_map->resize_fill(count, 0);
286
4
        }
287
4
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
79
                                   size_t count) {
283
79
        result_column_view.data.resize(count);
284
79
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
79
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
65
                                   size_t count) {
283
65
        result_column_view.data.resize(count);
284
65
        if (result_column_view.null_map != nullptr) {
285
49
            result_column_view.null_map->resize_fill(count, 0);
286
49
        }
287
65
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
44
                                   size_t count) {
283
44
        result_column_view.data.resize(count);
284
44
        if (result_column_view.null_map != nullptr) {
285
13
            result_column_view.null_map->resize_fill(count, 0);
286
13
        }
287
44
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Line
Count
Source
282
19
                                   size_t count) {
283
19
        result_column_view.data.resize(count);
284
19
        if (result_column_view.null_map != nullptr) {
285
8
            result_column_view.null_map->resize_fill(count, 0);
286
8
        }
287
19
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm
288
};
289
290
// Non-scalar version of fill.
291
// For types that do not support random access, such as string, array, map, etc.
292
struct NonScalarFillWithSelector {
293
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
294
                          const Selector& true_selector, const ColumnPtr& false_column,
295
651
                          const Selector& false_selector, size_t count) {
296
651
        DCHECK_EQ(false_selector.size() + true_selector.size(), count)
297
0
                << "Mismatched selector sizes."
298
0
                << " false selector size: " << false_selector.size()
299
0
                << ", true selector size: " << true_selector.size() << ", count: " << count;
300
651
        DCHECK_EQ(true_column->size(), true_selector.size());
301
651
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
651
        auto result_column = result_type->create_column();
304
305
651
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
651
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
651
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
651
        size_t true_index = 0;
310
651
        size_t false_index = 0;
311
10.2k
        for (size_t i = 0; i < count; ++i) {
312
9.56k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
4.57k
                result_column_view.insert_from(true_column_view, true_index++);
314
4.99k
            } else {
315
4.99k
                result_column_view.insert_from(false_column_view, false_index++);
316
4.99k
            }
317
9.56k
        }
318
319
651
        DCHECK_EQ(result_column->size(), count);
320
651
        return result_column;
321
651
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
286
                          size_t count) {
326
286
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
286
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
286
                                             return sum + cs.selector.size();
329
286
                                         }));
330
286
        struct FillColumnWithPos {
331
286
            std::optional<ColumnNullConstView> source_column;
332
286
            size_t pos_in_source; // position in the column
333
334
4.32k
            void insert_to_column(MutableColumnNullView& result_column) const {
335
4.32k
                if (!source_column) {
336
21
                    result_column.insert_null();
337
4.30k
                } else {
338
4.30k
                    result_column.insert_from(*source_column, pos_in_source);
339
4.30k
                }
340
4.32k
            }
341
286
        };
342
343
286
        auto mutable_result_column = result_type->create_column();
344
286
        mutable_result_column->reserve(count);
345
346
286
        MutableColumnNullView mutable_result_column_view =
347
286
                MutableColumnNullView::create(mutable_result_column);
348
349
286
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
1.34k
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
1.34k
            if (column_with_selector.selector.empty()) {
353
126
                continue;
354
126
            }
355
5.54k
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
4.32k
                size_t result_index = column_with_selector.selector[i];
357
4.32k
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
0
                        << "Position " << result_index << " has been filled already.";
359
4.32k
                if (column_with_selector.column) {
360
4.30k
                    ColumnNullConstView column_view =
361
4.30k
                            ColumnNullConstView::create(column_with_selector.column);
362
4.30k
                    fill_positions[result_index].source_column.emplace(column_view);
363
4.30k
                    fill_positions[result_index].pos_in_source = i;
364
4.30k
                } else {
365
21
                    fill_positions[result_index].source_column = std::nullopt;
366
21
                }
367
4.32k
            }
368
1.22k
        }
369
370
4.32k
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
4.32k
            fill_pos.insert_to_column(mutable_result_column_view);
372
4.32k
        }
373
374
286
        DCHECK_EQ(mutable_result_column->size(), count);
375
286
        return mutable_result_column;
376
286
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
12.6k
            : _selector(selector), _count(count) {}
382
383
    // Iterate over the condition column and generate true_selector and false_selector
384
    // based on null_map and data.
385
386
    template <bool is_const, typename Func>
387
12.6k
    void for_each_with_selector(Func& f) const {
388
12.6k
        if (_selector != nullptr) {
389
5.52k
            const auto& selector_data = *_selector;
390
23.9k
            for (size_t i = 0; i < _count; ++i) {
391
18.4k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
18.4k
            }
393
7.11k
        } else {
394
10.1M
            for (size_t i = 0; i < _count; ++i) {
395
10.1M
                f(index_check_const<is_const>(i), i, i);
396
10.1M
            }
397
7.11k
        }
398
12.6k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
24
    void for_each_with_selector(Func& f) const {
388
24
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
6
            for (size_t i = 0; i < _count; ++i) {
391
4
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
4
            }
393
22
        } else {
394
47
            for (size_t i = 0; i < _count; ++i) {
395
25
                f(index_check_const<is_const>(i), i, i);
396
25
            }
397
22
        }
398
24
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.30k
    void for_each_with_selector(Func& f) const {
388
2.30k
        if (_selector != nullptr) {
389
747
            const auto& selector_data = *_selector;
390
1.55k
            for (size_t i = 0; i < _count; ++i) {
391
804
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
804
            }
393
1.56k
        } else {
394
22.1k
            for (size_t i = 0; i < _count; ++i) {
395
20.5k
                f(index_check_const<is_const>(i), i, i);
396
20.5k
            }
397
1.56k
        }
398
2.30k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
292
    void for_each_with_selector(Func& f) const {
388
292
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
292
        } else {
394
889
            for (size_t i = 0; i < _count; ++i) {
395
597
                f(index_check_const<is_const>(i), i, i);
396
597
            }
397
292
        }
398
292
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
2.94k
    void for_each_with_selector(Func& f) const {
388
2.94k
        if (_selector != nullptr) {
389
137
            const auto& selector_data = *_selector;
390
430
            for (size_t i = 0; i < _count; ++i) {
391
293
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
293
            }
393
2.80k
        } else {
394
10.0M
            for (size_t i = 0; i < _count; ++i) {
395
10.0M
                f(index_check_const<is_const>(i), i, i);
396
10.0M
            }
397
2.80k
        }
398
2.94k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
16
        } else {
394
38
            for (size_t i = 0; i < _count; ++i) {
395
22
                f(index_check_const<is_const>(i), i, i);
396
22
            }
397
16
        }
398
16
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
196
    void for_each_with_selector(Func& f) const {
388
196
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
196
        } else {
394
3.43k
            for (size_t i = 0; i < _count; ++i) {
395
3.23k
                f(index_check_const<is_const>(i), i, i);
396
3.23k
            }
397
196
        }
398
196
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
30
    void for_each_with_selector(Func& f) const {
388
30
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
30
        } else {
394
993
            for (size_t i = 0; i < _count; ++i) {
395
963
                f(index_check_const<is_const>(i), i, i);
396
963
            }
397
30
        }
398
30
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.60k
    void for_each_with_selector(Func& f) const {
388
1.60k
        if (_selector != nullptr) {
389
18
            const auto& selector_data = *_selector;
390
58
            for (size_t i = 0; i < _count; ++i) {
391
40
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
40
            }
393
1.58k
        } else {
394
3.24k
            for (size_t i = 0; i < _count; ++i) {
395
1.66k
                f(index_check_const<is_const>(i), i, i);
396
1.66k
            }
397
1.58k
        }
398
1.60k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
12
    void for_each_with_selector(Func& f) const {
388
12
        if (_selector != nullptr) {
389
12
            const auto& selector_data = *_selector;
390
40
            for (size_t i = 0; i < _count; ++i) {
391
28
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
28
            }
393
12
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
12
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.92k
    void for_each_with_selector(Func& f) const {
388
2.92k
        if (_selector != nullptr) {
389
2.92k
            const auto& selector_data = *_selector;
390
18.4k
            for (size_t i = 0; i < _count; ++i) {
391
15.5k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
15.5k
            }
393
2.92k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2.92k
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.50k
    void for_each_with_selector(Func& f) const {
388
1.50k
        if (_selector != nullptr) {
389
1.50k
            const auto& selector_data = *_selector;
390
3.01k
            for (size_t i = 0; i < _count; ++i) {
391
1.51k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
1.51k
            }
393
1.50k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
1.50k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
8
    void for_each_with_selector(Func& f) const {
388
8
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
6
        } else {
394
12
            for (size_t i = 0; i < _count; ++i) {
395
6
                f(index_check_const<is_const>(i), i, i);
396
6
            }
397
6
        }
398
8
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
453
    void for_each_with_selector(Func& f) const {
388
453
        if (_selector != nullptr) {
389
41
            const auto& selector_data = *_selector;
390
113
            for (size_t i = 0; i < _count; ++i) {
391
72
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
72
            }
393
412
        } else {
394
1.43k
            for (size_t i = 0; i < _count; ++i) {
395
1.02k
                f(index_check_const<is_const>(i), i, i);
396
1.02k
            }
397
412
        }
398
453
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
5
    void for_each_with_selector(Func& f) const {
388
5
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
3
        } else {
394
6
            for (size_t i = 0; i < _count; ++i) {
395
3
                f(index_check_const<is_const>(i), i, i);
396
3
            }
397
3
        }
398
5
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
202
    void for_each_with_selector(Func& f) const {
388
202
        if (_selector != nullptr) {
389
13
            const auto& selector_data = *_selector;
390
32
            for (size_t i = 0; i < _count; ++i) {
391
19
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
19
            }
393
189
        } else {
394
546
            for (size_t i = 0; i < _count; ++i) {
395
357
                f(index_check_const<is_const>(i), i, i);
396
357
            }
397
189
        }
398
202
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
61
    void for_each_with_selector(Func& f) const {
388
61
        if (_selector != nullptr) {
389
61
            const auto& selector_data = *_selector;
390
141
            for (size_t i = 0; i < _count; ++i) {
391
80
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
80
            }
393
61
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
61
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
51
    void for_each_with_selector(Func& f) const {
388
51
        if (_selector != nullptr) {
389
51
            const auto& selector_data = *_selector;
390
114
            for (size_t i = 0; i < _count; ++i) {
391
63
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
63
            }
393
51
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
51
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
6
    void for_each_with_selector(Func& f) const {
388
6
        if (_selector != nullptr) {
389
6
            const auto& selector_data = *_selector;
390
12
            for (size_t i = 0; i < _count; ++i) {
391
6
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
6
            }
393
6
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
6
    }
399
400
private:
401
    const Selector* _selector;
402
    const size_t _count;
403
};
404
405
// Utility class for columns that return boolean values.
406
// We care about whether the value is null, as well as true/false values.
407
struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper {
408
    ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector,
409
                        size_t count)
410
11.8k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
11.8k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
11.8k
                                      size_t count) {
415
11.8k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
11.8k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
11.8k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
11.8k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
11.8k
        if (this->null_map != nullptr) {
422
5.48k
            const auto& null_map_data = *(this->null_map);
423
40.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
40.2k
                if (null_map_data[i]) {
425
278
                    null_func(self_index, executor_index);
426
39.9k
                } else {
427
39.9k
                    if (this->data[i]) {
428
5.59k
                        true_func(self_index, executor_index);
429
34.3k
                    } else {
430
34.3k
                        false_func(self_index, executor_index);
431
34.3k
                    }
432
39.9k
                }
433
40.2k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
21.4k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
21.4k
                if (null_map_data[i]) {
425
162
                    null_func(self_index, executor_index);
426
21.2k
                } else {
427
21.2k
                    if (this->data[i]) {
428
2.20k
                        true_func(self_index, executor_index);
429
19.0k
                    } else {
430
19.0k
                        false_func(self_index, executor_index);
431
19.0k
                    }
432
21.2k
                }
433
21.4k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
3.25k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
3.25k
                if (null_map_data[i]) {
425
64
                    null_func(self_index, executor_index);
426
3.19k
                } else {
427
3.19k
                    if (this->data[i]) {
428
412
                        true_func(self_index, executor_index);
429
2.78k
                    } else {
430
2.78k
                        false_func(self_index, executor_index);
431
2.78k
                    }
432
3.19k
                }
433
3.25k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
15.5k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
15.5k
                if (null_map_data[i]) {
425
52
                    null_func(self_index, executor_index);
426
15.5k
                } else {
427
15.5k
                    if (this->data[i]) {
428
2.97k
                        true_func(self_index, executor_index);
429
12.5k
                    } else {
430
12.5k
                        false_func(self_index, executor_index);
431
12.5k
                    }
432
15.5k
                }
433
15.5k
            };
434
5.48k
            if (is_const) {
435
52
                for_each_with_selector<true>(update);
436
5.43k
            } else {
437
5.43k
                for_each_with_selector<false>(update);
438
5.43k
            }
439
6.37k
        } else {
440
            // non-nullable condition column
441
10.0M
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.0M
                if (this->data[i]) {
443
10.0M
                    true_func(self_index, executor_index);
444
10.0M
                } else {
445
67.7k
                    false_func(self_index, executor_index);
446
67.7k
                }
447
10.0M
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
10.0M
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.0M
                if (this->data[i]) {
443
10.0M
                    true_func(self_index, executor_index);
444
10.0M
                } else {
445
64.8k
                    false_func(self_index, executor_index);
446
64.8k
                }
447
10.0M
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
2.66k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
2.66k
                if (this->data[i]) {
443
1.07k
                    true_func(self_index, executor_index);
444
1.58k
                } else {
445
1.58k
                    false_func(self_index, executor_index);
446
1.58k
                }
447
2.66k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
1.51k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.51k
                if (this->data[i]) {
443
263
                    true_func(self_index, executor_index);
444
1.25k
                } else {
445
1.25k
                    false_func(self_index, executor_index);
446
1.25k
                }
447
1.51k
            };
448
6.37k
            if (is_const) {
449
322
                for_each_with_selector<true>(update);
450
6.05k
            } else {
451
6.05k
                for_each_with_selector<false>(update);
452
6.05k
            }
453
6.37k
        }
454
11.8k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
5.56k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
5.56k
        if (this->null_map != nullptr) {
422
2.33k
            const auto& null_map_data = *(this->null_map);
423
2.33k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.33k
                if (null_map_data[i]) {
425
2.33k
                    null_func(self_index, executor_index);
426
2.33k
                } else {
427
2.33k
                    if (this->data[i]) {
428
2.33k
                        true_func(self_index, executor_index);
429
2.33k
                    } else {
430
2.33k
                        false_func(self_index, executor_index);
431
2.33k
                    }
432
2.33k
                }
433
2.33k
            };
434
2.33k
            if (is_const) {
435
24
                for_each_with_selector<true>(update);
436
2.30k
            } else {
437
2.30k
                for_each_with_selector<false>(update);
438
2.30k
            }
439
3.23k
        } else {
440
            // non-nullable condition column
441
3.23k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
3.23k
                if (this->data[i]) {
443
3.23k
                    true_func(self_index, executor_index);
444
3.23k
                } else {
445
3.23k
                    false_func(self_index, executor_index);
446
3.23k
                }
447
3.23k
            };
448
3.23k
            if (is_const) {
449
292
                for_each_with_selector<true>(update);
450
2.94k
            } else {
451
2.94k
                for_each_with_selector<false>(update);
452
2.94k
            }
453
3.23k
        }
454
5.56k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
1.84k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.84k
        if (this->null_map != nullptr) {
422
212
            const auto& null_map_data = *(this->null_map);
423
212
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
212
                if (null_map_data[i]) {
425
212
                    null_func(self_index, executor_index);
426
212
                } else {
427
212
                    if (this->data[i]) {
428
212
                        true_func(self_index, executor_index);
429
212
                    } else {
430
212
                        false_func(self_index, executor_index);
431
212
                    }
432
212
                }
433
212
            };
434
212
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
196
            } else {
437
196
                for_each_with_selector<false>(update);
438
196
            }
439
1.63k
        } else {
440
            // non-nullable condition column
441
1.63k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.63k
                if (this->data[i]) {
443
1.63k
                    true_func(self_index, executor_index);
444
1.63k
                } else {
445
1.63k
                    false_func(self_index, executor_index);
446
1.63k
                }
447
1.63k
            };
448
1.63k
            if (is_const) {
449
30
                for_each_with_selector<true>(update);
450
1.60k
            } else {
451
1.60k
                for_each_with_selector<false>(update);
452
1.60k
            }
453
1.63k
        }
454
1.84k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_
Line
Count
Source
420
4.44k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.44k
        if (this->null_map != nullptr) {
422
2.94k
            const auto& null_map_data = *(this->null_map);
423
2.94k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.94k
                if (null_map_data[i]) {
425
2.94k
                    null_func(self_index, executor_index);
426
2.94k
                } else {
427
2.94k
                    if (this->data[i]) {
428
2.94k
                        true_func(self_index, executor_index);
429
2.94k
                    } else {
430
2.94k
                        false_func(self_index, executor_index);
431
2.94k
                    }
432
2.94k
                }
433
2.94k
            };
434
2.94k
            if (is_const) {
435
12
                for_each_with_selector<true>(update);
436
2.92k
            } else {
437
2.92k
                for_each_with_selector<false>(update);
438
2.92k
            }
439
2.94k
        } else {
440
            // non-nullable condition column
441
1.50k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.50k
                if (this->data[i]) {
443
1.50k
                    true_func(self_index, executor_index);
444
1.50k
                } else {
445
1.50k
                    false_func(self_index, executor_index);
446
1.50k
                }
447
1.50k
            };
448
1.50k
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
1.50k
            } else {
451
1.50k
                for_each_with_selector<false>(update);
452
1.50k
            }
453
1.50k
        }
454
4.44k
    }
455
};
456
457
// Utility class for columns that return nullable values.
458
// We only care about whether the value is null, not the actual value.
459
struct ConditionColumnNullView : ColumnNullConstView, ConditionColumnViewHelper {
460
    ConditionColumnNullView(ColumnNullConstView base, const Selector* selector, size_t count)
461
790
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
790
                                          size_t count) {
465
790
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
790
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
790
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
786
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
786
        if (this->null_map != nullptr) {
472
729
            const auto& null_map_data = *(this->null_map);
473
1.56k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.56k
                if (null_map_data[i]) {
475
319
                    null_func(self_index, executor_index);
476
1.24k
                } else {
477
1.24k
                    not_null_func(self_index, executor_index);
478
1.24k
                }
479
1.56k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
1.10k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.10k
                if (null_map_data[i]) {
475
159
                    null_func(self_index, executor_index);
476
941
                } else {
477
941
                    not_null_func(self_index, executor_index);
478
941
                }
479
1.10k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
381
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
381
                if (null_map_data[i]) {
475
125
                    null_func(self_index, executor_index);
476
256
                } else {
477
256
                    not_null_func(self_index, executor_index);
478
256
                }
479
381
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
80
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
80
                if (null_map_data[i]) {
475
35
                    null_func(self_index, executor_index);
476
45
                } else {
477
45
                    not_null_func(self_index, executor_index);
478
45
                }
479
80
            };
480
729
            if (is_const) {
481
13
                for_each_with_selector<true>(update);
482
716
            } else {
483
716
                for_each_with_selector<false>(update);
484
716
            }
485
729
        } else {
486
            // non-nullable condition column
487
69
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
69
                not_null_func(self_index, executor_index);
489
69
            };
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE0_clEmmm
Line
Count
Source
487
69
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
69
                not_null_func(self_index, executor_index);
489
69
            };
490
57
            if (is_const) {
491
51
                for_each_with_selector<true>(update);
492
51
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
57
        }
496
786
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_
Line
Count
Source
470
461
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
461
        if (this->null_map != nullptr) {
472
461
            const auto& null_map_data = *(this->null_map);
473
461
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
461
                if (null_map_data[i]) {
475
461
                    null_func(self_index, executor_index);
476
461
                } else {
477
461
                    not_null_func(self_index, executor_index);
478
461
                }
479
461
            };
480
461
            if (is_const) {
481
8
                for_each_with_selector<true>(update);
482
453
            } else {
483
453
                for_each_with_selector<false>(update);
484
453
            }
485
461
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
461
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_
Line
Count
Source
470
207
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
207
        if (this->null_map != nullptr) {
472
207
            const auto& null_map_data = *(this->null_map);
473
207
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
207
                if (null_map_data[i]) {
475
207
                    null_func(self_index, executor_index);
476
207
                } else {
477
207
                    not_null_func(self_index, executor_index);
478
207
                }
479
207
            };
480
207
            if (is_const) {
481
5
                for_each_with_selector<true>(update);
482
202
            } else {
483
202
                for_each_with_selector<false>(update);
484
202
            }
485
207
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
207
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_
Line
Count
Source
470
118
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
118
        if (this->null_map != nullptr) {
472
61
            const auto& null_map_data = *(this->null_map);
473
61
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
61
                if (null_map_data[i]) {
475
61
                    null_func(self_index, executor_index);
476
61
                } else {
477
61
                    not_null_func(self_index, executor_index);
478
61
                }
479
61
            };
480
61
            if (is_const) {
481
0
                for_each_with_selector<true>(update);
482
61
            } else {
483
61
                for_each_with_selector<false>(update);
484
61
            }
485
61
        } else {
486
            // non-nullable condition column
487
57
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
57
                not_null_func(self_index, executor_index);
489
57
            };
490
57
            if (is_const) {
491
51
                for_each_with_selector<true>(update);
492
51
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
57
        }
496
118
    }
497
};
498
499
} // namespace doris