Coverage Report

Created: 2026-05-27 05:42

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
17.2k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
17.2k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
17.2k
        if (const auto* nullable_column =
40
17.2k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
11.4k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
11.4k
                                        .null_map = &nullable_column->get_null_map_data(),
43
11.4k
                                        .is_const = is_const};
44
11.4k
        } else {
45
5.86k
            return ColumnNullConstView {
46
5.86k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
5.86k
        }
48
17.2k
    }
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
7.89k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
7.89k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
7.89k
        const NullMap* null_map = nullptr;
64
7.89k
        const ArrayType* data = nullptr;
65
7.89k
        if (const auto* nullable_column =
66
7.89k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
3.94k
            null_map = &nullable_column->get_null_map_data();
68
3.94k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
3.94k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
3.95k
        } else {
71
3.95k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
3.95k
        }
73
74
7.89k
        return ColumnNullConstViewScalar {
75
7.89k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
7.89k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
3.33k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
3.33k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
3.33k
        const NullMap* null_map = nullptr;
64
3.33k
        const ArrayType* data = nullptr;
65
3.33k
        if (const auto* nullable_column =
66
3.33k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.03k
            null_map = &nullable_column->get_null_map_data();
68
1.03k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.03k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2.29k
        } else {
71
2.29k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2.29k
        }
73
74
3.33k
        return ColumnNullConstViewScalar {
75
3.33k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
3.33k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
1.54k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
1.54k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
1.54k
        const NullMap* null_map = nullptr;
64
1.54k
        const ArrayType* data = nullptr;
65
1.54k
        if (const auto* nullable_column =
66
1.54k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
487
            null_map = &nullable_column->get_null_map_data();
68
487
            const auto& nested_from_column = nullable_column->get_nested_column();
69
487
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.05k
        } else {
71
1.05k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
1.05k
        }
73
74
1.54k
        return ColumnNullConstViewScalar {
75
1.54k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
1.54k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
14
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
14
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
14
        const NullMap* null_map = nullptr;
64
14
        const ArrayType* data = nullptr;
65
14
        if (const auto* nullable_column =
66
14
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
13
            null_map = &nullable_column->get_null_map_data();
68
13
            const auto& nested_from_column = nullable_column->get_nested_column();
69
13
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
13
        } else {
71
1
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
1
        }
73
74
14
        return ColumnNullConstViewScalar {
75
14
                .data = *data, .null_map = null_map, .is_const = is_const};
76
14
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
2.11k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.11k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.11k
        const NullMap* null_map = nullptr;
64
2.11k
        const ArrayType* data = nullptr;
65
2.11k
        if (const auto* nullable_column =
66
2.11k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.93k
            null_map = &nullable_column->get_null_map_data();
68
1.93k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.93k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.93k
        } else {
71
187
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
187
        }
73
74
2.11k
        return ColumnNullConstViewScalar {
75
2.11k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.11k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
190
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
190
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
190
        const NullMap* null_map = nullptr;
64
190
        const ArrayType* data = nullptr;
65
190
        if (const auto* nullable_column =
66
190
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
106
            null_map = &nullable_column->get_null_map_data();
68
106
            const auto& nested_from_column = nullable_column->get_nested_column();
69
106
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
106
        } else {
71
84
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
84
        }
73
74
190
        return ColumnNullConstViewScalar {
75
190
                .data = *data, .null_map = null_map, .is_const = is_const};
76
190
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
6
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
6
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
6
        const NullMap* null_map = nullptr;
64
6
        const ArrayType* data = nullptr;
65
6
        if (const auto* nullable_column =
66
6
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
6
            null_map = &nullable_column->get_null_map_data();
68
6
            const auto& nested_from_column = nullable_column->get_nested_column();
69
6
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
6
        return ColumnNullConstViewScalar {
75
6
                .data = *data, .null_map = null_map, .is_const = is_const};
76
6
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
313
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
313
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
313
        const NullMap* null_map = nullptr;
64
313
        const ArrayType* data = nullptr;
65
313
        if (const auto* nullable_column =
66
313
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
187
            null_map = &nullable_column->get_null_map_data();
68
187
            const auto& nested_from_column = nullable_column->get_nested_column();
69
187
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
187
        } else {
71
126
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
126
        }
73
74
313
        return ColumnNullConstViewScalar {
75
313
                .data = *data, .null_map = null_map, .is_const = is_const};
76
313
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
6
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
6
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
6
        const NullMap* null_map = nullptr;
64
6
        const ArrayType* data = nullptr;
65
6
        if (const auto* nullable_column =
66
6
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
6
            null_map = &nullable_column->get_null_map_data();
68
6
            const auto& nested_from_column = nullable_column->get_nested_column();
69
6
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
6
        return ColumnNullConstViewScalar {
75
6
                .data = *data, .null_map = null_map, .is_const = is_const};
76
6
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
133
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
133
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
133
        const NullMap* null_map = nullptr;
64
133
        const ArrayType* data = nullptr;
65
133
        if (const auto* nullable_column =
66
133
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
24
            null_map = &nullable_column->get_null_map_data();
68
24
            const auto& nested_from_column = nullable_column->get_nested_column();
69
24
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
109
        } else {
71
109
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
109
        }
73
74
133
        return ColumnNullConstViewScalar {
75
133
                .data = *data, .null_map = null_map, .is_const = is_const};
76
133
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
105
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
105
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
105
        const NullMap* null_map = nullptr;
64
105
        const ArrayType* data = nullptr;
65
105
        if (const auto* nullable_column =
66
105
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
63
            null_map = &nullable_column->get_null_map_data();
68
63
            const auto& nested_from_column = nullable_column->get_nested_column();
69
63
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
63
        } else {
71
42
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
42
        }
73
74
105
        return ColumnNullConstViewScalar {
75
105
                .data = *data, .null_map = null_map, .is_const = is_const};
76
105
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
6
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
6
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
6
        const NullMap* null_map = nullptr;
64
6
        const ArrayType* data = nullptr;
65
6
        if (const auto* nullable_column =
66
6
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
6
            null_map = &nullable_column->get_null_map_data();
68
6
            const auto& nested_from_column = nullable_column->get_nested_column();
69
6
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
6
        return ColumnNullConstViewScalar {
75
6
                .data = *data, .null_map = null_map, .is_const = is_const};
76
6
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
86
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
86
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
86
        const NullMap* null_map = nullptr;
64
86
        const ArrayType* data = nullptr;
65
86
        if (const auto* nullable_column =
66
86
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
29
            null_map = &nullable_column->get_null_map_data();
68
29
            const auto& nested_from_column = nullable_column->get_nested_column();
69
29
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
57
        } else {
71
57
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
57
        }
73
74
86
        return ColumnNullConstViewScalar {
75
86
                .data = *data, .null_map = null_map, .is_const = is_const};
76
86
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
44
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
44
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
44
        const NullMap* null_map = nullptr;
64
44
        const ArrayType* data = nullptr;
65
44
        if (const auto* nullable_column =
66
44
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
44
            null_map = &nullable_column->get_null_map_data();
68
44
            const auto& nested_from_column = nullable_column->get_nested_column();
69
44
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
44
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
44
        return ColumnNullConstViewScalar {
75
44
                .data = *data, .null_map = null_map, .is_const = is_const};
76
44
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
4
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
4
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
4
        const NullMap* null_map = nullptr;
64
4
        const ArrayType* data = nullptr;
65
4
        if (const auto* nullable_column =
66
4
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
4
            null_map = &nullable_column->get_null_map_data();
68
4
            const auto& nested_from_column = nullable_column->get_nested_column();
69
4
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
4
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
4
        return ColumnNullConstViewScalar {
75
4
                .data = *data, .null_map = null_map, .is_const = is_const};
76
4
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
5.72k
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
5.72k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
232
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
232
                                          .null_map = &nullable_column->get_null_map_data()};
88
5.49k
        } else {
89
5.49k
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
5.49k
        }
91
5.72k
    }
92
93
6.44k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
6.44k
        auto index = index_check_const(i, from.is_const);
95
6.44k
        column.insert_from(from.column, index);
96
6.44k
        if (null_map != nullptr && from.null_map != nullptr) {
97
454
            null_map->push_back((*from.null_map)[index]);
98
5.99k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
66
            null_map->push_back(0);
101
66
        }
102
6.44k
    }
103
104
29
    void insert_null() {
105
29
        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
29
        column.insert_default();
111
29
        null_map->push_back(1);
112
29
    }
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
2.40k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2.40k
        ColumnType* data_column = nullptr;
125
2.40k
        NullMap* null_map = nullptr;
126
2.40k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.75k
            null_map = &nullable_column->get_null_map_data();
128
1.75k
            auto& nested_column = nullable_column->get_nested_column();
129
1.75k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.75k
        } else {
131
647
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
647
        }
133
134
2.40k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2.40k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
82
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
82
        ColumnType* data_column = nullptr;
125
82
        NullMap* null_map = nullptr;
126
82
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
0
            null_map = &nullable_column->get_null_map_data();
128
0
            auto& nested_column = nullable_column->get_nested_column();
129
0
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
82
        } else {
131
82
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
82
        }
133
134
82
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
82
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
769
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
769
        ColumnType* data_column = nullptr;
125
769
        NullMap* null_map = nullptr;
126
769
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
469
            null_map = &nullable_column->get_null_map_data();
128
469
            auto& nested_column = nullable_column->get_nested_column();
129
469
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
469
        } else {
131
300
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
300
        }
133
134
769
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
769
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
11
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
11
        ColumnType* data_column = nullptr;
125
11
        NullMap* null_map = nullptr;
126
11
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
11
            null_map = &nullable_column->get_null_map_data();
128
11
            auto& nested_column = nullable_column->get_nested_column();
129
11
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
11
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
11
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.06k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.06k
        ColumnType* data_column = nullptr;
125
1.06k
        NullMap* null_map = nullptr;
126
1.06k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
973
            null_map = &nullable_column->get_null_map_data();
128
973
            auto& nested_column = nullable_column->get_nested_column();
129
973
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
973
        } else {
131
94
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
94
        }
133
134
1.06k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.06k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
97
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
97
        ColumnType* data_column = nullptr;
125
97
        NullMap* null_map = nullptr;
126
97
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
44
            null_map = &nullable_column->get_null_map_data();
128
44
            auto& nested_column = nullable_column->get_nested_column();
129
44
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
53
        } else {
131
53
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
53
        }
