Coverage Report

Created: 2026-03-31 14:24

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/short_circuit_util.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
#include "core/block/column_with_type_and_name.h"
20
#include "core/column/column.h"
21
#include "core/column/column_const.h"
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_vector.h"
24
#include "core/field.h"
25
#include "exprs/vexpr.h"
26
27
namespace doris {
28
29
// Used to store a column along with its null_map and whether it is a const column.
30
// If the input column is not nullable, then null_map will be nullptr.
31
struct ColumnNullConstView {
32
    const IColumn& column;
33
    const NullMap* null_map;
34
    const bool is_const;
35
36
2.83k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
2.83k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
2.83k
        if (const auto* nullable_column =
40
2.83k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
1.58k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
1.58k
                                        .null_map = &nullable_column->get_null_map_data(),
43
1.58k
                                        .is_const = is_const};
44
1.58k
        } else {
45
1.25k
            return ColumnNullConstView {
46
1.25k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
1.25k
        }
48
2.83k
    }
49
};
50
51
// Scalar version stores a reference to the actual data type array for convenient subsequent operations.
52
template <PrimitiveType PType>
53
struct ColumnNullConstViewScalar {
54
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
55
    using ArrayType = typename ColumnType::Container;
56
57
    const ArrayType& data;
58
    const NullMap* null_map;
59
    const bool is_const;
60
61
25.4k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
25.4k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
25.4k
        const NullMap* null_map = nullptr;
64
25.4k
        const ArrayType* data = nullptr;
65
25.4k
        if (const auto* nullable_column =
66
25.4k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
8.63k
            null_map = &nullable_column->get_null_map_data();
68
8.63k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
8.63k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
16.8k
        } else {
71
16.8k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
16.8k
        }
73
74
25.4k
        return ColumnNullConstViewScalar {
75
25.4k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
25.4k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
10.6k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
10.6k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
10.6k
        const NullMap* null_map = nullptr;
64
10.6k
        const ArrayType* data = nullptr;
65
10.6k
        if (const auto* nullable_column =
66
10.6k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
4.77k
            null_map = &nullable_column->get_null_map_data();
68
4.77k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
4.77k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5.89k
        } else {
71
5.89k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5.89k
        }
73
74
10.6k
        return ColumnNullConstViewScalar {
75
10.6k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
10.6k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
10.3k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
10.3k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
10.3k
        const NullMap* null_map = nullptr;
64
10.3k
        const ArrayType* data = nullptr;
65
10.3k
        if (const auto* nullable_column =
66
10.3k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
87
            null_map = &nullable_column->get_null_map_data();
68
87
            const auto& nested_from_column = nullable_column->get_nested_column();
69
87
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
10.2k
        } else {
71
10.2k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
10.2k
        }
73
74
10.3k
        return ColumnNullConstViewScalar {
75
10.3k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
10.3k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
22
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
22
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
22
        const NullMap* null_map = nullptr;
64
22
        const ArrayType* data = nullptr;
65
22
        if (const auto* nullable_column =
66
22
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
20
            null_map = &nullable_column->get_null_map_data();
68
20
            const auto& nested_from_column = nullable_column->get_nested_column();
69
20
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
20
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
22
        return ColumnNullConstViewScalar {
75
22
                .data = *data, .null_map = null_map, .is_const = is_const};
76
22
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
3.56k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
3.56k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
3.56k
        const NullMap* null_map = nullptr;
64
3.56k
        const ArrayType* data = nullptr;
65
3.56k
        if (const auto* nullable_column =
66
3.56k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
3.28k
            null_map = &nullable_column->get_null_map_data();
68
3.28k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
3.28k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
3.28k
        } else {
71
277
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
277
        }
73
74
3.56k
        return ColumnNullConstViewScalar {
75
3.56k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
3.56k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
226
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
226
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
226
        const NullMap* null_map = nullptr;
64
226
        const ArrayType* data = nullptr;
65
226
        if (const auto* nullable_column =
66
226
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
113
            null_map = &nullable_column->get_null_map_data();
68
113
            const auto& nested_from_column = nullable_column->get_nested_column();
69
113
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
113
        } else {
71
113
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
113
        }
73
74
226
        return ColumnNullConstViewScalar {
75
226
                .data = *data, .null_map = null_map, .is_const = is_const};
76
226
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
12
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
12
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
12
        const NullMap* null_map = nullptr;
64
12
        const ArrayType* data = nullptr;
65
12
        if (const auto* nullable_column =
66
12
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
12
            null_map = &nullable_column->get_null_map_data();
68
12
            const auto& nested_from_column = nullable_column->get_nested_column();
69
12
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
12
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
12
        return ColumnNullConstViewScalar {
75
12
                .data = *data, .null_map = null_map, .is_const = is_const};
76
12
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
192
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
192
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
192
        const NullMap* null_map = nullptr;
64
192
        const ArrayType* data = nullptr;
65
192
        if (const auto* nullable_column =
66
192
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
123
            null_map = &nullable_column->get_null_map_data();
68
123
            const auto& nested_from_column = nullable_column->get_nested_column();
69
123
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
123
        } else {
71
69
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
69
        }
73
74
192
        return ColumnNullConstViewScalar {
75
192
                .data = *data, .null_map = null_map, .is_const = is_const};
76
192
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
34
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
34
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
34
        const NullMap* null_map = nullptr;
64
34
        const ArrayType* data = nullptr;
65
34
        if (const auto* nullable_column =
66
34
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
34
            null_map = &nullable_column->get_null_map_data();
68
34
            const auto& nested_from_column = nullable_column->get_nested_column();
69
34
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
34
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
34
        return ColumnNullConstViewScalar {
75
34
                .data = *data, .null_map = null_map, .is_const = is_const};
76
34
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
28
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
28
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
28
        const NullMap* null_map = nullptr;
64
28
        const ArrayType* data = nullptr;
65
28
        if (const auto* nullable_column =
66
28
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
21
            null_map = &nullable_column->get_null_map_data();
68
21
            const auto& nested_from_column = nullable_column->get_nested_column();
69
21
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
21
        } else {
71
7
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
7
        }
73
74
28
        return ColumnNullConstViewScalar {
75
28
                .data = *data, .null_map = null_map, .is_const = is_const};
76
28
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
234
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
234
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
234
        const NullMap* null_map = nullptr;
64
234
        const ArrayType* data = nullptr;
65
234
        if (const auto* nullable_column =
66
234
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
83
            null_map = &nullable_column->get_null_map_data();
68
83
            const auto& nested_from_column = nullable_column->get_nested_column();
69
83
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
151
        } else {
71
151
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
151
        }
73
74
234
        return ColumnNullConstViewScalar {
75
234
                .data = *data, .null_map = null_map, .is_const = is_const};
76
234
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
106
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
106
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
106
        const NullMap* null_map = nullptr;
64
106
        const ArrayType* data = nullptr;
65
106
        if (const auto* nullable_column =
66
106
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
39
            null_map = &nullable_column->get_null_map_data();
68
39
            const auto& nested_from_column = nullable_column->get_nested_column();
69
39
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
67
        } else {
71
67
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
67
        }
73
74
106
        return ColumnNullConstViewScalar {
75
106
                .data = *data, .null_map = null_map, .is_const = is_const};
76
106
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
40
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
40
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
40
        const NullMap* null_map = nullptr;
64
40
        const ArrayType* data = nullptr;
65
40
        if (const auto* nullable_column =
66
40
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
36
            null_map = &nullable_column->get_null_map_data();
68
36
            const auto& nested_from_column = nullable_column->get_nested_column();
69
36
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
36
        } else {
71
4
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
4
        }
73
74
40
        return ColumnNullConstViewScalar {
75
40
                .data = *data, .null_map = null_map, .is_const = is_const};
76
40
    }
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
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
1.03k
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
1.03k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
797
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
797
                                          .null_map = &nullable_column->get_null_map_data()};
88
797
        } else {
89
239
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
239
        }
91
1.03k
    }
92
93
2.70k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
2.70k
        auto index = index_check_const(i, from.is_const);
95
2.70k
        column.insert_from(from.column, index);
96
2.70k
        if (null_map != nullptr && from.null_map != nullptr) {
97
1.87k
            null_map->push_back((*from.null_map)[index]);
98
1.87k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
146
            null_map->push_back(0);
101
146
        }
102
2.70k
    }
103
104
31
    void insert_null() {
105
31
        if (null_map == nullptr) {
106
0
            throw doris::Exception(ErrorCode::INTERNAL_ERROR,
107
0
                                   "Cannot insert null value into non-nullable column in "
108
0
                                   "ShortCircuitCoalesceExpr.");
109
0
        }
110
31
        column.insert_default();
111
31
        null_map->push_back(1);
112
31
    }
113
};
114
115
template <PrimitiveType PType>
116
struct MutableColumnNullViewScalar {
117
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
118
    using ArrayType = typename ColumnType::Container;
119
120
    ArrayType& data;
121
    NullMap* null_map;
122
123
6.06k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
6.06k
        ColumnType* data_column = nullptr;
125
6.06k
        NullMap* null_map = nullptr;
126
6.06k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2.01k
            null_map = &nullable_column->get_null_map_data();
128
2.01k
            auto& nested_column = nullable_column->get_nested_column();
129
2.01k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4.05k
        } else {
131
4.05k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4.05k
        }
133
134
6.06k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
6.06k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
92
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
92
        ColumnType* data_column = nullptr;
125
92
        NullMap* null_map = nullptr;
126
92
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
90
        } else {
131
90
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
90
        }
133
134
92
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
92
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
3.70k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
3.70k
        ColumnType* data_column = nullptr;
125
3.70k
        NullMap* null_map = nullptr;
126
3.70k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
52
            null_map = &nullable_column->get_null_map_data();
128
52
            auto& nested_column = nullable_column->get_nested_column();
129
52
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
3.65k
        } else {
131
3.65k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
3.65k
        }
