Coverage Report

Created: 2026-07-05 00:16

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, has_null_map will be false and null_map is empty.
31
struct ColumnNullConstView {
32
    const IColumn& column;
33
    NullMapView null_map;
34
    const bool has_null_map;
35
    const bool is_const;
36
37
22
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
38
22
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
39
40
22
        if (const auto* nullable_column =
41
22
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
42
6
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
43
6
                                        .null_map = nullable_column->get_null_map_data(),
44
6
                                        .has_null_map = true,
45
6
                                        .is_const = is_const};
46
16
        } else {
47
16
            return ColumnNullConstView {.column = *from_data_column,
48
16
                                        .null_map = {},
49
16
                                        .has_null_map = false,
50
16
                                        .is_const = is_const};
51
16
        }
52
22
    }
53
};
54
55
// Scalar version stores a reference to the actual data type array for convenient subsequent operations.
56
template <PrimitiveType PType>
57
struct ColumnNullConstViewScalar {
58
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
59
    using ArrayType = typename ColumnType::Container;
60
    using ArrayView = PODArrayView<typename ColumnType::value_type>;
61
62
    ArrayView data;
63
    NullMapView null_map;
64
    const bool has_null_map;
65
    const bool is_const;
66
67
22
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
68
22
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
69
22
        NullMapView null_map;
70
22
        bool has_null_map = false;
71
22
        ArrayView data;
72
22
        if (const auto* nullable_column =
73
22
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
74
6
            null_map = nullable_column->get_null_map_data();
75
6
            has_null_map = true;
76
6
            const auto& nested_from_column = nullable_column->get_nested_column();
77
6
            data = assert_cast<const ColumnType&>(nested_from_column).get_data();
78
16
        } else {
79
16
            data = assert_cast<const ColumnType&>(*from_data_column).get_data();
80
16
        }
81
82
22
        return ColumnNullConstViewScalar {.data = data,
83
22
                                          .null_map = null_map,
84
22
                                          .has_null_map = has_null_map,
85
22
                                          .is_const = is_const};
86
22
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
67
16
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
68
16
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
69
16
        NullMapView null_map;
70
16
        bool has_null_map = false;
71
16
        ArrayView data;
72
16
        if (const auto* nullable_column =
73
16
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
74
4
            null_map = nullable_column->get_null_map_data();
75
4
            has_null_map = true;
76
4
            const auto& nested_from_column = nullable_column->get_nested_column();
77
4
            data = assert_cast<const ColumnType&>(nested_from_column).get_data();
78
12
        } else {
79
12
            data = assert_cast<const ColumnType&>(*from_data_column).get_data();
80
12
        }
81
82
16
        return ColumnNullConstViewScalar {.data = data,
83
16
                                          .null_map = null_map,
84
16
                                          .has_null_map = has_null_map,
85
16
                                          .is_const = is_const};
86
16
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
67
6
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
68
6
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
69
6
        NullMapView null_map;
70
6
        bool has_null_map = false;
71
6
        ArrayView data;
72
6
        if (const auto* nullable_column =
73
6
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
74
2
            null_map = nullable_column->get_null_map_data();
75
2
            has_null_map = true;
76
2
            const auto& nested_from_column = nullable_column->get_nested_column();
77
2
            data = assert_cast<const ColumnType&>(nested_from_column).get_data();
78
4
        } else {
79
4
            data = assert_cast<const ColumnType&>(*from_data_column).get_data();
80
4
        }
81
82
6
        return ColumnNullConstViewScalar {.data = data,
83
6
                                          .null_map = null_map,
84
6
                                          .has_null_map = has_null_map,
85
6
                                          .is_const = is_const};
86
6
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
87
};
88
89
// Used to store a mutable column along with its null_map.
90
// If the input column is not nullable, then null_map will be nullptr.
91
struct MutableColumnNullView {
92
    IColumn& column;
93
    NullMap* null_map;
94
11
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
95
11
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
96
6
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
97
6
                                          .null_map = &nullable_column->get_null_map_data()};
98
6
        } else {
99
5
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
100
5
        }
101
11
    }
102
103
25
    void insert_from(const ColumnNullConstView& from, size_t i) {
104
25
        auto index = index_check_const(i, from.is_const);
105
25
        column.insert_from(from.column, index);
106
25
        if (null_map != nullptr && from.has_null_map) {
107
3
            null_map->push_back(from.null_map[index]);
108
22
        } else if (null_map != nullptr) {
109
            // from is not nullable, so insert 0
110
8
            null_map->push_back(0);
111
8
        }
112
25
    }
113
114
7
    void insert_null() {
115
7
        if (null_map == nullptr) {
116
0
            throw doris::Exception(ErrorCode::INTERNAL_ERROR,
117
0
                                   "Cannot insert null value into non-nullable column in "
118
0
                                   "ShortCircuitCoalesceExpr.");
119
0
        }
120
7
        column.insert_default();
121
7
        null_map->push_back(1);
122
7
    }
123
};
124
125
template <PrimitiveType PType>
126
struct MutableColumnNullViewScalar {
127
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
128
    using ArrayType = typename ColumnType::Container;
129
    using ArrayView = PODArrayView<typename ColumnType::value_type>;
130
131
    ArrayType& data;
132
    NullMap* null_map;
133
134
10
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
135
10
        ColumnType* data_column = nullptr;
136
10
        NullMap* null_map = nullptr;
137
10
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
138
5
            null_map = &nullable_column->get_null_map_data();
139
5
            auto& nested_column = nullable_column->get_nested_column();
140
5
            data_column = &(assert_cast<ColumnType&>(nested_column));
141
5
        } else {
142
5
            data_column = assert_cast<ColumnType*>(column_ptr.get());
143
5
        }