133
134
97
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
97
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
5
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
5
        ColumnType* data_column = nullptr;
125
5
        NullMap* null_map = nullptr;
126
5
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
5
            null_map = &nullable_column->get_null_map_data();
128
5
            auto& nested_column = nullable_column->get_nested_column();
129
5
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
5
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
5
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
157
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
157
        ColumnType* data_column = nullptr;
125
157
        NullMap* null_map = nullptr;
126
157
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
149
            null_map = &nullable_column->get_null_map_data();
128
149
            auto& nested_column = nullable_column->get_nested_column();
129
149
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
149
        } else {
131
8
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
8
        }
133
134
157
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
157
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
5
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
5
        ColumnType* data_column = nullptr;
125
5
        NullMap* null_map = nullptr;
126
5
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
5
            null_map = &nullable_column->get_null_map_data();
128
5
            auto& nested_column = nullable_column->get_nested_column();
129
5
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
5
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
5
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
82
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
82
        ColumnType* data_column = nullptr;
125
82
        NullMap* null_map = nullptr;
126
82
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
11
            null_map = &nullable_column->get_null_map_data();
128
11
            auto& nested_column = nullable_column->get_nested_column();
129
11
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
71
        } else {
131
71
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
71
        }
133
134
82
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
82
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
54
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
54
        ColumnType* data_column = nullptr;
125
54
        NullMap* null_map = nullptr;
126
54
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
44
            null_map = &nullable_column->get_null_map_data();
128
44
            auto& nested_column = nullable_column->get_nested_column();
129
44
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
44
        } else {
131
10
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
10
        }
133
134
54
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
54
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
4
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
4
        ColumnType* data_column = nullptr;
125
4
        NullMap* null_map = nullptr;
126
4
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
4
            null_map = &nullable_column->get_null_map_data();
128
4
            auto& nested_column = nullable_column->get_nested_column();
129
4
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
4
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
45
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
45
        ColumnType* data_column = nullptr;
125
45
        NullMap* null_map = nullptr;
126
45
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
16
            null_map = &nullable_column->get_null_map_data();
128
16
            auto& nested_column = nullable_column->get_nested_column();
129
16
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
29
        } else {
131
29
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
29
        }
133
134
45
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
45
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
26
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
26
        ColumnType* data_column = nullptr;
125
26
        NullMap* null_map = nullptr;
126
26
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
26
            null_map = &nullable_column->get_null_map_data();
128
26
            auto& nested_column = nullable_column->get_nested_column();
129
26
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
26
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
26
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
26
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
136
137
4.72k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
4.72k
        auto& result_data = data;
139
4.72k
        const auto& from_data = from.data;
140
141
4.72k
        auto* result_null_map_data = null_map;
142
4.72k
        const auto* from_null_map_data = from.null_map;
143
144
4.72k
        if (from.is_const) {
145
1.35k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
1.35k
                                     from_null_map_data, selector);
147
3.36k
        } else {
148
3.36k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
3.36k
                                      from_null_map_data, selector);
150
3.36k
        }
151
4.72k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
164
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
164
        auto& result_data = data;
139
164
        const auto& from_data = from.data;
140
141
164
        auto* result_null_map_data = null_map;
142
164
        const auto* from_null_map_data = from.null_map;
143
144
164
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
164
        } else {
148
164
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
164
                                      from_null_map_data, selector);
150
164
        }
151
164
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
1.54k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
1.54k
        auto& result_data = data;
139
1.54k
        const auto& from_data = from.data;
140
141
1.54k
        auto* result_null_map_data = null_map;
142
1.54k
        const auto* from_null_map_data = from.null_map;
143
144
1.54k
        if (from.is_const) {
145
682
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
682
                                     from_null_map_data, selector);
147
859
        } else {
148
859
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
859
                                      from_null_map_data, selector);
150
859
        }
151
1.54k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
14
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
14
        auto& result_data = data;
139
14
        const auto& from_data = from.data;
140
141
14
        auto* result_null_map_data = null_map;
142
14
        const auto* from_null_map_data = from.null_map;
143
144
14
        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
12
        } else {
148
12
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
12
                                      from_null_map_data, selector);
150
12
        }
151
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
2.11k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.11k
        auto& result_data = data;
139
2.11k
        const auto& from_data = from.data;
140
141
2.11k
        auto* result_null_map_data = null_map;
142
2.11k
        const auto* from_null_map_data = from.null_map;
143
144
2.11k
        if (from.is_const) {
145
447
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
447
                                     from_null_map_data, selector);
147
1.66k
        } else {
148
1.66k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.66k
                                      from_null_map_data, selector);
150
1.66k
        }
151
2.11k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
190
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
190
        auto& result_data = data;
139
190
        const auto& from_data = from.data;
140
141
190
        auto* result_null_map_data = null_map;
142
190
        const auto* from_null_map_data = from.null_map;
143
144
190
        if (from.is_const) {
145
46
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
46
                                     from_null_map_data, selector);
147
144
        } else {
148
144
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
144
                                      from_null_map_data, selector);
150
144
        }
151
190
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
6
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
6
        auto& result_data = data;
139
6
        const auto& from_data = from.data;
140
141
6
        auto* result_null_map_data = null_map;
142
6
        const auto* from_null_map_data = from.null_map;
143
144
6
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
6
        } else {
148
6
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
6
                                      from_null_map_data, selector);
150
6
        }
151
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
313
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
313
        auto& result_data = data;
139
313
        const auto& from_data = from.data;
140
141
313
        auto* result_null_map_data = null_map;
142
313
        const auto* from_null_map_data = from.null_map;
143
144
313
        if (from.is_const) {
145
112
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
112
                                     from_null_map_data, selector);
147
201
        } else {
148
201
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
201
                                      from_null_map_data, selector);
150
201
        }
151
313
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
6
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
6
        auto& result_data = data;
139
6
        const auto& from_data = from.data;
140
141
6
        auto* result_null_map_data = null_map;
142
6
        const auto* from_null_map_data = from.null_map;
143
144
6
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
6
        } else {
148
6
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
6
                                      from_null_map_data, selector);
150
6
        }
151
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
133
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
133
        auto& result_data = data;
139
133
        const auto& from_data = from.data;
140
141
133
        auto* result_null_map_data = null_map;
142
133
        const auto* from_null_map_data = from.null_map;
143
144
133
        if (from.is_const) {
145
29
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
29
                                     from_null_map_data, selector);
147
104
        } else {
148
104
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
104
                                      from_null_map_data, selector);
150
104
        }
151
133
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
105
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
105
        auto& result_data = data;
139
105
        const auto& from_data = from.data;
140
141
105
        auto* result_null_map_data = null_map;