133
134
3.70k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
3.70k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
17
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
17
        ColumnType* data_column = nullptr;
125
17
        NullMap* null_map = nullptr;
126
17
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
17
            null_map = &nullable_column->get_null_map_data();
128
17
            auto& nested_column = nullable_column->get_nested_column();
129
17
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
17
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
17
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
17
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.78k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.78k
        ColumnType* data_column = nullptr;
125
1.78k
        NullMap* null_map = nullptr;
126
1.78k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.65k
            null_map = &nullable_column->get_null_map_data();
128
1.65k
            auto& nested_column = nullable_column->get_nested_column();
129
1.65k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.65k
        } else {
131
133
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
133
        }
133
134
1.78k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.78k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
118
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
118
        ColumnType* data_column = nullptr;
125
118
        NullMap* null_map = nullptr;
126
118
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
59
            null_map = &nullable_column->get_null_map_data();
128
59
            auto& nested_column = nullable_column->get_nested_column();
129
59
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
59
        } else {
131
59
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
59
        }
133
134
118
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
118
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
10
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
10
        ColumnType* data_column = nullptr;
125
10
        NullMap* null_map = nullptr;
126
10
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
10
            null_map = &nullable_column->get_null_map_data();
128
10
            auto& nested_column = nullable_column->get_nested_column();
129
10
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
10
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
10
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
100
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
100
        ColumnType* data_column = nullptr;
125
100
        NullMap* null_map = nullptr;
126
100
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
96
            null_map = &nullable_column->get_null_map_data();
128
96
            auto& nested_column = nullable_column->get_nested_column();
129
96
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
96
        } else {
131
4
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4
        }
133
134
100
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
100
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
21
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
21
        ColumnType* data_column = nullptr;
125
21
        NullMap* null_map = nullptr;
126
21
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
21
            null_map = &nullable_column->get_null_map_data();
128
21
            auto& nested_column = nullable_column->get_nested_column();
129
21
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
21
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
21
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
21
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
18
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
18
        ColumnType* data_column = nullptr;
125
18
        NullMap* null_map = nullptr;
126
18
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
4
            null_map = &nullable_column->get_null_map_data();
128
4
            auto& nested_column = nullable_column->get_nested_column();
129
4
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
14
        } else {
131
14
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
14
        }
133
134
18
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
18
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
117
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
117
        ColumnType* data_column = nullptr;
125
117
        NullMap* null_map = nullptr;
126
117
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
55
            null_map = &nullable_column->get_null_map_data();
128
55
            auto& nested_column = nullable_column->get_nested_column();
129
55
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
62
        } else {
131
62
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
62
        }
133
134
117
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
117
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
56
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
56
        ColumnType* data_column = nullptr;
125
56
        NullMap* null_map = nullptr;
126
56
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
20
            null_map = &nullable_column->get_null_map_data();
128
20
            auto& nested_column = nullable_column->get_nested_column();
129
20
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
36
        } else {
131
36
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
36
        }
133
134
56
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
56
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
24
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
24
        ColumnType* data_column = nullptr;
125
24
        NullMap* null_map = nullptr;
126
24
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
20
            null_map = &nullable_column->get_null_map_data();
128
20
            auto& nested_column = nullable_column->get_nested_column();
129
20
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
20
        } else {
131
4
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4
        }
133
134
24
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
24
    }
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
136
137
14.9k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
14.9k
        auto& result_data = data;
139
14.9k
        const auto& from_data = from.data;
140
141
14.9k
        auto* result_null_map_data = null_map;
142
14.9k
        const auto* from_null_map_data = from.null_map;
143
144
14.9k
        if (from.is_const) {
145
3.80k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
3.80k
                                     from_null_map_data, selector);
147
11.1k
        } else {
148
11.1k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
11.1k
                                      from_null_map_data, selector);
150
11.1k
        }
151
14.9k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
184
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
184
        auto& result_data = data;
139
184
        const auto& from_data = from.data;
140
141
184
        auto* result_null_map_data = null_map;
142
184
        const auto* from_null_map_data = from.null_map;
143
144
184
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
182
        } else {
148
182
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
182
                                      from_null_map_data, selector);
150
182
        }
151
184
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
10.3k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
10.3k
        auto& result_data = data;
139
10.3k
        const auto& from_data = from.data;
140
141
10.3k
        auto* result_null_map_data = null_map;
142
10.3k
        const auto* from_null_map_data = from.null_map;
143
144
10.3k
        if (from.is_const) {
145
3.04k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
3.04k
                                     from_null_map_data, selector);
147
7.31k
        } else {
148
7.31k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
7.31k
                                      from_null_map_data, selector);
150
7.31k
        }
151
10.3k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
22
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
22
        auto& result_data = data;
139
22
        const auto& from_data = from.data;
140
141
22
        auto* result_null_map_data = null_map;
142
22
        const auto* from_null_map_data = from.null_map;
143
144
22
        if (from.is_const) {
145
5
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5
                                     from_null_map_data, selector);
147
17
        } else {
148
17
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
17
                                      from_null_map_data, selector);
150
17
        }
151
22
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
3.55k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
3.55k
        auto& result_data = data;
139
3.55k
        const auto& from_data = from.data;
140
141
3.55k
        auto* result_null_map_data = null_map;
142
3.55k
        const auto* from_null_map_data = from.null_map;
143
144
3.55k
        if (from.is_const) {
145
506
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
506
                                     from_null_map_data, selector);
147
3.05k
        } else {
148
3.05k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
3.05k
                                      from_null_map_data, selector);
150
3.05k
        }
151
3.55k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
226
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
226
        auto& result_data = data;
139
226
        const auto& from_data = from.data;
140
141
226
        auto* result_null_map_data = null_map;
142
226
        const auto* from_null_map_data = from.null_map;
143
144
226
        if (from.is_const) {
145
56
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
56
                                     from_null_map_data, selector);
147
170
        } else {
148
170
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
170
                                      from_null_map_data, selector);
150
170
        }
151
226
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
12
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
12
        auto& result_data = data;
139
12
        const auto& from_data = from.data;
140
141
12
        auto* result_null_map_data = null_map;
142
12
        const auto* from_null_map_data = from.null_map;
143
144
12
        if (from.is_const) {
145
1
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
1
                                     from_null_map_data, selector);
147
11
        } else {
148
11
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
11
                                      from_null_map_data, selector);
150
11
        }
151
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
192
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
192
        auto& result_data = data;
139
192
        const auto& from_data = from.data;
140
141
192
        auto* result_null_map_data = null_map;
142
192
        const auto* from_null_map_data = from.null_map;
143
144
192
        if (from.is_const) {
145
69
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
69
                                     from_null_map_data, selector);
147
123
        } else {
148
123
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
123
                                      from_null_map_data, selector);
150
123
        }
151
192
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
34
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
34
        auto& result_data = data;
139
34
        const auto& from_data = from.data;
140
141
34
        auto* result_null_map_data = null_map;
142
34
        const auto* from_null_map_data = from.null_map;
143
144
34
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
32
        } else {
148
32
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
32
                                      from_null_map_data, selector);
150
32
        }
151
34
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
28
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
28
        auto& result_data = data;
139
28
        const auto& from_data = from.data;
140
141
28
        auto* result_null_map_data = null_map;
142
28
        const auto* from_null_map_data = from.null_map;
143
144
28
        if (from.is_const) {
145
3
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
3
                                     from_null_map_data, selector);
147
25
        } else {
148
25
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
25
                                      from_null_map_data, selector);
150
25
        }
151
28
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
234
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
234
        auto& result_data = data;
139
234
        const auto& from_data = from.data;
140
141
234
        auto* result_null_map_data = null_map;
142
234
        const auto* from_null_map_data = from.null_map;
143
144
234
        if (from.is_const) {
145
95
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
95
                                     from_null_map_data, selector);
147
139
        } else {
148
139
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
139
                                      from_null_map_data, selector);
150
139
        }
151
234
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
106
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
106
        auto& result_data = data;
139
106
        const auto& from_data = from.data;
140
141
106
        auto* result_null_map_data = null_map;
142
106
        const auto* from_null_map_data = from.null_map;
143
144
106
        if (from.is_const) {
145
11
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
11
                                     from_null_map_data, selector);
147
95
        } else {
148
95
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
95
                                      from_null_map_data, selector);
150
95
        }