144
145
10
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
146
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
134
10
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
135
10
        ColumnType* data_column = nullptr;
136
10
        NullMap* null_map = nullptr;
137
10
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
138
5
            null_map = &nullable_column->get_null_map_data();
139
5
            auto& nested_column = nullable_column->get_nested_column();
140
5
            data_column = &(assert_cast<ColumnType&>(nested_column));
141
5
        } else {
142
5
            data_column = assert_cast<ColumnType*>(column_ptr.get());
143
5
        }
144
145
10
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
146
10
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
147
148
12
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
149
12
        auto& result_data = data;
150
12
        const auto& from_data = from.data;
151
152
12
        auto* result_null_map_data = null_map;
153
12
        const auto* from_null_map_data = from.has_null_map ? &from.null_map : nullptr;
154
155
12
        if (from.is_const) {
156
1
            insert_into_result<true>(result_data, from_data, result_null_map_data,
157
1
                                     from_null_map_data, selector);
158
11
        } else {
159
11
            insert_into_result<false>(result_data, from_data, result_null_map_data,
160
11
                                      from_null_map_data, selector);
161
11
        }
162
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
148
12
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
149
12
        auto& result_data = data;
150
12
        const auto& from_data = from.data;
151
152
12
        auto* result_null_map_data = null_map;
153
12
        const auto* from_null_map_data = from.has_null_map ? &from.null_map : nullptr;
154
155
12
        if (from.is_const) {
156
1
            insert_into_result<true>(result_data, from_data, result_null_map_data,
157
1
                                     from_null_map_data, selector);
158
11
        } else {
159
11
            insert_into_result<false>(result_data, from_data, result_null_map_data,
160
11
                                      from_null_map_data, selector);
161
11
        }
162
12
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
163
164
    template <bool is_const>
165
    static void insert_into_result(ArrayType& result_data, ArrayView from_data,
166
                                   NullMap* result_null_map_data,
167
                                   const NullMapView* from_null_map_data,
168
12
                                   const Selector& selector) {
169
12
        insert_with_selector<is_const>(result_data, from_data, selector);
170
12
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
171
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
172
2
        }
173
        // Note: When from_null_map_data is nullptr (non-nullable source),
174
        // no action needed since result null_map is already initialized to 0 (non-null)
175
        // by init_result_column's resize_fill(count, 0)
176
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb1EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIiEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                   const Selector& selector) {
169
1
        insert_with_selector<is_const>(result_data, from_data, selector);
170
1
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
171
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
172
0
        }
173
        // Note: When from_null_map_data is nullptr (non-nullable source),
174
        // no action needed since result null_map is already initialized to 0 (non-null)
175
        // by init_result_column's resize_fill(count, 0)
176
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIiEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
11
                                   const Selector& selector) {
169
11
        insert_with_selector<is_const>(result_data, from_data, selector);
170
11
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
171
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
172
2
        }
173
        // Note: When from_null_map_data is nullptr (non-nullable source),
174
        // no action needed since result null_map is already initialized to 0 (non-null)
175
        // by init_result_column's resize_fill(count, 0)
176
11
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEPS8_PKSB_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEPS8_PKSB_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIaEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIaEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIsEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb0EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIsEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIlEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIlEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewInEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewInEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIfEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIfEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEENS_12PODArrayViewIS6_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS9_IhEERKNSB_IjLm4096ESE_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEENS_12PODArrayViewIS6_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS9_IhEERKNSB_IjLm4096ESE_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEENS_12PODArrayViewIS6_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS9_IhEERKNSB_IjLm4096ESE_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEENS_12PODArrayViewIS6_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS9_IhEERKNSB_IjLm4096ESE_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEENS_12PODArrayViewIS5_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS8_IhEERKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEENS_12PODArrayViewIS5_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS8_IhEERKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEENS_12PODArrayViewIS5_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS8_IhEERKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEENS_12PODArrayViewIS5_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNS8_IhEERKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12PODArrayViewIS9_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNSC_IhEERKNSE_IjLm4096ESH_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12PODArrayViewIS9_EEPNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKNSC_IhEERKNSE_IjLm4096ESH_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEPNS4_IhLm4096ES8_Lm16ELm15EEEPKNSB_IhEERKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEPNS4_IhLm4096ES8_Lm16ELm15EEEPKNSB_IhEERKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEPNS4_IhLm4096ESA_Lm16ELm15EEEPKNSD_IhEERKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEPNS4_IhLm4096ESA_Lm16ELm15EEEPKNSD_IhEERKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEPNS4_IhLm4096ESA_Lm16ELm15EEEPKNSD_IhEERKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEPNS4_IhLm4096ESA_Lm16ELm15EEEPKNSD_IhEERKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEPNS4_IhLm4096ES8_Lm16ELm15EEEPKNSB_IhEERKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEPNS4_IhLm4096ES8_Lm16ELm15EEEPKNSB_IhEERKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEPNS4_IhLm4096ES8_Lm16ELm15EEEPKNSB_IhEERKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEPNS4_IhLm4096ES8_Lm16ELm15EEEPKNSB_IhEERKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIjEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIjEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIoEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIoEEPNS4_IhLm4096ES7_Lm16ELm15EEEPKNSA_IhEERKNS4_IjLm4096ES7_Lm16ELm15EEE
177
178
    template <bool is_const>