142
105
        const auto* from_null_map_data = from.null_map;
143
144
105
        if (from.is_const) {
145
31
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
31
                                     from_null_map_data, selector);
147
74
        } else {
148
74
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
74
                                      from_null_map_data, selector);
150
74
        }
151
105
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
6
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
6
        auto& result_data = data;
139
6
        const auto& from_data = from.data;
140
141
6
        auto* result_null_map_data = null_map;
142
6
        const auto* from_null_map_data = from.null_map;
143
144
6
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
6
        } else {
148
6
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
6
                                      from_null_map_data, selector);
150
6
        }
151
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
86
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
86
        auto& result_data = data;
139
86
        const auto& from_data = from.data;
140
141
86
        auto* result_null_map_data = null_map;
142
86
        const auto* from_null_map_data = from.null_map;
143
144
86
        if (from.is_const) {
145
8
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
8
                                     from_null_map_data, selector);
147
78
        } else {
148
78
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
78
                                      from_null_map_data, selector);
150
78
        }
151
86
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
44
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
44
        auto& result_data = data;
139
44
        const auto& from_data = from.data;
140
141
44
        auto* result_null_map_data = null_map;
142
44
        const auto* from_null_map_data = from.null_map;
143
144
44
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
44
        } else {
148
44
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
44
                                      from_null_map_data, selector);
150
44
        }
151
44
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
4
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
4
        auto& result_data = data;
139
4
        const auto& from_data = from.data;
140
141
4
        auto* result_null_map_data = null_map;
142
4
        const auto* from_null_map_data = from.null_map;
143
144
4
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
2
        } else {
148
2
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2
                                      from_null_map_data, selector);
150
2
        }
151
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
152
153
    template <bool is_const>
154
    static void insert_into_result(ArrayType& result_data, const ArrayType& from_data,
155
                                   NullMap* result_null_map_data, const NullMap* from_null_map_data,
156
4.72k
                                   const Selector& selector) {
157
4.72k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4.72k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2.75k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2.75k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4.72k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
164
                                   const Selector& selector) {
157
164
        insert_with_selector<is_const>(result_data, from_data, selector);
158
164
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
0
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
164
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
682
                                   const Selector& selector) {
157
682
        insert_with_selector<is_const>(result_data, from_data, selector);
158
682
        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
682
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
859
                                   const Selector& selector) {
157
859
        insert_with_selector<is_const>(result_data, from_data, selector);
158
859
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
472
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
472
        }
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
859
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_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
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
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb0EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
12
                                   const Selector& selector) {
157
12
        insert_with_selector<is_const>(result_data, from_data, selector);
158
12
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
12
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
12
        }
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
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb1EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
447
                                   const Selector& selector) {
157
447
        insert_with_selector<is_const>(result_data, from_data, selector);
158
447
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
397
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
397
        }
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
447
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.66k
                                   const Selector& selector) {
157
1.66k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.66k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.45k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.45k
        }
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.66k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
46
                                   const Selector& selector) {
157
46
        insert_with_selector<is_const>(result_data, from_data, selector);
158
46
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
10
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
10
        }
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
46
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
144
                                   const Selector& selector) {
157
144
        insert_with_selector<is_const>(result_data, from_data, selector);
158
144
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
63
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
63
        }
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
144
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
6
                                   const Selector& selector) {
157
6
        insert_with_selector<is_const>(result_data, from_data, selector);
158
6
        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
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
112
                                   const Selector& selector) {
157
112
        insert_with_selector<is_const>(result_data, from_data, selector);
158
112
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
8
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
8
        }
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
112
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
201
                                   const Selector& selector) {
157
201
        insert_with_selector<is_const>(result_data, from_data, selector);
158
201
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
165
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
165
        }
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
201
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
6
                                   const Selector& selector) {
157
6
        insert_with_selector<is_const>(result_data, from_data, selector);
158
6
        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
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
29
                                   const Selector& selector) {
157
29
        insert_with_selector<is_const>(result_data, from_data, selector);
158
29
        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
29
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
104
                                   const Selector& selector) {
157
104
        insert_with_selector<is_const>(result_data, from_data, selector);
158
104
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
15
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
15
        }
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
104
    }
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
31
                                   const Selector& selector) {
157
31
        insert_with_selector<is_const>(result_data, from_data, selector);
158
31
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
13
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
13
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
31
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
74
                                   const Selector& selector) {
157
74
        insert_with_selector<is_const>(result_data, from_data, selector);
158
74
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
49
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
49
        }
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
74
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Line
Count
Source
156
6
                                   const Selector& selector) {
157
6
        insert_with_selector<is_const>(result_data, from_data, selector);
158
6
        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
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
8
                                   const Selector& selector) {
157
8
        insert_with_selector<is_const>(result_data, from_data, selector);
158
8
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
78
                                   const Selector& selector) {
157
78
        insert_with_selector<is_const>(result_data, from_data, selector);
158
78
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
22
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
22
        }
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
78
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
44
                                   const Selector& selector) {
157
44
        insert_with_selector<is_const>(result_data, from_data, selector);
158
44
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
44
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
44
        }
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
44
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
7.48k
                                     const Selector& selector) {
169
122k
        for (size_t i = 0; i < selector.size(); ++i) {
170
115k
            auto index = selector[i];
171
115k
            result_data[index] = data[index_check_const<is_const>(i)];
172
115k
        }
173
7.48k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
164
                                     const Selector& selector) {
169
994
        for (size_t i = 0; i < selector.size(); ++i) {
170
830
            auto index = selector[i];
171
830
            result_data[index] = data[index_check_const<is_const>(i)];
172
830
        }
173
164
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
682
                                     const Selector& selector) {
169
49.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
48.9k
            auto index = selector[i];
171
48.9k
            result_data[index] = data[index_check_const<is_const>(i)];
172
48.9k
        }
173
682
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
2
        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
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
859
                                     const Selector& selector) {
169
6.51k
        for (size_t i = 0; i < selector.size(); ++i) {
170
5.65k
            auto index = selector[i];
171
5.65k
            result_data[index] = data[index_check_const<is_const>(i)];
172
5.65k
        }
173
859
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
472
                                     const Selector& selector) {
169
6.08k
        for (size_t i = 0; i < selector.size(); ++i) {
170
5.61k
            auto index = selector[i];
171
5.61k
            result_data[index] = data[index_check_const<is_const>(i)];
172
5.61k
        }
173
472
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
12
        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
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
5
            auto index = selector[i];
171
5
            result_data[index] = data[index_check_const<is_const>(i)];
172
5
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
42
        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
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
42
        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
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
447
                                     const Selector& selector) {
169
1.73k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.29k
            auto index = selector[i];
171
1.29k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.29k
        }
173
447
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
397
                                     const Selector& selector) {
169
1.60k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.20k
            auto index = selector[i];
171
1.20k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.20k
        }
173
397
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.66k
                                     const Selector& selector) {
169
4.05k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.38k
            auto index = selector[i];
171
2.38k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.38k
        }
173
1.66k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.45k
                                     const Selector& selector) {
169
3.50k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.05k
            auto index = selector[i];
171
2.05k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.05k
        }