151
106
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
40
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
40
        auto& result_data = data;
139
40
        const auto& from_data = from.data;
140
141
40
        auto* result_null_map_data = null_map;
142
40
        const auto* from_null_map_data = from.null_map;
143
144
40
        if (from.is_const) {
145
5
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5
                                     from_null_map_data, selector);
147
35
        } else {
148
35
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
35
                                      from_null_map_data, selector);
150
35
        }
151
40
    }
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
152
153
    template <bool is_const>
154
    static void insert_into_result(ArrayType& result_data, const ArrayType& from_data,
155
                                   NullMap* result_null_map_data, const NullMap* from_null_map_data,
156
14.9k
                                   const Selector& selector) {
157
14.9k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
14.9k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
3.66k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
3.66k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
14.9k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
182
                                   const Selector& selector) {
157
182
        insert_with_selector<is_const>(result_data, from_data, selector);
158
182
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
182
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
3.04k
                                   const Selector& selector) {
157
3.04k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
3.04k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
4
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
4
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
3.04k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
7.31k
                                   const Selector& selector) {
157
7.31k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
7.31k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
53
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
53
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
7.31k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
3
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
3
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb0EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
17
                                   const Selector& selector) {
157
17
        insert_with_selector<is_const>(result_data, from_data, selector);
158
17
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
17
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
17
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
17
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb1EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
506
                                   const Selector& selector) {
157
506
        insert_with_selector<is_const>(result_data, from_data, selector);
158
506
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
465
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
465
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
506
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
3.05k
                                   const Selector& selector) {
157
3.05k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
3.05k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2.73k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2.73k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
3.05k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
56
                                   const Selector& selector) {
157
56
        insert_with_selector<is_const>(result_data, from_data, selector);
158
56
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
4
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
4
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
56
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
170
                                   const Selector& selector) {
157
170
        insert_with_selector<is_const>(result_data, from_data, selector);
158
170
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
72
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
72
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
170
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1
                                   const Selector& selector) {
157
1
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
11
                                   const Selector& selector) {
157
11
        insert_with_selector<is_const>(result_data, from_data, selector);
158
11
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
11
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
11
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
69
                                   const Selector& selector) {
157
69
        insert_with_selector<is_const>(result_data, from_data, selector);
158
69
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
6
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
6
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
69
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
123
                                   const Selector& selector) {
157
123
        insert_with_selector<is_const>(result_data, from_data, selector);
158
123
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
113
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
113
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
123
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
32
                                   const Selector& selector) {
157
32
        insert_with_selector<is_const>(result_data, from_data, selector);
158
32
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
32
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
32
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
3
                                   const Selector& selector) {
157
3
        insert_with_selector<is_const>(result_data, from_data, selector);
158
3
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
25
                                   const Selector& selector) {
157
25
        insert_with_selector<is_const>(result_data, from_data, selector);
158
25
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
25
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
95
                                   const Selector& selector) {
157
95
        insert_with_selector<is_const>(result_data, from_data, selector);
158
95
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
23
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
23
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
139
                                   const Selector& selector) {
157
139
        insert_with_selector<is_const>(result_data, from_data, selector);
158
139
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
57
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
57
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
139
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
11
                                   const Selector& selector) {
157
11
        insert_with_selector<is_const>(result_data, from_data, selector);
158
11
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
95
                                   const Selector& selector) {
157
95
        insert_with_selector<is_const>(result_data, from_data, selector);
158
95
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
27
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
27
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
35
                                   const Selector& selector) {
157
35
        insert_with_selector<is_const>(result_data, from_data, selector);
158
35
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
31
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
31
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
35
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
18.6k
                                     const Selector& selector) {
169
98.4k
        for (size_t i = 0; i < selector.size(); ++i) {
170
79.7k
            auto index = selector[i];
171
79.7k
            result_data[index] = data[index_check_const<is_const>(i)];
172
79.7k
        }
173
18.6k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
184
                                     const Selector& selector) {
169
994
        for (size_t i = 0; i < selector.size(); ++i) {
170
810
            auto index = selector[i];
171
810
            result_data[index] = data[index_check_const<is_const>(i)];
172
810
        }
173
184
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3.04k
                                     const Selector& selector) {
169
48.1k
        for (size_t i = 0; i < selector.size(); ++i) {
170
45.0k
            auto index = selector[i];
171
45.0k
            result_data[index] = data[index_check_const<is_const>(i)];
172
45.0k
        }
173
3.04k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
7
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
7.31k
                                     const Selector& selector) {
169
8.13k
        for (size_t i = 0; i < selector.size(); ++i) {
170
818
            auto index = selector[i];
171
818
            result_data[index] = data[index_check_const<is_const>(i)];
172
818
        }
173
7.31k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
53
                                     const Selector& selector) {
169
113
        for (size_t i = 0; i < selector.size(); ++i) {
170
60
            auto index = selector[i];
171
60
            result_data[index] = data[index_check_const<is_const>(i)];
172
60
        }
173
53
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
25
        for (size_t i = 0; i < selector.size(); ++i) {
170
20
            auto index = selector[i];
171
20
            result_data[index] = data[index_check_const<is_const>(i)];
172
20
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3
                                     const Selector& selector) {
169
13
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
17
                                     const Selector& selector) {
169
62
        for (size_t i = 0; i < selector.size(); ++i) {
170
45
            auto index = selector[i];
171
45
            result_data[index] = data[index_check_const<is_const>(i)];
172
45
        }
173
17
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
17
                                     const Selector& selector) {
169
62
        for (size_t i = 0; i < selector.size(); ++i) {
170
45
            auto index = selector[i];
171
45
            result_data[index] = data[index_check_const<is_const>(i)];
172
45
        }
173
17
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
506
                                     const Selector& selector) {
169
2.10k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.60k
            auto index = selector[i];
171
1.60k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.60k
        }
173
506
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
465
                                     const Selector& selector) {
169
2.00k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.53k
            auto index = selector[i];
171
1.53k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.53k
        }
173
465
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3.05k
                                     const Selector& selector) {
169
5.08k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.03k
            auto index = selector[i];
171
2.03k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.03k
        }
173
3.05k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2.73k
                                     const Selector& selector) {
169
4.48k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.74k
            auto index = selector[i];
171
1.74k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.74k
        }