179
    static void insert_with_selector(auto& result_data, const auto& data,
180
14
                                     const Selector& selector) {
181
40
        for (size_t i = 0; i < selector.size(); ++i) {
182
26
            auto index = selector[i];
183
26
            result_data[index] = data[index_check_const<is_const>(i)];
184
26
        }
185
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIiEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
180
1
                                     const Selector& selector) {
181
4
        for (size_t i = 0; i < selector.size(); ++i) {
182
3
            auto index = selector[i];
183
3
            result_data[index] = data[index_check_const<is_const>(i)];
184
3
        }
185
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIiEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
180
11
                                     const Selector& selector) {
181
31
        for (size_t i = 0; i < selector.size(); ++i) {
182
20
            auto index = selector[i];
183
20
            result_data[index] = data[index_check_const<is_const>(i)];
184
20
        }
185
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
180
2
                                     const Selector& selector) {
181
5
        for (size_t i = 0; i < selector.size(); ++i) {
182
3
            auto index = selector[i];
183
3
            result_data[index] = data[index_check_const<is_const>(i)];
184
3
        }
185
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIaEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIaEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIsEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIsEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIlEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIlEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewInEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewInEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIfEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIfEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEENS_12PODArrayViewIS6_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEENS_12PODArrayViewIS6_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEENS_12PODArrayViewIS6_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEENS_12PODArrayViewIS6_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12PODArrayViewIS9_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEENS_12PODArrayViewIS9_EEEEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEEEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEEEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEEEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS7_EEEEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIdEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIS5_EEEEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIjEEEEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIjEEEEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIoEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIoEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEENS_12PODArrayViewIhEEEEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
186
187
4
    void insert_null(const Selector& selector) {
188
4
        if (selector.empty()) {
189
1
            return;
190
1
        }
191
4
        DCHECK(null_map != nullptr)
192
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
193
194
3
        auto& null_map_data = *null_map;
195
9
        for (size_t i = 0; i < selector.size(); ++i) {
196
6
            null_map_data[selector[i]] = 1;
197
6
        }
198
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
187
4
    void insert_null(const Selector& selector) {
188
4
        if (selector.empty()) {
189
1
            return;
190
1
        }
191
4
        DCHECK(null_map != nullptr)
192
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
193
194
3
        auto& null_map_data = *null_map;
195
9
        for (size_t i = 0; i < selector.size(); ++i) {
196
6
            null_map_data[selector[i]] = 1;
197
6
        }
198
3
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
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
199
};
200
201
// Used to store a column and its corresponding selector.
202
// It can be understood as: the positions selected by the selector in the result column correspond to the column inside.
203
// column = filter_column_with_selector(result_column, selector)
204
// What we need to do is fill these positions back into the result column (in a sense, it can be seen as restoring them).
205
// 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.
206
struct ColumnAndSelector {
207
    ColumnPtr column = nullptr;
208
    Selector selector; // positions in result column
209
210
9
    bool output_nulls() const { return column.get() == nullptr; }
211
212
3
    std::string debug_string() const {
213
3
        std::stringstream ss;
214
3
        ss << "ColumnAndSelector(selector_size=" << selector.size()
215
3
           << ", output_nulls=" << output_nulls()
216
3
           << ", column size=" << (column ? std::to_string(column->size()) : "null") << ")";
217
218
3
        ss << "\n selector data: [";
219
8
        for (size_t i = 0; i < selector.size(); ++i) {
220
5
            if (i != 0) {
221
3
                ss << ", ";
222
3
            }
223
5
            ss << selector[i];
224
5
        }
225
3
        ss << "]";
226
3
        return ss.str();
227
3
    }
228
};
229
230
// Scalar version of fill.
231
// Initializes the result column at the beginning.
232
// Subsequently fills data from each column into the result column using selectors.
233
template <PrimitiveType PType>
234
struct ScalarFillWithSelector {
235
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
236
    using ArrayType = typename ColumnType::Container;
237
238
public:
239
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
240
                          const Selector& true_selector, const ColumnPtr& false_column,
241
4
                          const Selector& false_selector, size_t count) {
242
4
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
243
4
        DCHECK_EQ(true_column->size(), true_selector.size());
244
4
        DCHECK_EQ(false_column->size(), false_selector.size());
245
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
246
247
4
        auto result_column = result_type->create_column();
248
249
4
        MutableColumnNullViewScalar<PType> result_column_view =
250
4
                MutableColumnNullViewScalar<PType>::create(result_column);
251
4
        init_result_column(result_column_view, count);
252
253
4
        ColumnNullConstViewScalar<PType> true_column_view =
254
4
                ColumnNullConstViewScalar<PType>::create(true_column);
255
4
        ColumnNullConstViewScalar<PType> false_column_view =
256
4
                ColumnNullConstViewScalar<PType>::create(false_column);
257
258
4
        result_column_view.insert_from(true_column_view, true_selector);
259
4
        result_column_view.insert_from(false_column_view, false_selector);
260
4
        DCHECK_EQ(result_column->size(), count);
261
4
        return result_column;
262
4
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
241
4
                          const Selector& false_selector, size_t count) {
242
4
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
243
4
        DCHECK_EQ(true_column->size(), true_selector.size());
244
4
        DCHECK_EQ(false_column->size(), false_selector.size());
245
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
246
247
4
        auto result_column = result_type->create_column();
248
249
4
        MutableColumnNullViewScalar<PType> result_column_view =
250
4
                MutableColumnNullViewScalar<PType>::create(result_column);
251
4
        init_result_column(result_column_view, count);
252
253
4
        ColumnNullConstViewScalar<PType> true_column_view =
254
4
                ColumnNullConstViewScalar<PType>::create(true_column);
255
4
        ColumnNullConstViewScalar<PType> false_column_view =
256
4
                ColumnNullConstViewScalar<PType>::create(false_column);
257
258
4
        result_column_view.insert_from(true_column_view, true_selector);
259
4
        result_column_view.insert_from(false_column_view, false_selector);
260
        DCHECK_EQ(result_column->size(), count);
261
4
        return result_column;
262
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
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
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
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
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
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
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
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
263
264
    static ColumnPtr fill(const DataTypePtr& result_type,
265
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
266
2
                          size_t count) {
267
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
268
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
269
2
                                             return sum + cs.selector.size();
270
2
                                         }));
271
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
272
2
        auto result_column = result_type->create_column();
273
274
2
        MutableColumnNullViewScalar<PType> result_column_view =
275
2
                MutableColumnNullViewScalar<PType>::create(result_column);
276
2
        init_result_column(result_column_view, count);
277
278
4
        for (const auto& columns_and_selector : columns_and_selectors) {
279
4
            if (columns_and_selector.output_nulls()) {
280
2
                result_column_view.insert_null(columns_and_selector.selector);
281
2
            } else {
282
2
                ColumnNullConstViewScalar<PType> from_column_view =
283
2
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
284
2
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
285
2
            }
286
4
        }
287
2
        DCHECK_EQ(result_column->size(), count);
288
2
        return result_column;
289
2
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
266
2
                          size_t count) {
267
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
268
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
269
2
                                             return sum + cs.selector.size();
270
2
                                         }));