173
1.45k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
46
                                     const Selector& selector) {
169
217
        for (size_t i = 0; i < selector.size(); ++i) {
170
171
            auto index = selector[i];
171
171
            result_data[index] = data[index_check_const<is_const>(i)];
172
171
        }
173
46
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
26
        for (size_t i = 0; i < selector.size(); ++i) {
170
16
            auto index = selector[i];
171
16
            result_data[index] = data[index_check_const<is_const>(i)];
172
16
        }
173
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
144
                                     const Selector& selector) {
169
418
        for (size_t i = 0; i < selector.size(); ++i) {
170
274
            auto index = selector[i];
171
274
            result_data[index] = data[index_check_const<is_const>(i)];
172
274
        }
173
144
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
63
                                     const Selector& selector) {
169
159
        for (size_t i = 0; i < selector.size(); ++i) {
170
96
            auto index = selector[i];
171
96
            result_data[index] = data[index_check_const<is_const>(i)];
172
96
        }
173
63
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
21
        for (size_t i = 0; i < selector.size(); ++i) {
170
15
            auto index = selector[i];
171
15
            result_data[index] = data[index_check_const<is_const>(i)];
172
15
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
21
        for (size_t i = 0; i < selector.size(); ++i) {
170
15
            auto index = selector[i];
171
15
            result_data[index] = data[index_check_const<is_const>(i)];
172
15
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
112
                                     const Selector& selector) {
169
6.54k
        for (size_t i = 0; i < selector.size(); ++i) {
170
6.43k
            auto index = selector[i];
171
6.43k
            result_data[index] = data[index_check_const<is_const>(i)];
172
6.43k
        }
173
112
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
8
                                     const Selector& selector) {
169
17
        for (size_t i = 0; i < selector.size(); ++i) {
170
9
            auto index = selector[i];
171
9
            result_data[index] = data[index_check_const<is_const>(i)];
172
9
        }
173
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
201
                                     const Selector& selector) {
169
9.55k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.35k
            auto index = selector[i];
171
9.35k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.35k
        }
173
201
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
165
                                     const Selector& selector) {
169
9.49k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.32k
            auto index = selector[i];
171
9.32k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.32k
        }
173
165
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
21
        for (size_t i = 0; i < selector.size(); ++i) {
170
15
            auto index = selector[i];
171
15
            result_data[index] = data[index_check_const<is_const>(i)];
172
15
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
21
        for (size_t i = 0; i < selector.size(); ++i) {
170
15
            auto index = selector[i];
171
15
            result_data[index] = data[index_check_const<is_const>(i)];
172
15
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
29
                                     const Selector& selector) {
169
64
        for (size_t i = 0; i < selector.size(); ++i) {
170
35
            auto index = selector[i];
171
35
            result_data[index] = data[index_check_const<is_const>(i)];
172
35
        }
173
29
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
16
        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
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
104
                                     const Selector& selector) {
169
208
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
104
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
15
                                     const Selector& selector) {
169
21
        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
15
    }
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
31
                                     const Selector& selector) {
169
889
        for (size_t i = 0; i < selector.size(); ++i) {
170
858
            auto index = selector[i];
171
858
            result_data[index] = data[index_check_const<is_const>(i)];
172
858
        }
173
31
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
13
                                     const Selector& selector) {
169
35
        for (size_t i = 0; i < selector.size(); ++i) {
170
22
            auto index = selector[i];
171
22
            result_data[index] = data[index_check_const<is_const>(i)];
172
22
        }
173
13
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
74
                                     const Selector& selector) {
169
204
        for (size_t i = 0; i < selector.size(); ++i) {
170
130
            auto index = selector[i];
171
130
            result_data[index] = data[index_check_const<is_const>(i)];
172
130
        }
173
74
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
49
                                     const Selector& selector) {
169
142
        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
49
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
4
            auto index = selector[i];
171
4
            result_data[index] = data[index_check_const<is_const>(i)];
172
4
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
4
            auto index = selector[i];
171
4
            result_data[index] = data[index_check_const<is_const>(i)];
172
4
        }
173
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
8
                                     const Selector& selector) {
169
23
        for (size_t i = 0; i < selector.size(); ++i) {
170
15
            auto index = selector[i];
171
15
            result_data[index] = data[index_check_const<is_const>(i)];
172
15
        }
173
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
5
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
78
                                     const Selector& selector) {
169
168
        for (size_t i = 0; i < selector.size(); ++i) {
170
90
            auto index = selector[i];
171
90
            result_data[index] = data[index_check_const<is_const>(i)];
172
90
        }
173
78
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
22
                                     const Selector& selector) {
169
52
        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
22
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
44
                                     const Selector& selector) {
169
113
        for (size_t i = 0; i < selector.size(); ++i) {
170
69
            auto index = selector[i];
171
69
            result_data[index] = data[index_check_const<is_const>(i)];
172
69
        }
173
44
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
44
                                     const Selector& selector) {
169
113
        for (size_t i = 0; i < selector.size(); ++i) {
170
69
            auto index = selector[i];
171
69
            result_data[index] = data[index_check_const<is_const>(i)];
172
69
        }
173
44
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
106
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
106
        for (size_t i = 0; i < selector.size(); ++i) {
170
104
            auto index = selector[i];
171
104
            result_data[index] = data[index_check_const<is_const>(i)];
172
104
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
9.89k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.89k
            auto index = selector[i];
171
9.89k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.89k
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
9.89k
        for (size_t i = 0; i < selector.size(); ++i) {
170
9.89k
            auto index = selector[i];
171
9.89k
            result_data[index] = data[index_check_const<is_const>(i)];
172
9.89k
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
174
175
16
    void insert_null(const Selector& selector) {
176
16
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
16
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
15
        auto& null_map_data = *null_map;
183
33
        for (size_t i = 0; i < selector.size(); ++i) {
184
18
            null_map_data[selector[i]] = 1;
185
18
        }
186
15
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_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_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
7
    void insert_null(const Selector& selector) {
176
7
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
7
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
6
        auto& null_map_data = *null_map;
183
15
        for (size_t i = 0; i < selector.size(); ++i) {
184
9
            null_map_data[selector[i]] = 1;
185
9
        }
186
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_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
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_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
367
    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
2.18k
                          const Selector& false_selector, size_t count) {
230
2.18k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2.18k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2.18k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2.18k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2.18k
        auto result_column = result_type->create_column();
236
237
2.18k
        MutableColumnNullViewScalar<PType> result_column_view =
238
2.18k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2.18k
        init_result_column(result_column_view, count);
240
241
2.18k
        ColumnNullConstViewScalar<PType> true_column_view =
242
2.18k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2.18k
        ColumnNullConstViewScalar<PType> false_column_view =
244
2.18k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2.18k
        result_column_view.insert_from(true_column_view, true_selector);
247
2.18k
        result_column_view.insert_from(false_column_view, false_selector);
248
2.18k
        DCHECK_EQ(result_column->size(), count);
249
2.18k
        return result_column;
250
2.18k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
82
                          const Selector& false_selector, size_t count) {
230
82
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
82
        DCHECK_EQ(true_column->size(), true_selector.size());
232
82
        DCHECK_EQ(false_column->size(), false_selector.size());
233
82
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
82
        auto result_column = result_type->create_column();
236
237
82
        MutableColumnNullViewScalar<PType> result_column_view =
238
82
                MutableColumnNullViewScalar<PType>::create(result_column);
239
82
        init_result_column(result_column_view, count);
240
241
82
        ColumnNullConstViewScalar<PType> true_column_view =
242
82
                ColumnNullConstViewScalar<PType>::create(true_column);
243
82
        ColumnNullConstViewScalar<PType> false_column_view =
244
82
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
82
        result_column_view.insert_from(true_column_view, true_selector);
247
82
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
82
        return result_column;
250
82
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
752
                          const Selector& false_selector, size_t count) {
230
752
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
752
        DCHECK_EQ(true_column->size(), true_selector.size());
232
752
        DCHECK_EQ(false_column->size(), false_selector.size());
233
752
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
752
        auto result_column = result_type->create_column();
236
237
752
        MutableColumnNullViewScalar<PType> result_column_view =
238
752
                MutableColumnNullViewScalar<PType>::create(result_column);
239
752
        init_result_column(result_column_view, count);
240
241
752
        ColumnNullConstViewScalar<PType> true_column_view =
242
752
                ColumnNullConstViewScalar<PType>::create(true_column);
243
752
        ColumnNullConstViewScalar<PType> false_column_view =
244
752
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
752
        result_column_view.insert_from(true_column_view, true_selector);
247
752
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
752
        return result_column;
250
752
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1
                          const Selector& false_selector, size_t count) {
230
1
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1
        auto result_column = result_type->create_column();
236
237
1
        MutableColumnNullViewScalar<PType> result_column_view =
238
1
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1
        init_result_column(result_column_view, count);
240
241
1
        ColumnNullConstViewScalar<PType> true_column_view =
242
1
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1
        ColumnNullConstViewScalar<PType> false_column_view =
244
1
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1
        result_column_view.insert_from(true_column_view, true_selector);
247
1
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1
        return result_column;
250
1
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.01k
                          const Selector& false_selector, size_t count) {
230
1.01k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.01k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.01k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.01k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.01k
        auto result_column = result_type->create_column();
236
237
1.01k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.01k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.01k
        init_result_column(result_column_view, count);
240
241
1.01k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.01k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.01k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.01k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.01k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.01k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.01k
        return result_column;
250
1.01k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
89
                          const Selector& false_selector, size_t count) {
230
89
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
89
        DCHECK_EQ(true_column->size(), true_selector.size());
232
89
        DCHECK_EQ(false_column->size(), false_selector.size());
233
89
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
89
        auto result_column = result_type->create_column();
236
237
89
        MutableColumnNullViewScalar<PType> result_column_view =
238
89
                MutableColumnNullViewScalar<PType>::create(result_column);
239
89
        init_result_column(result_column_view, count);
240
241
89
        ColumnNullConstViewScalar<PType> true_column_view =
242
89
                ColumnNullConstViewScalar<PType>::create(true_column);
243
89
        ColumnNullConstViewScalar<PType> false_column_view =
244
89
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
89
        result_column_view.insert_from(true_column_view, true_selector);
247
89
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
89
        return result_column;
250
89
    }
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
135
                          const Selector& false_selector, size_t count) {
230
135
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
135
        DCHECK_EQ(true_column->size(), true_selector.size());
232
135
        DCHECK_EQ(false_column->size(), false_selector.size());
233
135
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
135
        auto result_column = result_type->create_column();
236
237
135
        MutableColumnNullViewScalar<PType> result_column_view =
238
135
                MutableColumnNullViewScalar<PType>::create(result_column);
239
135
        init_result_column(result_column_view, count);
240
241
135
        ColumnNullConstViewScalar<PType> true_column_view =
242
135
                ColumnNullConstViewScalar<PType>::create(true_column);
243
135
        ColumnNullConstViewScalar<PType> false_column_view =
244
135
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
135
        result_column_view.insert_from(true_column_view, true_selector);
247
135
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
135
        return result_column;
250
135
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_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
    }
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
51
                          const Selector& false_selector, size_t count) {
230
51
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
51
        DCHECK_EQ(true_column->size(), true_selector.size());
232
51
        DCHECK_EQ(false_column->size(), false_selector.size());
233
51
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
51
        auto result_column = result_type->create_column();
236
237
51
        MutableColumnNullViewScalar<PType> result_column_view =
238
51
                MutableColumnNullViewScalar<PType>::create(result_column);
239
51
        init_result_column(result_column_view, count);
240
241
51
        ColumnNullConstViewScalar<PType> true_column_view =
242
51
                ColumnNullConstViewScalar<PType>::create(true_column);
243
51
        ColumnNullConstViewScalar<PType> false_column_view =
244
51
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
51
        result_column_view.insert_from(true_column_view, true_selector);
247
51
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
51
        return result_column;
250
51
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
40
                          const Selector& false_selector, size_t count) {
230
40
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
40
        DCHECK_EQ(true_column->size(), true_selector.size());
232
40
        DCHECK_EQ(false_column->size(), false_selector.size());
233
40
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
40
        auto result_column = result_type->create_column();
236
237
40
        MutableColumnNullViewScalar<PType> result_column_view =
238
40
                MutableColumnNullViewScalar<PType>::create(result_column);
239
40
        init_result_column(result_column_view, count);
240
241
40
        ColumnNullConstViewScalar<PType> true_column_view =
242
40
                ColumnNullConstViewScalar<PType>::create(true_column);
243
40
        ColumnNullConstViewScalar<PType> false_column_view =
244
40
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
40
        result_column_view.insert_from(true_column_view, true_selector);
247
40
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
40
        return result_column;
250
40
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
13
                          const Selector& false_selector, size_t count) {
230
13
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
13
        DCHECK_EQ(true_column->size(), true_selector.size());
232
13
        DCHECK_EQ(false_column->size(), false_selector.size());
233
13
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
13
        auto result_column = result_type->create_column();
236
237
13
        MutableColumnNullViewScalar<PType> result_column_view =
238
13
                MutableColumnNullViewScalar<PType>::create(result_column);
239
13
        init_result_column(result_column_view, count);
240
241
13
        ColumnNullConstViewScalar<PType> true_column_view =
242
13
                ColumnNullConstViewScalar<PType>::create(true_column);
243
13
        ColumnNullConstViewScalar<PType> false_column_view =
244
13
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
13
        result_column_view.insert_from(true_column_view, true_selector);
247
13
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
13
        return result_column;
250
13
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
214
                          size_t count) {
255
214
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
214
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
214
                                             return sum + cs.selector.size();
258
214
                                         }));