173
2.73k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
56
                                     const Selector& selector) {
169
285
        for (size_t i = 0; i < selector.size(); ++i) {
170
229
            auto index = selector[i];
171
229
            result_data[index] = data[index_check_const<is_const>(i)];
172
229
        }
173
56
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
170
                                     const Selector& selector) {
169
421
        for (size_t i = 0; i < selector.size(); ++i) {
170
251
            auto index = selector[i];
171
251
            result_data[index] = data[index_check_const<is_const>(i)];
172
251
        }
173
170
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
72
                                     const Selector& selector) {
169
206
        for (size_t i = 0; i < selector.size(); ++i) {
170
134
            auto index = selector[i];
171
134
            result_data[index] = data[index_check_const<is_const>(i)];
172
134
        }
173
72
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
1
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
1
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
41
        for (size_t i = 0; i < selector.size(); ++i) {
170
30
            auto index = selector[i];
171
30
            result_data[index] = data[index_check_const<is_const>(i)];
172
30
        }
173
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
41
        for (size_t i = 0; i < selector.size(); ++i) {
170
30
            auto index = selector[i];
171
30
            result_data[index] = data[index_check_const<is_const>(i)];
172
30
        }
173
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
69
                                     const Selector& selector) {
169
368
        for (size_t i = 0; i < selector.size(); ++i) {
170
299
            auto index = selector[i];
171
299
            result_data[index] = data[index_check_const<is_const>(i)];
172
299
        }
173
69
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
123
                                     const Selector& selector) {
169
216
        for (size_t i = 0; i < selector.size(); ++i) {
170
93
            auto index = selector[i];
171
93
            result_data[index] = data[index_check_const<is_const>(i)];
172
93
        }
173
123
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
113
                                     const Selector& selector) {
169
202
        for (size_t i = 0; i < selector.size(); ++i) {
170
89
            auto index = selector[i];
171
89
            result_data[index] = data[index_check_const<is_const>(i)];
172
89
        }
173
113
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
3
        for (size_t i = 0; i < selector.size(); ++i) {
170
1
            auto index = selector[i];
171
1
            result_data[index] = data[index_check_const<is_const>(i)];
172
1
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
3
        for (size_t i = 0; i < selector.size(); ++i) {
170
1
            auto index = selector[i];
171
1
            result_data[index] = data[index_check_const<is_const>(i)];
172
1
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
32
                                     const Selector& selector) {
169
95
        for (size_t i = 0; i < selector.size(); ++i) {
170
63
            auto index = selector[i];
171
63
            result_data[index] = data[index_check_const<is_const>(i)];
172
63
        }
173
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
32
                                     const Selector& selector) {
169
95
        for (size_t i = 0; i < selector.size(); ++i) {
170
63
            auto index = selector[i];
171
63
            result_data[index] = data[index_check_const<is_const>(i)];
172
63
        }
173
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
3
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
25
                                     const Selector& selector) {
169
93
        for (size_t i = 0; i < selector.size(); ++i) {
170
68
            auto index = selector[i];
171
68
            result_data[index] = data[index_check_const<is_const>(i)];
172
68
        }
173
25
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
15
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
95
                                     const Selector& selector) {
169
20.3k
        for (size_t i = 0; i < selector.size(); ++i) {
170
20.2k
            auto index = selector[i];
171
20.2k
            result_data[index] = data[index_check_const<is_const>(i)];
172
20.2k
        }
173
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
54
        for (size_t i = 0; i < selector.size(); ++i) {
170
31
            auto index = selector[i];
171
31
            result_data[index] = data[index_check_const<is_const>(i)];
172
31
        }
173
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
139
                                     const Selector& selector) {
169
3.95k
        for (size_t i = 0; i < selector.size(); ++i) {
170
3.81k
            auto index = selector[i];
171
3.81k
            result_data[index] = data[index_check_const<is_const>(i)];
172
3.81k
        }
173
139
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
57
                                     const Selector& selector) {
169
192
        for (size_t i = 0; i < selector.size(); ++i) {
170
135
            auto index = selector[i];
171
135
            result_data[index] = data[index_check_const<is_const>(i)];
172
135
        }
173
57
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
31
        for (size_t i = 0; i < selector.size(); ++i) {
170
20
            auto index = selector[i];
171
20
            result_data[index] = data[index_check_const<is_const>(i)];
172
20
        }
173
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
95
                                     const Selector& selector) {
169
220
        for (size_t i = 0; i < selector.size(); ++i) {
170
125
            auto index = selector[i];
171
125
            result_data[index] = data[index_check_const<is_const>(i)];
172
125
        }
173
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
27
                                     const Selector& selector) {
169
72
        for (size_t i = 0; i < selector.size(); ++i) {
170
45
            auto index = selector[i];
171
45
            result_data[index] = data[index_check_const<is_const>(i)];
172
45
        }
173
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
13
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
1
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
35
                                     const Selector& selector) {
169
105
        for (size_t i = 0; i < selector.size(); ++i) {
170
70
            auto index = selector[i];
171
70
            result_data[index] = data[index_check_const<is_const>(i)];
172
70
        }
173
35
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
31
                                     const Selector& selector) {
169
101
        for (size_t i = 0; i < selector.size(); ++i) {
170
70
            auto index = selector[i];
171
70
            result_data[index] = data[index_check_const<is_const>(i)];
172
70
        }
173
31
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
174
175
25
    void insert_null(const Selector& selector) {
176
25
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
25
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
24
        auto& null_map_data = *null_map;
183
51
        for (size_t i = 0; i < selector.size(); ++i) {
184
27
            null_map_data[selector[i]] = 1;
185
27
        }
186
24
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
3
    void insert_null(const Selector& selector) {
176
3
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
3
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
3
        auto& null_map_data = *null_map;
183
6
        for (size_t i = 0; i < selector.size(); ++i) {
184
3
            null_map_data[selector[i]] = 1;
185
3
        }
186
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
8
    void insert_null(const Selector& selector) {
176
8
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
8
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
7
        auto& null_map_data = *null_map;
183
17
        for (size_t i = 0; i < selector.size(); ++i) {
184
10
            null_map_data[selector[i]] = 1;
185
10
        }
186
7
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
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
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
187
};
188
189
// Used to store a column and its corresponding selector.
190
// It can be understood as: the positions selected by the selector in the result column correspond to the column inside.
191
// column = filter_column_with_selector(result_column, selector)
192
// What we need to do is fill these positions back into the result column (in a sense, it can be seen as restoring them).
193
// If the column is empty, it means these positions are all null, e.g., the last parameter of coalesce is null, or the else branch of case when is not provided.
194
struct ColumnAndSelector {
195
    ColumnPtr column = nullptr;
196
    Selector selector; // positions in result column
197
198
6.54k
    bool output_nulls() const { return column.get() == nullptr; }
199
200
    std::string debug_string() const {
201
        std::stringstream ss;
202
        ss << "ColumnAndSelector(selector_size=" << selector.size()
203
           << ", output_nulls=" << output_nulls()
204
           << ", column size=" << (column ? std::to_string(column->size()) : "null") << ")";
205
206
        ss << "\n selector data: [";
207
        for (size_t i = 0; i < selector.size(); ++i) {
208
            if (i != 0) {
209
                ss << ", ";
210
            }
211
            ss << selector[i];
212
        }
213
        ss << "]";
214
        return ss.str();
215
    }
216
};
217
218
// Scalar version of fill.
219
// Initializes the result column at the beginning.
220
// Subsequently fills data from each column into the result column using selectors.
221
template <PrimitiveType PType>
222
struct ScalarFillWithSelector {
223
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
224
    using ArrayType = typename ColumnType::Container;
225
226
public:
227
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
228
                          const Selector& true_selector, const ColumnPtr& false_column,
229
4.23k
                          const Selector& false_selector, size_t count) {
230
4.23k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4.23k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4.23k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4.23k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4.23k
        auto result_column = result_type->create_column();
236
237
4.23k
        MutableColumnNullViewScalar<PType> result_column_view =
238
4.23k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4.23k
        init_result_column(result_column_view, count);
240
241
4.23k
        ColumnNullConstViewScalar<PType> true_column_view =
242
4.23k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4.23k
        ColumnNullConstViewScalar<PType> false_column_view =
244
4.23k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4.23k
        result_column_view.insert_from(true_column_view, true_selector);
247
4.23k
        result_column_view.insert_from(false_column_view, false_selector);
248
4.23k
        DCHECK_EQ(result_column->size(), count);
249
4.23k
        return result_column;
250
4.23k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
92
                          const Selector& false_selector, size_t count) {
230
92
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
92
        DCHECK_EQ(true_column->size(), true_selector.size());
232
92
        DCHECK_EQ(false_column->size(), false_selector.size());
233
92
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
92
        auto result_column = result_type->create_column();
236
237
92
        MutableColumnNullViewScalar<PType> result_column_view =
238
92
                MutableColumnNullViewScalar<PType>::create(result_column);
239
92
        init_result_column(result_column_view, count);
240
241
92
        ColumnNullConstViewScalar<PType> true_column_view =
242
92
                ColumnNullConstViewScalar<PType>::create(true_column);
243
92
        ColumnNullConstViewScalar<PType> false_column_view =
244
92
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
92
        result_column_view.insert_from(true_column_view, true_selector);
247
92
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
92
        return result_column;
250
92
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2.02k
                          const Selector& false_selector, size_t count) {
230
2.02k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2.02k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2.02k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2.02k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2.02k
        auto result_column = result_type->create_column();
236
237
2.02k
        MutableColumnNullViewScalar<PType> result_column_view =
238
2.02k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2.02k
        init_result_column(result_column_view, count);
240
241
2.02k
        ColumnNullConstViewScalar<PType> true_column_view =
242
2.02k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2.02k
        ColumnNullConstViewScalar<PType> false_column_view =
244
2.02k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2.02k
        result_column_view.insert_from(true_column_view, true_selector);
247
2.02k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2.02k
        return result_column;
250
2.02k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.74k
                          const Selector& false_selector, size_t count) {
230
1.74k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.74k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.74k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.74k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.74k
        auto result_column = result_type->create_column();
236
237
1.74k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.74k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.74k
        init_result_column(result_column_view, count);
240
241
1.74k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.74k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.74k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.74k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.74k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.74k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.74k
        return result_column;
250
1.74k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
99
                          const Selector& false_selector, size_t count) {
230
99
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
99
        DCHECK_EQ(true_column->size(), true_selector.size());
232
99
        DCHECK_EQ(false_column->size(), false_selector.size());
233
99
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
99
        auto result_column = result_type->create_column();
236
237
99
        MutableColumnNullViewScalar<PType> result_column_view =
238
99
                MutableColumnNullViewScalar<PType>::create(result_column);
239
99
        init_result_column(result_column_view, count);
240
241
99
        ColumnNullConstViewScalar<PType> true_column_view =
242
99
                ColumnNullConstViewScalar<PType>::create(true_column);
243
99
        ColumnNullConstViewScalar<PType> false_column_view =
244
99
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
99
        result_column_view.insert_from(true_column_view, true_selector);
247
99
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
99
        return result_column;
250
99
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
86
                          const Selector& false_selector, size_t count) {
230
86
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
86
        DCHECK_EQ(true_column->size(), true_selector.size());
232
86
        DCHECK_EQ(false_column->size(), false_selector.size());
233
86
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
86
        auto result_column = result_type->create_column();
236
237
86
        MutableColumnNullViewScalar<PType> result_column_view =
238
86
                MutableColumnNullViewScalar<PType>::create(result_column);
239
86
        init_result_column(result_column_view, count);
240
241
86
        ColumnNullConstViewScalar<PType> true_column_view =
242
86
                ColumnNullConstViewScalar<PType>::create(true_column);
243
86
        ColumnNullConstViewScalar<PType> false_column_view =
244
86
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
86
        result_column_view.insert_from(true_column_view, true_selector);
247
86
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
86
        return result_column;
250
86
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
11
                          const Selector& false_selector, size_t count) {
230
11
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
11
        DCHECK_EQ(true_column->size(), true_selector.size());
232
11
        DCHECK_EQ(false_column->size(), false_selector.size());
233
11
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
11
        auto result_column = result_type->create_column();
236
237
11
        MutableColumnNullViewScalar<PType> result_column_view =
238
11
                MutableColumnNullViewScalar<PType>::create(result_column);
239
11
        init_result_column(result_column_view, count);
240
241
11
        ColumnNullConstViewScalar<PType> true_column_view =
242
11
                ColumnNullConstViewScalar<PType>::create(true_column);
243
11
        ColumnNullConstViewScalar<PType> false_column_view =
244
11
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
11
        result_column_view.insert_from(true_column_view, true_selector);
247
11
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
11
        return result_column;
250
11
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
10
                          const Selector& false_selector, size_t count) {
230
10
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
10
        DCHECK_EQ(true_column->size(), true_selector.size());
232
10
        DCHECK_EQ(false_column->size(), false_selector.size());
233
10
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
10
        auto result_column = result_type->create_column();
236
237
10
        MutableColumnNullViewScalar<PType> result_column_view =
238
10
                MutableColumnNullViewScalar<PType>::create(result_column);
239
10
        init_result_column(result_column_view, count);
240
241
10
        ColumnNullConstViewScalar<PType> true_column_view =
242
10
                ColumnNullConstViewScalar<PType>::create(true_column);
243
10
        ColumnNullConstViewScalar<PType> false_column_view =
244
10
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
10
        result_column_view.insert_from(true_column_view, true_selector);
247
10
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
10
        return result_column;
250
10
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
115
                          const Selector& false_selector, size_t count) {
230
115
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
115
        DCHECK_EQ(true_column->size(), true_selector.size());
232
115
        DCHECK_EQ(false_column->size(), false_selector.size());
233
115
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
115
        auto result_column = result_type->create_column();
236
237
115
        MutableColumnNullViewScalar<PType> result_column_view =
238
115
                MutableColumnNullViewScalar<PType>::create(result_column);
239
115
        init_result_column(result_column_view, count);
240
241
115
        ColumnNullConstViewScalar<PType> true_column_view =
242
115
                ColumnNullConstViewScalar<PType>::create(true_column);
243
115
        ColumnNullConstViewScalar<PType> false_column_view =
244
115
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
115
        result_column_view.insert_from(true_column_view, true_selector);
247
115
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
115
        return result_column;
250
115
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
44
                          const Selector& false_selector, size_t count) {
230
44
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
44
        DCHECK_EQ(true_column->size(), true_selector.size());
232
44
        DCHECK_EQ(false_column->size(), false_selector.size());
233
44
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
44
        auto result_column = result_type->create_column();
236
237
44
        MutableColumnNullViewScalar<PType> result_column_view =
238
44
                MutableColumnNullViewScalar<PType>::create(result_column);
239
44
        init_result_column(result_column_view, count);
240
241
44
        ColumnNullConstViewScalar<PType> true_column_view =
242
44
                ColumnNullConstViewScalar<PType>::create(true_column);
243
44
        ColumnNullConstViewScalar<PType> false_column_view =
244
44
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
44
        result_column_view.insert_from(true_column_view, true_selector);
247
44
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
44
        return result_column;
250
44
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
14
                          const Selector& false_selector, size_t count) {
230
14
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
14
        DCHECK_EQ(true_column->size(), true_selector.size());
232
14
        DCHECK_EQ(false_column->size(), false_selector.size());
233
14
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
14
        auto result_column = result_type->create_column();
236
237
14
        MutableColumnNullViewScalar<PType> result_column_view =
238
14
                MutableColumnNullViewScalar<PType>::create(result_column);
239
14
        init_result_column(result_column_view, count);
240
241
14
        ColumnNullConstViewScalar<PType> true_column_view =
242
14
                ColumnNullConstViewScalar<PType>::create(true_column);
243
14
        ColumnNullConstViewScalar<PType> false_column_view =
244
14
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
14
        result_column_view.insert_from(true_column_view, true_selector);
247
14
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
14
        return result_column;
250
14
    }
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
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
1.82k
                          size_t count) {
255
1.82k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.82k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.82k
                                             return sum + cs.selector.size();
258
1.82k
                                         }));
259
1.82k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.82k
        auto result_column = result_type->create_column();
261
262
1.82k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.82k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.82k
        init_result_column(result_column_view, count);
265
266
6.53k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
6.53k
            if (columns_and_selector.output_nulls()) {
268
23
                result_column_view.insert_null(columns_and_selector.selector);
269
6.51k
            } else {
270
6.51k
                ColumnNullConstViewScalar<PType> from_column_view =
271
6.51k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6.51k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6.51k
            }
274
6.53k
        }
275
1.82k
        DCHECK_EQ(result_column->size(), count);
276
1.82k
        return result_column;
277
1.82k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1.68k
                          size_t count) {
255
1.68k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.68k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.68k
                                             return sum + cs.selector.size();
258
1.68k
                                         }));