271
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
272
2
        auto result_column = result_type->create_column();
273
274
2
        MutableColumnNullViewScalar<PType> result_column_view =
275
2
                MutableColumnNullViewScalar<PType>::create(result_column);
276
2
        init_result_column(result_column_view, count);
277
278
4
        for (const auto& columns_and_selector : columns_and_selectors) {
279
4
            if (columns_and_selector.output_nulls()) {
280
2
                result_column_view.insert_null(columns_and_selector.selector);
281
2
            } else {
282
2
                ColumnNullConstViewScalar<PType> from_column_view =
283
2
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
284
2
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
285
2
            }
286
4
        }
287
        DCHECK_EQ(result_column->size(), count);
288
2
        return result_column;
289
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
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
290
291
private:
292
    // if result_column is nullable,nullmap will all init to false
293
    static void init_result_column(MutableColumnNullViewScalar<PType>& result_column_view,
294
6
                                   size_t count) {
295
6
        result_column_view.data.resize(count);
296
6
        if (result_column_view.null_map != nullptr) {
297
3
            result_column_view.null_map->resize_fill(count, 0);
298
3
        }
299
6
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
294
6
                                   size_t count) {
295
6
        result_column_view.data.resize(count);
296
6
        if (result_column_view.null_map != nullptr) {
297
3
            result_column_view.null_map->resize_fill(count, 0);
298
3
        }
299
6
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm
300
};
301
302
// Non-scalar version of fill.
303
// For types that do not support random access, such as string, array, map, etc.
304
struct NonScalarFillWithSelector {
305
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
306
                          const Selector& true_selector, const ColumnPtr& false_column,
307
2
                          const Selector& false_selector, size_t count) {
308
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count)
309
0
                << "Mismatched selector sizes."
310
0
                << " false selector size: " << false_selector.size()
311
0
                << ", true selector size: " << true_selector.size() << ", count: " << count;
312
2
        DCHECK_EQ(true_column->size(), true_selector.size());
313
2
        DCHECK_EQ(false_column->size(), false_selector.size());
314
315
2
        auto result_column = result_type->create_column();
316
317
2
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
318
2
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
319
2
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
320
321
2
        size_t true_index = 0;
322
2
        size_t false_index = 0;
323
10
        for (size_t i = 0; i < count; ++i) {
324
8
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
325
4
                result_column_view.insert_from(true_column_view, true_index++);
326
4
            } else {
327
4
                result_column_view.insert_from(false_column_view, false_index++);
328
4
            }
329
8
        }
330
331
2
        DCHECK_EQ(result_column->size(), count);
332
2
        return result_column;
333
2
    }
334
335
    static ColumnPtr fill(const DataTypePtr& result_type,
336
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
337
4
                          size_t count) {
338
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
339
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
340
4
                                             return sum + cs.selector.size();
341
4
                                         }));
342
4
        struct FillColumnWithPos {
343
4
            std::optional<ColumnNullConstView> source_column;
344
4
            size_t pos_in_source; // position in the column
345
346
10
            void insert_to_column(MutableColumnNullView& result_column) const {
347
10
                if (!source_column) {
348
5
                    result_column.insert_null();
349
5
                } else {
350
5
                    result_column.insert_from(*source_column, pos_in_source);
351
5
                }
352
10
            }
353
4
        };
354
355
4
        auto mutable_result_column = result_type->create_column();
356
4
        mutable_result_column->reserve(count);
357
358
4
        MutableColumnNullView mutable_result_column_view =
359
4
                MutableColumnNullView::create(mutable_result_column);
360
361
4
        std::vector<FillColumnWithPos> fill_positions(count);
362
363
7
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
364
7
            if (column_with_selector.selector.empty()) {
365
1
                continue;
366
1
            }
367
16
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
368
10
                size_t result_index = column_with_selector.selector[i];
369
10
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
370
0
                        << "Position " << result_index << " has been filled already.";