259
214
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
214
        auto result_column = result_type->create_column();
261
262
214
        MutableColumnNullViewScalar<PType> result_column_view =
263
214
                MutableColumnNullViewScalar<PType>::create(result_column);
264
214
        init_result_column(result_column_view, count);
265
266
362
        for (const auto& columns_and_selector : columns_and_selectors) {
267
362
            if (columns_and_selector.output_nulls()) {
268
14
                result_column_view.insert_null(columns_and_selector.selector);
269
348
            } else {
270
348
                ColumnNullConstViewScalar<PType> from_column_view =
271
348
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
348
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
348
            }
274
362
        }
275
214
        DCHECK_EQ(result_column->size(), count);
276
214
        return result_column;
277
214
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
17
                          size_t count) {
255
17
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
17
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
17
                                             return sum + cs.selector.size();
258
17
                                         }));
259
17
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
17
        auto result_column = result_type->create_column();
261
262
17
        MutableColumnNullViewScalar<PType> result_column_view =
263
17
                MutableColumnNullViewScalar<PType>::create(result_column);
264
17
        init_result_column(result_column_view, count);
265
266
38
        for (const auto& columns_and_selector : columns_and_selectors) {
267
38
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
37
            } else {
270
37
                ColumnNullConstViewScalar<PType> from_column_view =
271
37
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
37
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
37
            }
274
38
        }
275
        DCHECK_EQ(result_column->size(), count);
276
17
        return result_column;
277
17
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_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_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
53
                          size_t count) {
255
53
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
53
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
53
                                             return sum + cs.selector.size();
258
53
                                         }));
259
53
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
53
        auto result_column = result_type->create_column();
261
262
53
        MutableColumnNullViewScalar<PType> result_column_view =
263
53
                MutableColumnNullViewScalar<PType>::create(result_column);
264
53
        init_result_column(result_column_view, count);
265
266
97
        for (const auto& columns_and_selector : columns_and_selectors) {
267
97
            if (columns_and_selector.output_nulls()) {
268
5
                result_column_view.insert_null(columns_and_selector.selector);
269
92
            } else {
270
92
                ColumnNullConstViewScalar<PType> from_column_view =
271
92
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
92
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
92
            }
274
97
        }
275
        DCHECK_EQ(result_column->size(), count);
276
53
        return result_column;
277
53
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_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
13
        for (const auto& columns_and_selector : columns_and_selectors) {
267
13
            if (columns_and_selector.output_nulls()) {
268
1
                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
13
        }
275
        DCHECK_EQ(result_column->size(), count);
276
8
        return result_column;
277
8
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
5
                          size_t count) {
255
5
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
5
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
5
                                             return sum + cs.selector.size();
258
5
                                         }));
259
5
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
5
        auto result_column = result_type->create_column();
261
262
5
        MutableColumnNullViewScalar<PType> result_column_view =
263
5
                MutableColumnNullViewScalar<PType>::create(result_column);
264
5
        init_result_column(result_column_view, count);
265
266
7
        for (const auto& columns_and_selector : columns_and_selectors) {
267
7
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
6
            } else {
270
6
                ColumnNullConstViewScalar<PType> from_column_view =
271
6
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6
            }
274
7
        }
275
        DCHECK_EQ(result_column->size(), count);
276
5
        return result_column;
277
5
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
22
                          size_t count) {
255
22
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
22
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
22
                                             return sum + cs.selector.size();
258
22
                                         }));
259
22
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
22
        auto result_column = result_type->create_column();
261
262
22
        MutableColumnNullViewScalar<PType> result_column_view =
263
22
                MutableColumnNullViewScalar<PType>::create(result_column);
264
22
        init_result_column(result_column_view, count);
265
266
44
        for (const auto& columns_and_selector : columns_and_selectors) {
267
44
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
43
            } else {
270
43
                ColumnNullConstViewScalar<PType> from_column_view =
271
43
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
43
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
43
            }
274
44
        }
275
        DCHECK_EQ(result_column->size(), count);
276
22
        return result_column;
277
22
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
5
                          size_t count) {
255
5
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
5
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
5
                                             return sum + cs.selector.size();
258
5
                                         }));
259
5
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
5
        auto result_column = result_type->create_column();
261
262
5
        MutableColumnNullViewScalar<PType> result_column_view =
263
5
                MutableColumnNullViewScalar<PType>::create(result_column);
264
5
        init_result_column(result_column_view, count);
265
266
7
        for (const auto& columns_and_selector : columns_and_selectors) {
267
7
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
6
            } else {
270
6
                ColumnNullConstViewScalar<PType> from_column_view =
271
6
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6
            }
274
7
        }
275
        DCHECK_EQ(result_column->size(), count);
276
5
        return result_column;