259
1.68k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.68k
        auto result_column = result_type->create_column();
261
262
1.68k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.68k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.68k
        init_result_column(result_column_view, count);
265
266
6.31k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
6.31k
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
6.31k
            } else {
270
6.31k
                ColumnNullConstViewScalar<PType> from_column_view =
271
6.31k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6.31k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6.31k
            }
274
6.31k
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1.68k
        return result_column;
277
1.68k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
15
                          size_t count) {
255
15
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
15
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
15
                                             return sum + cs.selector.size();
258
15
                                         }));
259
15
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
15
        auto result_column = result_type->create_column();
261
262
15
        MutableColumnNullViewScalar<PType> result_column_view =
263
15
                MutableColumnNullViewScalar<PType>::create(result_column);
264
15
        init_result_column(result_column_view, count);
265
266
21
        for (const auto& columns_and_selector : columns_and_selectors) {
267
21
            if (columns_and_selector.output_nulls()) {
268
3
                result_column_view.insert_null(columns_and_selector.selector);
269
18
            } else {
270
18
                ColumnNullConstViewScalar<PType> from_column_view =
271
18
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
18
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
18
            }
274
21
        }
275
        DCHECK_EQ(result_column->size(), count);
276
15
        return result_column;
277
15
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
43
                          size_t count) {
255
43
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
43
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
43
                                             return sum + cs.selector.size();
258
43
                                         }));
259
43
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
43
        auto result_column = result_type->create_column();
261
262
43
        MutableColumnNullViewScalar<PType> result_column_view =
263
43
                MutableColumnNullViewScalar<PType>::create(result_column);
264
43
        init_result_column(result_column_view, count);
265
266
78
        for (const auto& columns_and_selector : columns_and_selectors) {
267
78
            if (columns_and_selector.output_nulls()) {
268
6
                result_column_view.insert_null(columns_and_selector.selector);
269
72
            } else {
270
72
                ColumnNullConstViewScalar<PType> from_column_view =
271
72
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
72
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
72
            }
274
78
        }
275
        DCHECK_EQ(result_column->size(), count);
276
43
        return result_column;
277
43
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
19
                          size_t count) {
255
19
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
19
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
19
                                             return sum + cs.selector.size();
258
19
                                         }));
259
19
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
19
        auto result_column = result_type->create_column();
261
262
19
        MutableColumnNullViewScalar<PType> result_column_view =
263
19
                MutableColumnNullViewScalar<PType>::create(result_column);
264
19
        init_result_column(result_column_view, count);
265
266
28
        for (const auto& columns_and_selector : columns_and_selectors) {
267
28
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
26
            } else {
270
26
                ColumnNullConstViewScalar<PType> from_column_view =
271
26
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
26
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
26
            }
274
28
        }
275
        DCHECK_EQ(result_column->size(), count);
276
19
        return result_column;
277
19
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
10
                          size_t count) {
255
10
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
10
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
10
                                             return sum + cs.selector.size();
258
10
                                         }));
259
10
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
10
        auto result_column = result_type->create_column();
261
262
10
        MutableColumnNullViewScalar<PType> result_column_view =
263
10
                MutableColumnNullViewScalar<PType>::create(result_column);
264
10
        init_result_column(result_column_view, count);
265
266
14
        for (const auto& columns_and_selector : columns_and_selectors) {
267
14
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
12
            } else {
270
12
                ColumnNullConstViewScalar<PType> from_column_view =
271
12
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
12
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
12
            }
274
14
        }
275
        DCHECK_EQ(result_column->size(), count);
276
10
        return result_column;
277
10
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
14
                          size_t count) {
255
14
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
14
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
14
                                             return sum + cs.selector.size();
258
14
                                         }));
259
14
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
14
        auto result_column = result_type->create_column();
261
262
14
        MutableColumnNullViewScalar<PType> result_column_view =
263
14
                MutableColumnNullViewScalar<PType>::create(result_column);
264
14
        init_result_column(result_column_view, count);
265
266
22
        for (const auto& columns_and_selector : columns_and_selectors) {
267
22
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
20
            } else {
270
20
                ColumnNullConstViewScalar<PType> from_column_view =
271
20
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
20
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
20
            }