371
10
                if (column_with_selector.column) {
372
5
                    ColumnNullConstView column_view =
373
5
                            ColumnNullConstView::create(column_with_selector.column);
374
5
                    fill_positions[result_index].source_column.emplace(column_view);
375
5
                    fill_positions[result_index].pos_in_source = i;
376
5
                } else {
377
5
                    fill_positions[result_index].source_column = std::nullopt;
378
5
                }
379
10
            }
380
6
        }
381
382
10
        for (const FillColumnWithPos& fill_pos : fill_positions) {
383
10
            fill_pos.insert_to_column(mutable_result_column_view);
384
10
        }
385
386
4
        DCHECK_EQ(mutable_result_column->size(), count);
387
4
        return mutable_result_column;
388
4
    }
389
};
390
391
struct ConditionColumnViewHelper {
392
    ConditionColumnViewHelper(const Selector* selector, size_t count)
393
11
            : _selector(selector), _count(count) {}
394
395
    // Iterate over the condition column and generate true_selector and false_selector
396
    // based on null_map and data.
397
398
    template <bool is_const, typename Func>
399
11
    void for_each_with_selector(Func& f) const {
400
11
        if (_selector != nullptr) {
401
2
            const auto& selector_data = *_selector;
402
7
            for (size_t i = 0; i < _count; ++i) {
403
5
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
5
            }
405
9
        } else {
406
44
            for (size_t i = 0; i < _count; ++i) {
407
35
                f(index_check_const<is_const>(i), i, i);
408
35
            }
409
9
        }
410
11
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
5
            for (size_t i = 0; i < _count; ++i) {
407
4
                f(index_check_const<is_const>(i), i, i);
408
4
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
5
            for (size_t i = 0; i < _count; ++i) {
407
4
                f(index_check_const<is_const>(i), i, i);
408
4
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
1
            const auto& selector_data = *_selector;
402
3
            for (size_t i = 0; i < _count; ++i) {
403
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
2
            }
405
1
        } else {
406
0
            for (size_t i = 0; i < _count; ++i) {
407
0
                f(index_check_const<is_const>(i), i, i);
408
0
            }
409
0
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
6
            for (size_t i = 0; i < _count; ++i) {
407
5
                f(index_check_const<is_const>(i), i, i);
408
5
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
4
            for (size_t i = 0; i < _count; ++i) {
407
3
                f(index_check_const<is_const>(i), i, i);
408
3
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
4
            for (size_t i = 0; i < _count; ++i) {
407
3
                f(index_check_const<is_const>(i), i, i);
408
3
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1ZNS4_8TestBodyEvE3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSB_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
5
            for (size_t i = 0; i < _count; ++i) {
407
4
                f(index_check_const<is_const>(i), i, i);
408
4
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
6
            for (size_t i = 0; i < _count; ++i) {
407
5
                f(index_check_const<is_const>(i), i, i);
408
5
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
1
            const auto& selector_data = *_selector;
402
4
            for (size_t i = 0; i < _count; ++i) {
403
3
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
3
            }
405
1
        } else {
406
0
            for (size_t i = 0; i < _count; ++i) {
407
0
                f(index_check_const<is_const>(i), i, i);
408
0
            }
409
0
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
5
            for (size_t i = 0; i < _count; ++i) {
407
4
                f(index_check_const<is_const>(i), i, i);
408
4
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Line
Count
Source
399
1
    void for_each_with_selector(Func& f) const {
400
1
        if (_selector != nullptr) {
401
0
            const auto& selector_data = *_selector;
402
0
            for (size_t i = 0; i < _count; ++i) {
403
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
404
0
            }
405
1
        } else {
406
4
            for (size_t i = 0; i < _count; ++i) {
407
3
                f(index_check_const<is_const>(i), i, i);
408
3
            }
409
1
        }
410
1
    }
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Unexecuted instantiation: short_circuit_util_test.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS4_8TestBodyEvE3$_1EEvRT_RT0_EUlmmmE0_EEvSA_
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
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$_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_
Unexecuted instantiation: 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_
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$_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_
Unexecuted instantiation: 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_
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_EUlmmmE_EEvSP_
Unexecuted instantiation: 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_
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_
Unexecuted instantiation: 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_
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_EUlmmmE_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_EUlmmmE_EEvSO_
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_
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_EUlmmmE_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_EUlmmmE_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$_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_
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$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_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_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$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
411
412
private:
413
    const Selector* _selector;
414
    const size_t _count;
415
};
416
417
// Utility class for columns that return boolean values.
418
// We care about whether the value is null, as well as true/false values.
419
struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper {
420
    ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector,
421
                        size_t count)
422
6
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
423
6
              ConditionColumnViewHelper(selector, count) {}
424
425
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
426
6
                                      size_t count) {
427
6
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
428
6
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
429
6
    }
430
431
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
432
6
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
6
        if (this->has_null_map) {
434
2
            const auto null_map_data = this->null_map;
435
7
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
7
                if (null_map_data[i]) {
437
5
                    null_func(self_index, executor_index);
438
5
                } else {
439
2
                    if (this->data[i]) {
440
1
                        true_func(self_index, executor_index);
441
1
                    } else {
442
1
                        false_func(self_index, executor_index);
443
1
                    }
444
2
                }
445
7
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
435
4
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
4
                if (null_map_data[i]) {
437
2
                    null_func(self_index, executor_index);
438
2
                } else {
439
2
                    if (this->data[i]) {
440
1
                        true_func(self_index, executor_index);
441
1
                    } else {
442
1
                        false_func(self_index, executor_index);
443
1
                    }
444
2
                }
445
4
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
435
3
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
3
                if (null_map_data[i]) {
437
3
                    null_func(self_index, executor_index);
438
3
                } else {
439
0
                    if (this->data[i]) {
440
0
                        true_func(self_index, executor_index);
441
0
                    } else {
442
0
                        false_func(self_index, executor_index);
443
0
                    }
444
0
                }
445
3
            };
Unexecuted instantiation: 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
Unexecuted instantiation: 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
Unexecuted instantiation: 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
446
2
            if (is_const) {
447
1
                for_each_with_selector<true>(update);
448
1
            } else {
449
1
                for_each_with_selector<false>(update);
450
1
            }
451
4
        } else {
452
            // non-nullable condition column
453
14
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
14
                if (this->data[i]) {
455
8
                    true_func(self_index, executor_index);
456
8
                } else {
457
6
                    false_func(self_index, executor_index);
458
6
                }
459
14
            };
short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
453
4
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
4
                if (this->data[i]) {
455
2
                    true_func(self_index, executor_index);
456
2
                } else {
457
2
                    false_func(self_index, executor_index);
458
2
                }
459
4
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
453
2
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
2
                if (this->data[i]) {
455
1
                    true_func(self_index, executor_index);
456
1
                } else {
457
1
                    false_func(self_index, executor_index);
458
1
                }
459
2
            };
short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
453
5
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
5
                if (this->data[i]) {
455
5
                    true_func(self_index, executor_index);
456
5
                } else {
457
0
                    false_func(self_index, executor_index);
458
0
                }
459
5
            };
short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
453
3
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
3
                if (this->data[i]) {
455
0
                    true_func(self_index, executor_index);
456
3
                } else {
457
3
                    false_func(self_index, executor_index);
458
3
                }
459
3
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Unexecuted instantiation: 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
Unexecuted instantiation: 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
Unexecuted instantiation: 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
460
4
            if (is_const) {
461
2
                for_each_with_selector<true>(update);
462
2
            } else {
463
2
                for_each_with_selector<false>(update);
464
2
            }
465
4
        }
466
6
    }
short_circuit_util_test.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_
Line
Count
Source
432
1
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
1
        if (this->has_null_map) {
434
0
            const auto null_map_data = this->null_map;
435
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
0
                if (null_map_data[i]) {
437
0
                    null_func(self_index, executor_index);
438
0
                } else {
439
0
                    if (this->data[i]) {
440
0
                        true_func(self_index, executor_index);
441
0
                    } else {
442
0
                        false_func(self_index, executor_index);
443
0
                    }
444
0
                }
445
0
            };
446
0
            if (is_const) {
447
0
                for_each_with_selector<true>(update);
448
0
            } else {
449
0
                for_each_with_selector<false>(update);
450
0
            }
451
1
        } else {
452
            // non-nullable condition column
453
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
1
                if (this->data[i]) {
455
1
                    true_func(self_index, executor_index);
456
1
                } else {
457
1
                    false_func(self_index, executor_index);
458
1
                }
459
1
            };
460
1
            if (is_const) {
461
0
                for_each_with_selector<true>(update);
462
1
            } else {
463
1
                for_each_with_selector<false>(update);
464
1
            }
465
1
        }
466
1
    }