277
5
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
71
                          size_t count) {
255
71
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
71
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
71
                                             return sum + cs.selector.size();
258
71
                                         }));
259
71
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
71
        auto result_column = result_type->create_column();
261
262
71
        MutableColumnNullViewScalar<PType> result_column_view =
263
71
                MutableColumnNullViewScalar<PType>::create(result_column);
264
71
        init_result_column(result_column_view, count);
265
266
111
        for (const auto& columns_and_selector : columns_and_selectors) {
267
111
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
111
            } else {
270
111
                ColumnNullConstViewScalar<PType> from_column_view =
271
111
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
111
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
111
            }
274
111
        }
275
        DCHECK_EQ(result_column->size(), count);
276
71
        return result_column;
277
71
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
3
                          size_t count) {
255
3
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
3
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
3
                                             return sum + cs.selector.size();
258
3
                                         }));
259
3
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
3
        auto result_column = result_type->create_column();
261
262
3
        MutableColumnNullViewScalar<PType> result_column_view =
263
3
                MutableColumnNullViewScalar<PType>::create(result_column);
264
3
        init_result_column(result_column_view, count);
265
266
3
        for (const auto& columns_and_selector : columns_and_selectors) {
267
3
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
3
            } else {
270
3
                ColumnNullConstViewScalar<PType> from_column_view =
271
3
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
3
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
3
            }
274
3
        }
275
        DCHECK_EQ(result_column->size(), count);
276
3
        return result_column;
277
3
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
2
        for (const auto& columns_and_selector : columns_and_selectors) {
267
2
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
2
            } else {
270
2
                ColumnNullConstViewScalar<PType> from_column_view =
271
2
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
2
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
2
            }
274
2
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
5
                          size_t count) {
255
5
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
5
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
5
                                             return sum + cs.selector.size();
258
5
                                         }));
259
5
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
5
        auto result_column = result_type->create_column();
261
262
5
        MutableColumnNullViewScalar<PType> result_column_view =
263
5
                MutableColumnNullViewScalar<PType>::create(result_column);
264
5
        init_result_column(result_column_view, count);
265
266
7
        for (const auto& columns_and_selector : columns_and_selectors) {
267
7
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
6
            } else {
270
6
                ColumnNullConstViewScalar<PType> from_column_view =
271
6
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6
            }
274
7
        }
275
        DCHECK_EQ(result_column->size(), count);
276
5
        return result_column;
277
5
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
13
                          size_t count) {
255
13
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
13
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
13
                                             return sum + cs.selector.size();
258
13
                                         }));
259
13
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
13
        auto result_column = result_type->create_column();
261
262
13
        MutableColumnNullViewScalar<PType> result_column_view =
263
13
                MutableColumnNullViewScalar<PType>::create(result_column);
264
13
        init_result_column(result_column_view, count);
265
266
19
        for (const auto& columns_and_selector : columns_and_selectors) {
267
19
            if (columns_and_selector.output_nulls()) {
268
1
                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
19
        }
275
        DCHECK_EQ(result_column->size(), count);
276
13
        return result_column;
277
13
    }
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
2.40k
                                   size_t count) {
283
2.40k
        result_column_view.data.resize(count);
284
2.40k
        if (result_column_view.null_map != nullptr) {
285
1.75k
            result_column_view.null_map->resize_fill(count, 0);
286
1.75k
        }
287
2.40k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
82
                                   size_t count) {
283
82
        result_column_view.data.resize(count);
284
82
        if (result_column_view.null_map != nullptr) {
285
0
            result_column_view.null_map->resize_fill(count, 0);
286
0
        }
287
82
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
769
                                   size_t count) {
283
769
        result_column_view.data.resize(count);
284
769
        if (result_column_view.null_map != nullptr) {
285
469
            result_column_view.null_map->resize_fill(count, 0);
286
469
        }
287
769
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Line
Count
Source
282
11
                                   size_t count) {
283
11
        result_column_view.data.resize(count);
284
11
        if (result_column_view.null_map != nullptr) {
285
11
            result_column_view.null_map->resize_fill(count, 0);
286
11
        }
287
11
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.06k
                                   size_t count) {
283
1.06k
        result_column_view.data.resize(count);
284
1.06k
        if (result_column_view.null_map != nullptr) {
285
972
            result_column_view.null_map->resize_fill(count, 0);
286
972
        }
287
1.06k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
97
                                   size_t count) {
283
97
        result_column_view.data.resize(count);
284
97
        if (result_column_view.null_map != nullptr) {
285
44
            result_column_view.null_map->resize_fill(count, 0);
286
44
        }
287
97
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
Line
Count
Source
282
5
                                   size_t count) {
283
5
        result_column_view.data.resize(count);
284
5
        if (result_column_view.null_map != nullptr) {
285
5
            result_column_view.null_map->resize_fill(count, 0);
286
5
        }
287
5
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Line
Count
Source
282
157
                                   size_t count) {
283
157
        result_column_view.data.resize(count);
284
157
        if (result_column_view.null_map != nullptr) {
285
149
            result_column_view.null_map->resize_fill(count, 0);
286
149
        }
287
157
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
5
                                   size_t count) {
283
5
        result_column_view.data.resize(count);
284
5
        if (result_column_view.null_map != nullptr) {
285
5
            result_column_view.null_map->resize_fill(count, 0);
286
5
        }
287
5
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
82
                                   size_t count) {
283
82
        result_column_view.data.resize(count);
284
82
        if (result_column_view.null_map != nullptr) {
285
11
            result_column_view.null_map->resize_fill(count, 0);
286
11
        }
287
82
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
54
                                   size_t count) {
283
54
        result_column_view.data.resize(count);
284
54
        if (result_column_view.null_map != nullptr) {
285
44
            result_column_view.null_map->resize_fill(count, 0);
286
44
        }
287
54
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Line
Count
Source
282
4
                                   size_t count) {
283
4
        result_column_view.data.resize(count);
284
4
        if (result_column_view.null_map != nullptr) {
285
4
            result_column_view.null_map->resize_fill(count, 0);
286
4
        }
287
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
45
                                   size_t count) {
283
45
        result_column_view.data.resize(count);
284
45
        if (result_column_view.null_map != nullptr) {
285
16
            result_column_view.null_map->resize_fill(count, 0);
286
16
        }
287
45
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Line
Count
Source
282
26
                                   size_t count) {
283
26
        result_column_view.data.resize(count);
284
26
        if (result_column_view.null_map != nullptr) {
285
26
            result_column_view.null_map->resize_fill(count, 0);
286
26
        }
287
26
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm
288
};
289
290
// Non-scalar version of fill.
291
// For types that do not support random access, such as string, array, map, etc.
292
struct NonScalarFillWithSelector {
293
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
294
                          const Selector& true_selector, const ColumnPtr& false_column,
295
5.55k
                          const Selector& false_selector, size_t count) {
296
5.55k
        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
5.55k
        DCHECK_EQ(true_column->size(), true_selector.size());
301
5.55k
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
5.55k
        auto result_column = result_type->create_column();
304
305
5.55k
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
5.55k
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
5.55k
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
5.55k
        size_t true_index = 0;
310
5.55k
        size_t false_index = 0;
311
11.5k
        for (size_t i = 0; i < count; ++i) {
312
6.02k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
5.27k
                result_column_view.insert_from(true_column_view, true_index++);
314
5.27k
            } else {
315
750
                result_column_view.insert_from(false_column_view, false_index++);
316
750
            }
317
6.02k
        }
318
319
5.55k
        DCHECK_EQ(result_column->size(), count);
320
5.55k
        return result_column;
321
5.55k
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
168
                          size_t count) {
326
168
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
168
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
168
                                             return sum + cs.selector.size();
329
168
                                         }));
330
168
        struct FillColumnWithPos {
331
168
            std::optional<ColumnNullConstView> source_column;
332
168
            size_t pos_in_source; // position in the column
333
334
432
            void insert_to_column(MutableColumnNullView& result_column) const {
335
432
                if (!source_column) {
336
27
                    result_column.insert_null();
337
405
                } else {
338
405
                    result_column.insert_from(*source_column, pos_in_source);
339
405
                }
340
432
            }
341
168
        };
342
343
168
        auto mutable_result_column = result_type->create_column();
344
168
        mutable_result_column->reserve(count);
345
346
168
        MutableColumnNullView mutable_result_column_view =
347
168
                MutableColumnNullView::create(mutable_result_column);
348
349
168
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
917
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
917
            if (column_with_selector.selector.empty()) {
353
641
                continue;
354
641
            }
355
708
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
432
                size_t result_index = column_with_selector.selector[i];