274
22
        }
275
        DCHECK_EQ(result_column->size(), count);
276
14
        return result_column;
277
14
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
10
                          size_t count) {
255
10
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
10
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
10
                                             return sum + cs.selector.size();
258
10
                                         }));
259
10
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
10
        auto result_column = result_type->create_column();
261
262
10
        MutableColumnNullViewScalar<PType> result_column_view =
263
10
                MutableColumnNullViewScalar<PType>::create(result_column);
264
10
        init_result_column(result_column_view, count);
265
266
14
        for (const auto& columns_and_selector : columns_and_selectors) {
267
14
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
12
            } else {
270
12
                ColumnNullConstViewScalar<PType> from_column_view =
271
12
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
12
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
12
            }
274
14
        }
275
        DCHECK_EQ(result_column->size(), count);
276
10
        return result_column;
277
10
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
8
                          size_t count) {
255
8
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
8
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
8
                                             return sum + cs.selector.size();
258
8
                                         }));
259
8
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
8
        auto result_column = result_type->create_column();
261
262
8
        MutableColumnNullViewScalar<PType> result_column_view =
263
8
                MutableColumnNullViewScalar<PType>::create(result_column);
264
8
        init_result_column(result_column_view, count);
265
266
8
        for (const auto& columns_and_selector : columns_and_selectors) {
267
8
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
8
            } else {
270
8
                ColumnNullConstViewScalar<PType> from_column_view =
271
8
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
8
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
8
            }
274
8
        }
275
        DCHECK_EQ(result_column->size(), count);
276
8
        return result_column;
277
8
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
4
        for (const auto& columns_and_selector : columns_and_selectors) {
267
4
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
4
            } else {
270
4
                ColumnNullConstViewScalar<PType> from_column_view =
271
4
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
4
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
4
            }
274
4
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
12
                          size_t count) {
255
12
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
12
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
12
                                             return sum + cs.selector.size();
258
12
                                         }));
259
12
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
12
        auto result_column = result_type->create_column();
261
262
12
        MutableColumnNullViewScalar<PType> result_column_view =
263
12
                MutableColumnNullViewScalar<PType>::create(result_column);
264
12
        init_result_column(result_column_view, count);
265
266
20
        for (const auto& columns_and_selector : columns_and_selectors) {
267
20
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
18
            } else {
270
18
                ColumnNullConstViewScalar<PType> from_column_view =
271
18
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
18
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
18
            }
274
20
        }
275
        DCHECK_EQ(result_column->size(), count);
276
12
        return result_column;
277
12
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
10
                          size_t count) {
255
10
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
10
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
10
                                             return sum + cs.selector.size();
258
10
                                         }));
259
10
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
10
        auto result_column = result_type->create_column();
261
262
10
        MutableColumnNullViewScalar<PType> result_column_view =
263
10
                MutableColumnNullViewScalar<PType>::create(result_column);
264
10
        init_result_column(result_column_view, count);
265
266
14
        for (const auto& columns_and_selector : columns_and_selectors) {
267
14
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
12
            } else {
270
12
                ColumnNullConstViewScalar<PType> from_column_view =
271
12
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
12
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
12
            }
274
14
        }
275
        DCHECK_EQ(result_column->size(), count);
276
10
        return result_column;
277
10
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
278
279
private:
280
    // if result_column is nullable,nullmap will all init to false
281
    static void init_result_column(MutableColumnNullViewScalar<PType>& result_column_view,
282
6.06k
                                   size_t count) {
283
6.06k
        result_column_view.data.resize(count);
284
6.06k
        if (result_column_view.null_map != nullptr) {
285
2.01k
            result_column_view.null_map->resize_fill(count, 0);
286
2.01k
        }
287
6.06k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
92
                                   size_t count) {
283
92
        result_column_view.data.resize(count);
284
92
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
92
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
3.70k
                                   size_t count) {
283
3.70k
        result_column_view.data.resize(count);
284
3.70k
        if (result_column_view.null_map != nullptr) {
285
52
            result_column_view.null_map->resize_fill(count, 0);
286
52
        }
287
3.70k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Line
Count
Source
282
17
                                   size_t count) {
283
17
        result_column_view.data.resize(count);
284
17
        if (result_column_view.null_map != nullptr) {
285
17
            result_column_view.null_map->resize_fill(count, 0);
286
17
        }
287
17
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.78k
                                   size_t count) {
283
1.78k
        result_column_view.data.resize(count);
284
1.78k
        if (result_column_view.null_map != nullptr) {
285
1.65k
            result_column_view.null_map->resize_fill(count, 0);
286
1.65k
        }
287
1.78k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
119
                                   size_t count) {
283
119
        result_column_view.data.resize(count);
284
119
        if (result_column_view.null_map != nullptr) {
285
59
            result_column_view.null_map->resize_fill(count, 0);
286
59
        }
287
119
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
Line
Count
Source
282
10
                                   size_t count) {
283
10
        result_column_view.data.resize(count);
284
10
        if (result_column_view.null_map != nullptr) {
285
10
            result_column_view.null_map->resize_fill(count, 0);
286
10
        }
287
10
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Line
Count
Source
282
100
                                   size_t count) {
283
100
        result_column_view.data.resize(count);
284
100
        if (result_column_view.null_map != nullptr) {
285
96
            result_column_view.null_map->resize_fill(count, 0);
286
96
        }
287
100
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
21
                                   size_t count) {
283
21
        result_column_view.data.resize(count);
284
21
        if (result_column_view.null_map != nullptr) {
285
21
            result_column_view.null_map->resize_fill(count, 0);
286
21
        }
287
21
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
18
                                   size_t count) {
283
18
        result_column_view.data.resize(count);
284
18
        if (result_column_view.null_map != nullptr) {
285
4
            result_column_view.null_map->resize_fill(count, 0);
286
4
        }
287
18
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
117
                                   size_t count) {
283
117
        result_column_view.data.resize(count);
284
117
        if (result_column_view.null_map != nullptr) {
285
55
            result_column_view.null_map->resize_fill(count, 0);
286
55
        }
287
117
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
56
                                   size_t count) {
283
56
        result_column_view.data.resize(count);
284
56
        if (result_column_view.null_map != nullptr) {
285
20
            result_column_view.null_map->resize_fill(count, 0);
286
20
        }
287
56
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Line
Count
Source
282
24
                                   size_t count) {
283
24
        result_column_view.data.resize(count);
284
24
        if (result_column_view.null_map != nullptr) {
285
20
            result_column_view.null_map->resize_fill(count, 0);
286
20
        }
287
24
    }
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
288
};
289
290
// Non-scalar version of fill.
291
// For types that do not support random access, such as string, array, map, etc.
292
struct NonScalarFillWithSelector {
293
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
294
                          const Selector& true_selector, const ColumnPtr& false_column,
295
871
                          const Selector& false_selector, size_t count) {
296
871
        DCHECK_EQ(false_selector.size() + true_selector.size(), count)
297
0
                << "Mismatched selector sizes."
298
0
                << " false selector size: " << false_selector.size()
299
0
                << ", true selector size: " << true_selector.size() << ", count: " << count;
300
871
        DCHECK_EQ(true_column->size(), true_selector.size());
301
871
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
871
        auto result_column = result_type->create_column();
304
305
871
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
871
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
871
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
871
        size_t true_index = 0;
310
871
        size_t false_index = 0;
311
3.08k
        for (size_t i = 0; i < count; ++i) {
312
2.21k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
311
                result_column_view.insert_from(true_column_view, true_index++);
314
1.90k
            } else {
315
1.90k
                result_column_view.insert_from(false_column_view, false_index++);
316
1.90k
            }
317
2.21k
        }
318
319
871
        DCHECK_EQ(result_column->size(), count);
320
871
        return result_column;
321
871
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
159
                          size_t count) {
326
159
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
159
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
159
                                             return sum + cs.selector.size();
329
159
                                         }));
330
159
        struct FillColumnWithPos {
331
159
            std::optional<ColumnNullConstView> source_column;
332
159
            size_t pos_in_source; // position in the column
333
334
503
            void insert_to_column(MutableColumnNullView& result_column) const {
335
503
                if (!source_column) {
336
29
                    result_column.insert_null();
337
474
                } else {
338
474
                    result_column.insert_from(*source_column, pos_in_source);
339
474
                }
340
503
            }
341
159
        };
342
343
159
        auto mutable_result_column = result_type->create_column();
344
159
        mutable_result_column->reserve(count);
345
346
159
        MutableColumnNullView mutable_result_column_view =
347
159
                MutableColumnNullView::create(mutable_result_column);
348
349
159
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
389
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
389
            if (column_with_selector.selector.empty()) {
353
121
                continue;
354
121
            }
355
771
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
503
                size_t result_index = column_with_selector.selector[i];
357
503
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
0
                        << "Position " << result_index << " has been filled already.";
359
503
                if (column_with_selector.column) {
360
474
                    ColumnNullConstView column_view =
361
474
                            ColumnNullConstView::create(column_with_selector.column);
362
474
                    fill_positions[result_index].source_column.emplace(column_view);
363
474
                    fill_positions[result_index].pos_in_source = i;
364
474
                } else {
365
29
                    fill_positions[result_index].source_column = std::nullopt;
366
29
                }