short_circuit_util_test.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_66ShortCircuitUtilTest_ConditionColumnView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_
Line
Count
Source
432
1
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
1
        if (this->has_null_map) {
434
1
            const auto null_map_data = this->null_map;
435
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
1
                if (null_map_data[i]) {
437
1
                    null_func(self_index, executor_index);
438
1
                } else {
439
1
                    if (this->data[i]) {
440
1
                        true_func(self_index, executor_index);
441
1
                    } else {
442
1
                        false_func(self_index, executor_index);
443
1
                    }
444
1
                }
445
1
            };
446
1
            if (is_const) {
447
0
                for_each_with_selector<true>(update);
448
1
            } else {
449
1
                for_each_with_selector<false>(update);
450
1
            }
451
1
        } else {
452
            // non-nullable condition column
453
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
0
                if (this->data[i]) {
455
0
                    true_func(self_index, executor_index);
456
0
                } else {
457
0
                    false_func(self_index, executor_index);
458
0
                }
459
0
            };
460
0
            if (is_const) {
461
0
                for_each_with_selector<true>(update);
462
0
            } else {
463
0
                for_each_with_selector<false>(update);
464
0
            }
465
0
        }
466
1
    }
short_circuit_util_test.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_59ShortCircuitUtilTest_ConditionColumnView_with_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_
Line
Count
Source
432
1
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
1
        if (this->has_null_map) {
434
0
            const auto null_map_data = this->null_map;
435
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
0
                if (null_map_data[i]) {
437
0
                    null_func(self_index, executor_index);
438
0
                } else {
439
0
                    if (this->data[i]) {
440
0
                        true_func(self_index, executor_index);
441
0
                    } else {
442
0
                        false_func(self_index, executor_index);
443
0
                    }
444
0
                }
445
0
            };
446
0
            if (is_const) {
447
0
                for_each_with_selector<true>(update);
448
0
            } else {
449
0
                for_each_with_selector<false>(update);
450
0
            }
451
1
        } else {
452
            // non-nullable condition column
453
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
1
                if (this->data[i]) {
455
1
                    true_func(self_index, executor_index);
456
1
                } else {
457
1
                    false_func(self_index, executor_index);
458
1
                }
459
1
            };
460
1
            if (is_const) {
461
0
                for_each_with_selector<true>(update);
462
1
            } else {
463
1
                for_each_with_selector<false>(update);
464
1
            }
465
1
        }
466
1
    }