357
432
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
0
                        << "Position " << result_index << " has been filled already.";
359
432
                if (column_with_selector.column) {
360
405
                    ColumnNullConstView column_view =
361
405
                            ColumnNullConstView::create(column_with_selector.column);
362
405
                    fill_positions[result_index].source_column.emplace(column_view);
363
405
                    fill_positions[result_index].pos_in_source = i;
364
405
                } else {
365
27
                    fill_positions[result_index].source_column = std::nullopt;
366
27
                }
367
432
            }
368
276
        }
369
370
432
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
432
            fill_pos.insert_to_column(mutable_result_column_view);
372
432
        }
373
374
168
        DCHECK_EQ(mutable_result_column->size(), count);
375
168
        return mutable_result_column;
376
168
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
8.92k
            : _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
8.90k
    void for_each_with_selector(Func& f) const {
388
8.90k
        if (_selector != nullptr) {
389
1.03k
            const auto& selector_data = *_selector;
390
3.13k
            for (size_t i = 0; i < _count; ++i) {
391
2.10k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2.10k
            }
393
7.86k
        } else {
394
100k
            for (size_t i = 0; i < _count; ++i) {
395
92.6k
                f(index_check_const<is_const>(i), i, i);
396
92.6k
            }
397
7.86k
        }
398
8.90k
    }
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
15
    void for_each_with_selector(Func& f) const {
388
15
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
6
            for (size_t i = 0; i < _count; ++i) {
391
4
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
4
            }
393
13
        } else {
394
26
            for (size_t i = 0; i < _count; ++i) {
395
13
                f(index_check_const<is_const>(i), i, i);
396
13
            }
397
13
        }
398
15
    }
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
665
    void for_each_with_selector(Func& f) const {
388
665
        if (_selector != nullptr) {
389
46
            const auto& selector_data = *_selector;
390
148
            for (size_t i = 0; i < _count; ++i) {
391
102
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
102
            }
393
619
        } else {
394
19.9k
            for (size_t i = 0; i < _count; ++i) {
395
19.3k
                f(index_check_const<is_const>(i), i, i);
396
19.3k
            }
397
619
        }
398
665
    }
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
96
    void for_each_with_selector(Func& f) const {
388
96
        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
96
        } else {
394
300
            for (size_t i = 0; i < _count; ++i) {
395
204
                f(index_check_const<is_const>(i), i, i);
396
204
            }
397
96
        }
398
96
    }
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
1.50k
    void for_each_with_selector(Func& f) const {
388
1.50k
        if (_selector != nullptr) {
389
119
            const auto& selector_data = *_selector;
390
400
            for (size_t i = 0; i < _count; ++i) {
391
281
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
281
            }
393
1.38k
        } else {
394
58.9k
            for (size_t i = 0; i < _count; ++i) {
395
57.6k
                f(index_check_const<is_const>(i), i, i);
396
57.6k
            }
397
1.38k
        }
398
1.50k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
16
        } else {
394
32
            for (size_t i = 0; i < _count; ++i) {
395
16
                f(index_check_const<is_const>(i), i, i);
396
16
            }
397
16
        }
398
16
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
109
    void for_each_with_selector(Func& f) const {
388
109
        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
109
        } else {
394
388
            for (size_t i = 0; i < _count; ++i) {
395
279
                f(index_check_const<is_const>(i), i, i);
396
279
            }
397
109
        }
398
109
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
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
53
    void for_each_with_selector(Func& f) const {
388
53
        if (_selector != nullptr) {
389
18
            const auto& selector_data = *_selector;
390
58
            for (size_t i = 0; i < _count; ++i) {
391
40
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
40
            }
393
35
        } else {
394
147
            for (size_t i = 0; i < _count; ++i) {
395
112
                f(index_check_const<is_const>(i), i, i);
396
112
            }
397
35
        }
398
53
    }
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
14
    void for_each_with_selector(Func& f) const {
388
14
        if (_selector != nullptr) {
389
14
            const auto& selector_data = *_selector;
390
38
            for (size_t i = 0; i < _count; ++i) {
391
24
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
24
            }
393
14
        } 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
14
    }
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
136
    void for_each_with_selector(Func& f) const {
388
136
        if (_selector != nullptr) {
389
136
            const auto& selector_data = *_selector;
390
481
            for (size_t i = 0; i < _count; ++i) {
391
345
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
345
            }
393
136
        } 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
136
    }
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
551
    void for_each_with_selector(Func& f) const {
388
551
        if (_selector != nullptr) {
389
551
            const auto& selector_data = *_selector;
390
1.63k
            for (size_t i = 0; i < _count; ++i) {
391
1.08k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
1.08k
            }
393
551
        } 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
551
    }
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
4
    void for_each_with_selector(Func& f) const {
388
4
        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
4
            for (size_t i = 0; i < _count; ++i) {
395
2
                f(index_check_const<is_const>(i), i, i);
396
2
            }
397
2
        }
398
4
    }
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
5.44k
    void for_each_with_selector(Func& f) const {
388
5.44k
        if (_selector != nullptr) {
389
42
            const auto& selector_data = *_selector;
390
120
            for (size_t i = 0; i < _count; ++i) {
391
78
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
78
            }
393
5.40k
        } else {
394
12.0k
            for (size_t i = 0; i < _count; ++i) {
395
6.62k
                f(index_check_const<is_const>(i), i, i);
396
6.62k
            }
397
5.40k
        }
398
5.44k
    }
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
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_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
197
    void for_each_with_selector(Func& f) const {
388
197
        if (_selector != nullptr) {
389
12
            const auto& selector_data = *_selector;
390
30
            for (size_t i = 0; i < _count; ++i) {
391
18
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
18
            }
393
185
        } else {
394
8.62k
            for (size_t i = 0; i < _count; ++i) {
395
8.43k
                f(index_check_const<is_const>(i), i, i);
396
8.43k
            }
397
185
        }
398
197
    }
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
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_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
56
    void for_each_with_selector(Func& f) const {
388
56
        if (_selector != nullptr) {
389
56
            const auto& selector_data = *_selector;
390
127
            for (size_t i = 0; i < _count; ++i) {
391
71
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
71
            }
393
56
        } 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
56
    }
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
32
    void for_each_with_selector(Func& f) const {
388
32
        if (_selector != nullptr) {
389
32
            const auto& selector_data = *_selector;
390
70
            for (size_t i = 0; i < _count; ++i) {
391
38
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
38
            }
393
32
        } 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
32
    }
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
3.16k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
3.16k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
3.16k
                                      size_t count) {
415
3.16k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
3.16k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
3.16k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
3.16k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
3.16k
        if (this->null_map != nullptr) {
422
955
            const auto& null_map_data = *(this->null_map);
423
20.0k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
20.0k
                if (null_map_data[i]) {
425
270
                    null_func(self_index, executor_index);
426
19.8k
                } else {
427
19.8k
                    if (this->data[i]) {
428
2.08k
                        true_func(self_index, executor_index);
429
17.7k
                    } else {
430
17.7k
                        false_func(self_index, executor_index);
431
17.7k
                    }
432
19.8k
                }
433
20.0k
            };
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
19.4k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
19.4k
                if (null_map_data[i]) {
425
160
                    null_func(self_index, executor_index);
426
19.2k
                } else {
427
19.2k
                    if (this->data[i]) {
428
1.85k
                        true_func(self_index, executor_index);
429
17.4k
                    } else {
430
17.4k
                        false_func(self_index, executor_index);
431
17.4k
                    }
432
19.2k
                }
433
19.4k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
295
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
295
                if (null_map_data[i]) {
425
60
                    null_func(self_index, executor_index);
426
235
                } else {
427
235
                    if (this->data[i]) {
428
110
                        true_func(self_index, executor_index);
429
125
                    } else {
430
125
                        false_func(self_index, executor_index);
431
125
                    }
432
235
                }
433
295
            };
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
369
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
369
                if (null_map_data[i]) {
425
50
                    null_func(self_index, executor_index);
426
319
                } else {
427
319
                    if (this->data[i]) {
428
123
                        true_func(self_index, executor_index);
429
196
                    } else {
430
196
                        false_func(self_index, executor_index);
431
196
                    }
432
319
                }
433
369
            };
434
955
            if (is_const) {
435
45
                for_each_with_selector<true>(update);
436
910
            } else {
437
910
                for_each_with_selector<false>(update);
438
910
            }