367
503
            }
368
268
        }
369
370
503
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
503
            fill_pos.insert_to_column(mutable_result_column_view);
372
503
        }
373
374
159
        DCHECK_EQ(mutable_result_column->size(), count);
375
159
        return mutable_result_column;
376
159
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
11.1k
            : _selector(selector), _count(count) {}
382
383
    // Iterate over the condition column and generate true_selector and false_selector
384
    // based on null_map and data.
385
386
    template <bool is_const, typename Func>
387
11.0k
    void for_each_with_selector(Func& f) const {
388
11.0k
        if (_selector != nullptr) {
389
4.82k
            const auto& selector_data = *_selector;
390
10.0k
            for (size_t i = 0; i < _count; ++i) {
391
5.20k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
5.20k
            }
393
6.27k
        } else {
394
83.0k
            for (size_t i = 0; i < _count; ++i) {
395
76.8k
                f(index_check_const<is_const>(i), i, i);
396
76.8k
            }
397
6.27k
        }
398
11.0k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
27
    void for_each_with_selector(Func& f) const {
388
27
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
27
        } else {
394
57
            for (size_t i = 0; i < _count; ++i) {
395
30
                f(index_check_const<is_const>(i), i, i);
396
30
            }
397
27
        }
398
27
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.25k
    void for_each_with_selector(Func& f) const {
388
2.25k
        if (_selector != nullptr) {
389
728
            const auto& selector_data = *_selector;
390
1.48k
            for (size_t i = 0; i < _count; ++i) {
391
754
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
754
            }
393
1.52k
        } else {
394
4.55k
            for (size_t i = 0; i < _count; ++i) {
395
3.02k
                f(index_check_const<is_const>(i), i, i);
396
3.02k
            }
397
1.52k
        }
398
2.25k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
103
    void for_each_with_selector(Func& f) const {
388
103
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
103
        } else {
394
340
            for (size_t i = 0; i < _count; ++i) {
395
237
                f(index_check_const<is_const>(i), i, i);
396
237
            }
397
103
        }
398
103
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
2.44k
    void for_each_with_selector(Func& f) const {
388
2.44k
        if (_selector != nullptr) {
389
46
            const auto& selector_data = *_selector;
390
137
            for (size_t i = 0; i < _count; ++i) {
391
91
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
91
            }
393
2.39k
        } else {
394
71.9k
            for (size_t i = 0; i < _count; ++i) {
395
69.5k
                f(index_check_const<is_const>(i), i, i);
396
69.5k
            }
397
2.39k
        }
398
2.44k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
4
    void for_each_with_selector(Func& f) const {
388
4
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
4
        } else {
394
14
            for (size_t i = 0; i < _count; ++i) {
395
10
                f(index_check_const<is_const>(i), i, i);
396
10
            }
397
4
        }
398
4
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
63
    void for_each_with_selector(Func& f) const {
388
63
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
63
        } else {
394
298
            for (size_t i = 0; i < _count; ++i) {
395
235
                f(index_check_const<is_const>(i), i, i);
396
235
            }
397
63
        }
398
63
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
2
    void for_each_with_selector(Func& f) const {
388
2
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
2
        } else {
394
6
            for (size_t i = 0; i < _count; ++i) {
395
4
                f(index_check_const<is_const>(i), i, i);
396
4
            }
397
2
        }
398
2
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.68k
    void for_each_with_selector(Func& f) const {
388
1.68k
        if (_selector != nullptr) {
389
8
            const auto& selector_data = *_selector;
390
24
            for (size_t i = 0; i < _count; ++i) {
391
16
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
16
            }
393
1.67k
        } else {
394
3.41k
            for (size_t i = 0; i < _count; ++i) {
395
1.73k
                f(index_check_const<is_const>(i), i, i);
396
1.73k
            }
397
1.67k
        }
398
1.68k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
16
            const auto& selector_data = *_selector;
390
48
            for (size_t i = 0; i < _count; ++i) {
391
32
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
32
            }
393
16
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
16
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.32k
    void for_each_with_selector(Func& f) const {
388
2.32k
        if (_selector != nullptr) {
389
2.32k
            const auto& selector_data = *_selector;
390
4.85k
            for (size_t i = 0; i < _count; ++i) {
391
2.52k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2.52k
            }
393
2.32k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2.32k
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.57k
    void for_each_with_selector(Func& f) const {
388
1.57k
        if (_selector != nullptr) {
389
1.57k
            const auto& selector_data = *_selector;
390
3.16k
            for (size_t i = 0; i < _count; ++i) {
391
1.59k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
1.59k
            }
393
1.57k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
1.57k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
2
    void for_each_with_selector(Func& f) const {
388
2
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
2
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
281
    void for_each_with_selector(Func& f) const {
388
281
        if (_selector != nullptr) {
389
19
            const auto& selector_data = *_selector;
390
55
            for (size_t i = 0; i < _count; ++i) {
391
36
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
36
            }
393
262
        } else {
394
1.58k
            for (size_t i = 0; i < _count; ++i) {
395
1.31k
                f(index_check_const<is_const>(i), i, i);
396
1.31k
            }
397
262
        }
398
281
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
3
    void for_each_with_selector(Func& f) const {
388
3
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
3
        } else {
394
6
            for (size_t i = 0; i < _count; ++i) {
395
3
                f(index_check_const<is_const>(i), i, i);
396
3
            }
397
3
        }
398
3
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
220
    void for_each_with_selector(Func& f) const {
388
220
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
218
        } else {
394
885
            for (size_t i = 0; i < _count; ++i) {
395
667
                f(index_check_const<is_const>(i), i, i);
396
667
            }
397
218
        }
398
220
    }
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_
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_
Line
Count
Source
387
19
    void for_each_with_selector(Func& f) const {
388
19
        if (_selector != nullptr) {
389
19
            const auto& selector_data = *_selector;
390
40
            for (size_t i = 0; i < _count; ++i) {
391
21
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
21
            }
393
19
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
19
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
36
    void for_each_with_selector(Func& f) const {
388
36
        if (_selector != nullptr) {
389
36
            const auto& selector_data = *_selector;
390
82
            for (size_t i = 0; i < _count; ++i) {
391
46
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
46
            }
393
36
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
36
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
42
    void for_each_with_selector(Func& f) const {
388
42
        if (_selector != nullptr) {
389
42
            const auto& selector_data = *_selector;
390
123
            for (size_t i = 0; i < _count; ++i) {
391
81
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
81
            }
393
42
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
42
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
5
    void for_each_with_selector(Func& f) const {
388
5
        if (_selector != nullptr) {
389
5
            const auto& selector_data = *_selector;
390
10
            for (size_t i = 0; i < _count; ++i) {
391
5
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
5
            }
393
5
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
5
    }
399
400
private:
401
    const Selector* _selector;
402
    const size_t _count;
403
};
404
405
// Utility class for columns that return boolean values.
406
// We care about whether the value is null, as well as true/false values.
407
struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper {
408
    ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector,
409
                        size_t count)
410
10.4k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
10.4k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
10.4k
                                      size_t count) {
415
10.4k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
10.4k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
10.4k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
10.4k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
10.4k
        if (this->null_map != nullptr) {
422
4.68k
            const auto& null_map_data = *(this->null_map);
423
6.61k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
6.61k
                if (null_map_data[i]) {
425
202
                    null_func(self_index, executor_index);
426
6.41k
                } else {
427
6.41k
                    if (this->data[i]) {
428
1.44k
                        true_func(self_index, executor_index);
429
4.97k
                    } else {
430
4.97k
                        false_func(self_index, executor_index);
431
4.97k
                    }
432
6.41k
                }
433
6.61k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
3.81k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
3.81k
                if (null_map_data[i]) {
425
108
                    null_func(self_index, executor_index);
426
3.70k
                } else {
427
3.70k
                    if (this->data[i]) {
428
768
                        true_func(self_index, executor_index);
429
2.93k
                    } else {
430
2.93k
                        false_func(self_index, executor_index);
431
2.93k
                    }
432
3.70k
                }
433
3.81k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
245
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
245
                if (null_map_data[i]) {
425
35
                    null_func(self_index, executor_index);
426
210
                } else {
427
210
                    if (this->data[i]) {
428
64
                        true_func(self_index, executor_index);
429
146
                    } else {
430
146
                        false_func(self_index, executor_index);
431
146
                    }
432
210
                }
433
245
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
2.56k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.56k
                if (null_map_data[i]) {
425
59
                    null_func(self_index, executor_index);
426
2.50k
                } else {
427
2.50k
                    if (this->data[i]) {
428
608
                        true_func(self_index, executor_index);
429
1.89k
                    } else {
430
1.89k
                        false_func(self_index, executor_index);
431
1.89k
                    }
432
2.50k
                }
433
2.56k
            };
434
4.68k
            if (is_const) {
435
47
                for_each_with_selector<true>(update);
436
4.63k
            } else {
437
4.63k
                for_each_with_selector<false>(update);
438
4.63k
            }
439
5.80k
        } else {
440
            // non-nullable condition column
441
73.1k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
73.1k
                if (this->data[i]) {
443
10.9k
                    true_func(self_index, executor_index);
444
62.2k
                } else {
445
62.2k
                    false_func(self_index, executor_index);
446
62.2k
                }
447
73.1k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
69.8k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
69.8k
                if (this->data[i]) {
443
10.5k
                    true_func(self_index, executor_index);
444
59.2k
                } else {
445
59.2k
                    false_func(self_index, executor_index);
446
59.2k
                }
447
69.8k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
1.75k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.75k
                if (this->data[i]) {
443
102
                    true_func(self_index, executor_index);
444
1.65k
                } else {
445
1.65k
                    false_func(self_index, executor_index);
446
1.65k
                }
447
1.75k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
1.59k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.59k
                if (this->data[i]) {
443
278
                    true_func(self_index, executor_index);
444
1.31k
                } else {
445
1.31k
                    false_func(self_index, executor_index);
446
1.31k
                }
447
1.59k
            };
448
5.80k
            if (is_const) {
449
105
                for_each_with_selector<true>(update);
450
5.70k
            } else {
451
5.70k
                for_each_with_selector<false>(update);
452
5.70k
            }
453
5.80k
        }
454
10.4k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
4.82k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.82k
        if (this->null_map != nullptr) {
422
2.27k
            const auto& null_map_data = *(this->null_map);
423
2.27k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.27k
                if (null_map_data[i]) {
425
2.27k
                    null_func(self_index, executor_index);
426
2.27k
                } else {
427
2.27k
                    if (this->data[i]) {
428
2.27k
                        true_func(self_index, executor_index);
429
2.27k
                    } else {
430
2.27k
                        false_func(self_index, executor_index);
431
2.27k
                    }
432
2.27k
                }
433
2.27k
            };
434
2.27k
            if (is_const) {
435
27
                for_each_with_selector<true>(update);
436
2.25k
            } else {
437
2.25k
                for_each_with_selector<false>(update);
438
2.25k
            }
439
2.54k
        } else {
440
            // non-nullable condition column
441
2.54k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
2.54k
                if (this->data[i]) {
443
2.54k
                    true_func(self_index, executor_index);
444
2.54k
                } else {
445
2.54k
                    false_func(self_index, executor_index);
446
2.54k
                }
447
2.54k
            };
448
2.54k
            if (is_const) {
449
103
                for_each_with_selector<true>(update);
450
2.44k
            } else {
451
2.44k
                for_each_with_selector<false>(update);
452
2.44k
            }
453
2.54k
        }
454
4.82k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
1.75k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.75k
        if (this->null_map != nullptr) {
422
67
            const auto& null_map_data = *(this->null_map);
423
67
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
67
                if (null_map_data[i]) {
425
67
                    null_func(self_index, executor_index);
426
67
                } else {
427
67
                    if (this->data[i]) {
428
67
                        true_func(self_index, executor_index);
429
67
                    } else {
430
67
                        false_func(self_index, executor_index);
431
67
                    }
432
67
                }
433
67
            };
434
67
            if (is_const) {
435
4
                for_each_with_selector<true>(update);
436
63
            } else {
437
63
                for_each_with_selector<false>(update);
438
63
            }
439
1.68k
        } else {
440
            // non-nullable condition column
441
1.68k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.68k
                if (this->data[i]) {
443
1.68k
                    true_func(self_index, executor_index);
444
1.68k
                } else {
445
1.68k
                    false_func(self_index, executor_index);
446
1.68k
                }
447
1.68k
            };
448
1.68k
            if (is_const) {
449
2
                for_each_with_selector<true>(update);
450
1.68k
            } else {
451
1.68k
                for_each_with_selector<false>(update);
452
1.68k
            }
453
1.68k
        }
454
1.75k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_
Line
Count
Source
420
3.91k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
3.91k
        if (this->null_map != nullptr) {
422
2.33k
            const auto& null_map_data = *(this->null_map);
423
2.33k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.33k
                if (null_map_data[i]) {
425
2.33k
                    null_func(self_index, executor_index);
426
2.33k
                } else {
427
2.33k
                    if (this->data[i]) {
428
2.33k
                        true_func(self_index, executor_index);
429
2.33k
                    } else {
430
2.33k
                        false_func(self_index, executor_index);
431
2.33k
                    }
432
2.33k
                }
433
2.33k
            };
434
2.33k
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
2.32k
            } else {
437
2.32k
                for_each_with_selector<false>(update);
438
2.32k
            }
439
2.33k
        } else {
440
            // non-nullable condition column
441
1.57k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.57k
                if (this->data[i]) {
443
1.57k
                    true_func(self_index, executor_index);
444
1.57k
                } else {
445
1.57k
                    false_func(self_index, executor_index);
446
1.57k
                }
447
1.57k
            };
448
1.57k
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
1.57k
            } else {
451
1.57k
                for_each_with_selector<false>(update);
452
1.57k
            }
453
1.57k
        }
454
3.91k
    }
455
};
456
457
// Utility class for columns that return nullable values.
458
// We only care about whether the value is null, not the actual value.
459
struct ConditionColumnNullView : ColumnNullConstView, ConditionColumnViewHelper {
460
    ConditionColumnNullView(ColumnNullConstView base, const Selector* selector, size_t count)
461
613
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
613
                                          size_t count) {
465
613
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
613
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
613
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
608
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
608
        if (this->null_map != nullptr) {
472
561
            const auto& null_map_data = *(this->null_map);
473
2.09k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
2.09k
                if (null_map_data[i]) {
475
383
                    null_func(self_index, executor_index);
476
1.71k
                } else {
477
1.71k
                    not_null_func(self_index, executor_index);
478
1.71k
                }
479
2.09k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
1.35k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.35k
                if (null_map_data[i]) {
475
204
                    null_func(self_index, executor_index);
476
1.15k
                } else {
477
1.15k
                    not_null_func(self_index, executor_index);
478
1.15k
                }
479
1.35k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
672
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
672
                if (null_map_data[i]) {
475
138
                    null_func(self_index, executor_index);
476
534
                } else {
477
534
                    not_null_func(self_index, executor_index);
478
534
                }
479
672
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
67
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
67
                if (null_map_data[i]) {
475
41
                    null_func(self_index, executor_index);
476
41
                } else {
477
26
                    not_null_func(self_index, executor_index);
478
26
                }
479
67
            };
480
561
            if (is_const) {
481
24
                for_each_with_selector<true>(update);
482
537
            } else {
483
537
                for_each_with_selector<false>(update);
484
537
            }
485
561
        } else {
486
            // non-nullable condition column
487
86
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
86
                not_null_func(self_index, executor_index);
489
86
            };
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE0_clEmmm
Line
Count
Source
487
86
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
86
                not_null_func(self_index, executor_index);
489
86
            };
490
47
            if (is_const) {
491
42
                for_each_with_selector<true>(update);
492
42
            } else {
493
5
                for_each_with_selector<false>(update);
494
5
            }
495
47
        }
496
608
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_
Line
Count
Source
470
283
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
283
        if (this->null_map != nullptr) {
472
283
            const auto& null_map_data = *(this->null_map);
473
283
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
283
                if (null_map_data[i]) {
475
283
                    null_func(self_index, executor_index);
476
283
                } else {
477
283
                    not_null_func(self_index, executor_index);
478
283
                }
479
283
            };
480
283
            if (is_const) {
481
2
                for_each_with_selector<true>(update);
482
281
            } else {
483
281
                for_each_with_selector<false>(update);
484
281
            }
485
283
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
283
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_
Line
Count
Source
470
223
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
223
        if (this->null_map != nullptr) {
472
223
            const auto& null_map_data = *(this->null_map);
473
223
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
223
                if (null_map_data[i]) {
475
223
                    null_func(self_index, executor_index);
476
223
                } else {
477
223
                    not_null_func(self_index, executor_index);
478
223
                }
479
223
            };
480
223
            if (is_const) {
481
3
                for_each_with_selector<true>(update);
482
220
            } else {
483
220
                for_each_with_selector<false>(update);
484
220
            }
485
223
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
223
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_
Line
Count
Source
470
102
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
102
        if (this->null_map != nullptr) {
472
55
            const auto& null_map_data = *(this->null_map);
473
55
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
55
                if (null_map_data[i]) {
475
55
                    null_func(self_index, executor_index);
476
55
                } else {
477
55
                    not_null_func(self_index, executor_index);
478
55
                }
479
55
            };
480
55
            if (is_const) {
481
19
                for_each_with_selector<true>(update);
482
36
            } else {
483
36
                for_each_with_selector<false>(update);
484
36
            }
485
55
        } else {
486
            // non-nullable condition column
487
47
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
47
                not_null_func(self_index, executor_index);
489
47
            };
490
47
            if (is_const) {
491
42
                for_each_with_selector<true>(update);
492
42
            } else {
493
5
                for_each_with_selector<false>(update);
494
5
            }
495
47
        }
496
102
    }
497
};
498
499
} // namespace doris