short_circuit_util_test.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_true_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_
Line
Count
Source
432
1
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
1
        if (this->has_null_map) {
434
0
            const auto null_map_data = this->null_map;
435
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
0
                if (null_map_data[i]) {
437
0
                    null_func(self_index, executor_index);
438
0
                } else {
439
0
                    if (this->data[i]) {
440
0
                        true_func(self_index, executor_index);
441
0
                    } else {
442
0
                        false_func(self_index, executor_index);
443
0
                    }
444
0
                }
445
0
            };
446
0
            if (is_const) {
447
0
                for_each_with_selector<true>(update);
448
0
            } else {
449
0
                for_each_with_selector<false>(update);
450
0
            }
451
1
        } else {
452
            // non-nullable condition column
453
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
1
                if (this->data[i]) {
455
1
                    true_func(self_index, executor_index);
456
1
                } else {
457
1
                    false_func(self_index, executor_index);
458
1
                }
459
1
            };
460
1
            if (is_const) {
461
1
                for_each_with_selector<true>(update);
462
1
            } else {
463
0
                for_each_with_selector<false>(update);
464
0
            }
465
1
        }
466
1
    }
short_circuit_util_test.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_57ShortCircuitUtilTest_ConditionColumnView_const_false_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_
Line
Count
Source
432
1
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
1
        if (this->has_null_map) {
434
0
            const auto null_map_data = this->null_map;
435
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
0
                if (null_map_data[i]) {
437
0
                    null_func(self_index, executor_index);
438
0
                } else {
439
0
                    if (this->data[i]) {
440
0
                        true_func(self_index, executor_index);
441
0
                    } else {
442
0
                        false_func(self_index, executor_index);
443
0
                    }
444
0
                }
445
0
            };
446
0
            if (is_const) {
447
0
                for_each_with_selector<true>(update);
448
0
            } else {
449
0
                for_each_with_selector<false>(update);
450
0
            }
451
1
        } else {
452
            // non-nullable condition column
453
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
1
                if (this->data[i]) {
455
1
                    true_func(self_index, executor_index);
456
1
                } else {
457
1
                    false_func(self_index, executor_index);
458
1
                }
459
1
            };
460
1
            if (is_const) {
461
1
                for_each_with_selector<true>(update);
462
1
            } else {
463
0
                for_each_with_selector<false>(update);
464
0
            }
465
1
        }
466
1
    }
short_circuit_util_test.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_56ShortCircuitUtilTest_ConditionColumnView_const_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1ZNS2_8TestBodyEvE3$_2EEvRT_RT0_RT1_
Line
Count
Source
432
1
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
433
1
        if (this->has_null_map) {
434
1
            const auto null_map_data = this->null_map;
435
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
436
1
                if (null_map_data[i]) {
437
1
                    null_func(self_index, executor_index);
438
1
                } else {
439
1
                    if (this->data[i]) {
440
1
                        true_func(self_index, executor_index);
441
1
                    } else {
442
1
                        false_func(self_index, executor_index);
443
1
                    }
444
1
                }
445
1
            };
446
1
            if (is_const) {
447
1
                for_each_with_selector<true>(update);
448
1
            } else {
449
0
                for_each_with_selector<false>(update);
450
0
            }
451
1
        } else {
452
            // non-nullable condition column
453
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
454
0
                if (this->data[i]) {
455
0
                    true_func(self_index, executor_index);
456
0
                } else {
457
0
                    false_func(self_index, executor_index);
458
0
                }
459
0
            };
460
0
            if (is_const) {
461
0
                for_each_with_selector<true>(update);
462
0
            } else {
463
0
                for_each_with_selector<false>(update);
464
0
            }
465
0
        }
466
1
    }
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
467
};
468
469
// Utility class for columns that return nullable values.
470
// We only care about whether the value is null, not the actual value.
471
struct ConditionColumnNullView : ColumnNullConstView, ConditionColumnViewHelper {
472
    ConditionColumnNullView(ColumnNullConstView base, const Selector* selector, size_t count)
473
5
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
474
475
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
476
5
                                          size_t count) {
477
5
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
478
5
        return {ColumnNullConstView::create(column_ptr), selector, count};
479
5
    }
480
481
    template <typename NullFunc, typename NotNullFunc>
482
5
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
483
5
        if (this->has_null_map) {
484
3
            const auto null_map_data = this->null_map;
485
11
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
11
                if (null_map_data[i]) {
487
6
                    null_func(self_index, executor_index);
488
6
                } else {
489
5
                    not_null_func(self_index, executor_index);
490
5
                }
491
11
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
485
5
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
5
                if (null_map_data[i]) {
487
2
                    null_func(self_index, executor_index);
488
3
                } else {
489
3
                    not_null_func(self_index, executor_index);
490
3
                }
491
5
            };
short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
485
3
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
3
                if (null_map_data[i]) {
487
1
                    null_func(self_index, executor_index);
488
2
                } else {
489
2
                    not_null_func(self_index, executor_index);
490
2
                }
491
3
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
485
3
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
3
                if (null_map_data[i]) {
487
3
                    null_func(self_index, executor_index);
488
3
                } else {
489
0
                    not_null_func(self_index, executor_index);
490
0
                }
491
3
            };
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_ENKUlmmmE_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_ENKUlmmmE_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$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE_clEmmm
492
3
            if (is_const) {
493
1
                for_each_with_selector<true>(update);
494
2
            } else {
495
2
                for_each_with_selector<false>(update);
496
2
            }
497
3
        } else {
498
            // non-nullable condition column
499
8
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
8
                not_null_func(self_index, executor_index);
501
8
            };