439
2.20k
        } else {
440
            // non-nullable condition column
441
59.3k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
59.3k
                if (this->data[i]) {
443
964
                    true_func(self_index, executor_index);
444
58.3k
                } else {
445
58.3k
                    false_func(self_index, executor_index);
446
58.3k
                }
447
59.3k
            };
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
58.0k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
58.0k
                if (this->data[i]) {
443
889
                    true_func(self_index, executor_index);
444
57.2k
                } else {
445
57.2k
                    false_func(self_index, executor_index);
446
57.2k
                }
447
58.0k
            };
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
152
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
152
                if (this->data[i]) {
443
38
                    true_func(self_index, executor_index);
444
114
                } else {
445
114
                    false_func(self_index, executor_index);
446
114
                }
447
152
            };
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.08k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.08k
                if (this->data[i]) {
443
37
                    true_func(self_index, executor_index);
444
1.05k
                } else {
445
1.05k
                    false_func(self_index, executor_index);
446
1.05k
                }
447
1.08k
            };
448
2.20k
            if (is_const) {
449
96
                for_each_with_selector<true>(update);
450
2.11k
            } else {
451
2.11k
                for_each_with_selector<false>(update);
452
2.11k
            }
453
2.20k
        }
454
3.16k
    }
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
2.28k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
2.28k
        if (this->null_map != nullptr) {
422
680
            const auto& null_map_data = *(this->null_map);
423
680
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
680
                if (null_map_data[i]) {
425
680
                    null_func(self_index, executor_index);
426
680
                } else {
427
680
                    if (this->data[i]) {
428
680
                        true_func(self_index, executor_index);
429
680
                    } else {
430
680
                        false_func(self_index, executor_index);
431
680
                    }
432
680
                }
433
680
            };
434
680
            if (is_const) {
435
15
                for_each_with_selector<true>(update);
436
665
            } else {
437
665
                for_each_with_selector<false>(update);
438
665
            }
439
1.60k
        } else {
440
            // non-nullable condition column
441
1.60k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.60k
                if (this->data[i]) {
443
1.60k
                    true_func(self_index, executor_index);
444
1.60k
                } else {
445
1.60k
                    false_func(self_index, executor_index);
446
1.60k
                }
447
1.60k
            };
448
1.60k
            if (is_const) {
449
96
                for_each_with_selector<true>(update);
450
1.50k
            } else {
451
1.50k
                for_each_with_selector<false>(update);
452
1.50k
            }
453
1.60k
        }
454
2.28k
    }
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
178
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
178
        if (this->null_map != nullptr) {
422
125
            const auto& null_map_data = *(this->null_map);
423
125
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
125
                if (null_map_data[i]) {
425
125
                    null_func(self_index, executor_index);
426
125
                } else {
427
125
                    if (this->data[i]) {
428
125
                        true_func(self_index, executor_index);
429
125
                    } else {
430
125
                        false_func(self_index, executor_index);
431
125
                    }
432
125
                }
433
125
            };
434
125
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
109
            } else {
437
109
                for_each_with_selector<false>(update);
438
109
            }
439
125
        } else {
440
            // non-nullable condition column
441
53
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
53
                if (this->data[i]) {
443
53
                    true_func(self_index, executor_index);
444
53
                } else {
445
53
                    false_func(self_index, executor_index);
446
53
                }
447
53
            };
448
53
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
53
            } else {
451
53
                for_each_with_selector<false>(update);
452
53
            }
453
53
        }
454
178
    }
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
701
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
701
        if (this->null_map != nullptr) {
422
150
            const auto& null_map_data = *(this->null_map);
423
150
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
150
                if (null_map_data[i]) {
425
150
                    null_func(self_index, executor_index);
426
150
                } else {
427
150
                    if (this->data[i]) {
428
150
                        true_func(self_index, executor_index);
429
150
                    } else {
430
150
                        false_func(self_index, executor_index);
431
150
                    }
432
150
                }
433
150
            };
434
150
            if (is_const) {
435
14
                for_each_with_selector<true>(update);
436
136
            } else {
437
136
                for_each_with_selector<false>(update);
438
136
            }
439
551
        } else {
440
            // non-nullable condition column
441
551
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
551
                if (this->data[i]) {
443
551
                    true_func(self_index, executor_index);
444
551
                } else {
445
551
                    false_func(self_index, executor_index);
446
551
                }
447
551
            };
448
551
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
551
            } else {
451
551
                for_each_with_selector<false>(update);
452
551
            }
453
551
        }
454
701
    }
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
5.75k
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
5.75k
                                          size_t count) {
465
5.75k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
5.75k
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
5.75k
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
5.74k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
5.74k
        if (this->null_map != nullptr) {
472
5.71k
            const auto& null_map_data = *(this->null_map);
473
15.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
15.2k
                if (null_map_data[i]) {
475
510
                    null_func(self_index, executor_index);
476
14.7k
                } else {
477
14.7k
                    not_null_func(self_index, executor_index);
478
14.7k
                }
479
15.2k
            };
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
6.70k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
6.70k
                if (null_map_data[i]) {
475
379
                    null_func(self_index, executor_index);
476
6.32k
                } else {
477
6.32k
                    not_null_func(self_index, executor_index);
478
6.32k
                }
479
6.70k
            };
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
8.45k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
8.45k
                if (null_map_data[i]) {
475
92
                    null_func(self_index, executor_index);
476
8.36k
                } else {
477
8.36k
                    not_null_func(self_index, executor_index);
478
8.36k
                }
479
8.45k
            };
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
73
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
73
                if (null_map_data[i]) {
475
39
                    null_func(self_index, executor_index);
476
39
                } else {
477
34
                    not_null_func(self_index, executor_index);
478
34
                }
479
73
            };
480
5.71k
            if (is_const) {
481
8
                for_each_with_selector<true>(update);
482
5.70k
            } else {
483
5.70k
                for_each_with_selector<false>(update);
484
5.70k
            }
485
5.71k
        } else {
486
            // non-nullable condition column
487
43
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
43
                not_null_func(self_index, executor_index);
489
43
            };
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
43
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
43
                not_null_func(self_index, executor_index);
489
43
            };
490
36
            if (is_const) {
491
32
                for_each_with_selector<true>(update);
492
32
            } else {
493
4
                for_each_with_selector<false>(update);
494
4
            }
495
36
        }
496
5.74k
    }
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
5.45k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
5.45k
        if (this->null_map != nullptr) {
472
5.45k
            const auto& null_map_data = *(this->null_map);
473
5.45k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
5.45k
                if (null_map_data[i]) {
475
5.45k
                    null_func(self_index, executor_index);
476
5.45k
                } else {
477
5.45k
                    not_null_func(self_index, executor_index);
478
5.45k
                }
479
5.45k
            };
480
5.45k
            if (is_const) {
481
4
                for_each_with_selector<true>(update);
482
5.45k
            } else {
483
5.45k
                for_each_with_selector<false>(update);
484
5.45k
            }
485
18.4E
        } else {
486
            // non-nullable condition column
487
18.4E
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
18.4E
                not_null_func(self_index, executor_index);
489
18.4E
            };
490
18.4E
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
18.4E
            } else {
493
18.4E
                for_each_with_selector<false>(update);
494
18.4E
            }
495
18.4E
        }
496
5.45k
    }
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
199
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
199
        if (this->null_map != nullptr) {
472
199
            const auto& null_map_data = *(this->null_map);
473
199
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
199
                if (null_map_data[i]) {
475
199
                    null_func(self_index, executor_index);
476
199
                } else {
477
199
                    not_null_func(self_index, executor_index);
478
199
                }
479
199
            };
480
199
            if (is_const) {
481
2
                for_each_with_selector<true>(update);
482
197
            } else {
483
197
                for_each_with_selector<false>(update);
484
197
            }
485
199
        } 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
199
    }
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
95
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
95
        if (this->null_map != nullptr) {
472
58
            const auto& null_map_data = *(this->null_map);
473
58
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
58
                if (null_map_data[i]) {
475
58
                    null_func(self_index, executor_index);
476
58
                } else {
477
58
                    not_null_func(self_index, executor_index);
478
58
                }
479
58
            };
480
58
            if (is_const) {
481
2
                for_each_with_selector<true>(update);
482
56
            } else {
483
56
                for_each_with_selector<false>(update);
484
56
            }
485
58
        } else {
486
            // non-nullable condition column
487
37
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
37
                not_null_func(self_index, executor_index);
489
37
            };
490
37
            if (is_const) {
491
32
                for_each_with_selector<true>(update);
492
32
            } else {
493
5
                for_each_with_selector<false>(update);
494
5
            }
495
37
        }
496
95
    }
497
};
498
499
} // namespace doris