short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Line
Count
Source
499
4
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
4
                not_null_func(self_index, executor_index);
501
4
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Line
Count
Source
499
4
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
4
                not_null_func(self_index, executor_index);
501
4
            };
Unexecuted instantiation: short_circuit_util_test.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
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
Unexecuted instantiation: 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
502
2
            if (is_const) {
503
1
                for_each_with_selector<true>(update);
504
1
            } else {
505
1
                for_each_with_selector<false>(update);
506
1
            }
507
2
        }
508
5
    }
short_circuit_util_test.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_74ShortCircuitUtilTest_ConditionColumnNullView_non_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_
Line
Count
Source
482
1
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
483
1
        if (this->has_null_map) {
484
0
            const auto null_map_data = this->null_map;
485
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
0
                if (null_map_data[i]) {
487
0
                    null_func(self_index, executor_index);
488
0
                } else {
489
0
                    not_null_func(self_index, executor_index);
490
0
                }
491
0
            };
492
0
            if (is_const) {
493
0
                for_each_with_selector<true>(update);
494
0
            } else {
495
0
                for_each_with_selector<false>(update);
496
0
            }
497
1
        } else {
498
            // non-nullable condition column
499
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
1
                not_null_func(self_index, executor_index);
501
1
            };
502
1
            if (is_const) {
503
0
                for_each_with_selector<true>(update);
504
1
            } else {
505
1
                for_each_with_selector<false>(update);
506
1
            }
507
1
        }
508
1
    }
short_circuit_util_test.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_70ShortCircuitUtilTest_ConditionColumnNullView_nullable_no_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_
Line
Count
Source
482
1
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
483
1
        if (this->has_null_map) {
484
1
            const auto null_map_data = this->null_map;
485
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
1
                if (null_map_data[i]) {
487
1
                    null_func(self_index, executor_index);
488
1
                } else {
489
1
                    not_null_func(self_index, executor_index);
490
1
                }
491
1
            };
492
1
            if (is_const) {
493
0
                for_each_with_selector<true>(update);
494
1
            } else {
495
1
                for_each_with_selector<false>(update);
496
1
            }
497
1
        } else {
498
            // non-nullable condition column
499
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
0
                not_null_func(self_index, executor_index);
501
0
            };
502
0
            if (is_const) {
503
0
                for_each_with_selector<true>(update);
504
0
            } else {
505
0
                for_each_with_selector<false>(update);
506
0
            }
507
0
        }
508
1
    }
short_circuit_util_test.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_63ShortCircuitUtilTest_ConditionColumnNullView_with_selector_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_
Line
Count
Source
482
1
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
483
1
        if (this->has_null_map) {
484
1
            const auto null_map_data = this->null_map;
485
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
1
                if (null_map_data[i]) {
487
1
                    null_func(self_index, executor_index);
488
1
                } else {
489
1
                    not_null_func(self_index, executor_index);
490
1
                }
491
1
            };
492
1
            if (is_const) {
493
0
                for_each_with_selector<true>(update);
494
1
            } else {
495
1
                for_each_with_selector<false>(update);
496
1
            }
497
1
        } else {
498
            // non-nullable condition column
499
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
0
                not_null_func(self_index, executor_index);
501
0
            };
502
0
            if (is_const) {
503
0
                for_each_with_selector<true>(update);
504
0
            } else {
505
0
                for_each_with_selector<false>(update);
506
0
            }
507
0
        }
508
1
    }
short_circuit_util_test.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_64ShortCircuitUtilTest_ConditionColumnNullView_const_not_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_
Line
Count
Source
482
1
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
483
1
        if (this->has_null_map) {
484
0
            const auto null_map_data = this->null_map;
485
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
0
                if (null_map_data[i]) {
487
0
                    null_func(self_index, executor_index);
488
0
                } else {
489
0
                    not_null_func(self_index, executor_index);
490
0
                }
491
0
            };
492
0
            if (is_const) {
493
0
                for_each_with_selector<true>(update);
494
0
            } else {
495
0
                for_each_with_selector<false>(update);
496
0
            }
497
1
        } else {
498
            // non-nullable condition column
499
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
1
                not_null_func(self_index, executor_index);
501
1
            };
502
1
            if (is_const) {
503
1
                for_each_with_selector<true>(update);
504
1
            } else {
505
0
                for_each_with_selector<false>(update);
506
0
            }
507
1
        }
508
1
    }
short_circuit_util_test.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_60ShortCircuitUtilTest_ConditionColumnNullView_const_null_Test8TestBodyEvE3$_0ZNS2_8TestBodyEvE3$_1EEvRT_RT0_
Line
Count
Source
482
1
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
483
1
        if (this->has_null_map) {
484
1
            const auto null_map_data = this->null_map;
485
1
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
486
1
                if (null_map_data[i]) {
487
1
                    null_func(self_index, executor_index);
488
1
                } else {
489
1
                    not_null_func(self_index, executor_index);
490
1
                }
491
1
            };
492
1
            if (is_const) {
493
1
                for_each_with_selector<true>(update);
494
1
            } else {
495
0
                for_each_with_selector<false>(update);
496
0
            }
497
1
        } else {
498
            // non-nullable condition column
499
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
500
0
                not_null_func(self_index, executor_index);
501
0
            };
502
0
            if (is_const) {
503
0
                for_each_with_selector<true>(update);
504
0
            } else {
505
0
                for_each_with_selector<false>(update);
506
0
            }
507
0
        }
508
1
    }
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
Unexecuted instantiation: 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_
509
};
510
511
} // namespace doris