Coverage Report

Created: 2026-08-03 16:47

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
3.37k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
3.37k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
3.37k
        if (const auto* nullable_column =
40
3.37k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
1.43k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
1.43k
                                        .null_map = &nullable_column->get_null_map_data(),
43
1.43k
                                        .is_const = is_const};
44
1.94k
        } else {
45
1.94k
            return ColumnNullConstView {
46
1.94k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
1.94k
        }
48
3.37k
    }
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
24.7k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
24.7k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
24.7k
        const NullMap* null_map = nullptr;
64
24.7k
        const ArrayType* data = nullptr;
65
24.7k
        if (const auto* nullable_column =
66
24.7k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
7.51k
            null_map = &nullable_column->get_null_map_data();
68
7.51k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
7.51k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
17.1k
        } else {
71
17.1k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
17.1k
        }
73
74
24.7k
        return ColumnNullConstViewScalar {
75
24.7k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
24.7k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
9.97k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
9.97k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
9.97k
        const NullMap* null_map = nullptr;
64
9.97k
        const ArrayType* data = nullptr;
65
9.97k
        if (const auto* nullable_column =
66
9.97k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
4.76k
            null_map = &nullable_column->get_null_map_data();
68
4.76k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
4.76k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5.21k
        } else {
71
5.21k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5.21k
        }
73
74
9.97k
        return ColumnNullConstViewScalar {
75
9.97k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
9.97k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
11.5k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
11.5k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
11.5k
        const NullMap* null_map = nullptr;
64
11.5k
        const ArrayType* data = nullptr;
65
11.5k
        if (const auto* nullable_column =
66
11.5k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
363
            null_map = &nullable_column->get_null_map_data();
68
363
            const auto& nested_from_column = nullable_column->get_nested_column();
69
363
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
11.2k
        } else {
71
11.2k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
11.2k
        }
73
74
11.5k
        return ColumnNullConstViewScalar {
75
11.5k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
11.5k
    }
_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
12
            null_map = &nullable_column->get_null_map_data();
68
12
            const auto& nested_from_column = nullable_column->get_nested_column();
69
12
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
12
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
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.18k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.18k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.18k
        const NullMap* null_map = nullptr;
64
2.18k
        const ArrayType* data = nullptr;
65
2.18k
        if (const auto* nullable_column =
66
2.18k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.86k
            null_map = &nullable_column->get_null_map_data();
68
1.86k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.86k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.86k
        } else {
71
320
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
320
        }
73
74
2.18k
        return ColumnNullConstViewScalar {
75
2.18k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.18k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
349
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
349
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
349
        const NullMap* null_map = nullptr;
64
349
        const ArrayType* data = nullptr;
65
349
        if (const auto* nullable_column =
66
349
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
178
            null_map = &nullable_column->get_null_map_data();
68
178
            const auto& nested_from_column = nullable_column->get_nested_column();
69
178
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
178
        } else {
71
171
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
171
        }
73
74
349
        return ColumnNullConstViewScalar {
75
349
                .data = *data, .null_map = null_map, .is_const = is_const};
76
349
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
2
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2
        const NullMap* null_map = nullptr;
64
2
        const ArrayType* data = nullptr;
65
2
        if (const auto* nullable_column =
66
2
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
0
            null_map = &nullable_column->get_null_map_data();
68
0
            const auto& nested_from_column = nullable_column->get_nested_column();
69
0
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
2
        return ColumnNullConstViewScalar {
75
2
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
8
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
8
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
8
        const NullMap* null_map = nullptr;
64
8
        const ArrayType* data = nullptr;
65
8
        if (const auto* nullable_column =
66
8
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
6
            null_map = &nullable_column->get_null_map_data();
68
6
            const auto& nested_from_column = nullable_column->get_nested_column();
69
6
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
8
        return ColumnNullConstViewScalar {
75
8
                .data = *data, .null_map = null_map, .is_const = is_const};
76
8
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
221
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
221
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
221
        const NullMap* null_map = nullptr;
64
221
        const ArrayType* data = nullptr;
65
221
        if (const auto* nullable_column =
66
221
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
161
            null_map = &nullable_column->get_null_map_data();
68
161
            const auto& nested_from_column = nullable_column->get_nested_column();
69
161
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
161
        } else {
71
60
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
60
        }
73
74
221
        return ColumnNullConstViewScalar {
75
221
                .data = *data, .null_map = null_map, .is_const = is_const};
76
221
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_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
12
            null_map = &nullable_column->get_null_map_data();
68
12
            const auto& nested_from_column = nullable_column->get_nested_column();
69
12
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
12
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
14
        return ColumnNullConstViewScalar {
75
14
                .data = *data, .null_map = null_map, .is_const = is_const};
76
14
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
147
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
147
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
147
        const NullMap* null_map = nullptr;
64
147
        const ArrayType* data = nullptr;
65
147
        if (const auto* nullable_column =
66
147
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
25
            null_map = &nullable_column->get_null_map_data();
68
25
            const auto& nested_from_column = nullable_column->get_nested_column();
69
25
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
122
        } else {
71
122
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
122
        }
73
74
147
        return ColumnNullConstViewScalar {
75
147
                .data = *data, .null_map = null_map, .is_const = is_const};
76
147
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
101
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
101
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
101
        const NullMap* null_map = nullptr;
64
101
        const ArrayType* data = nullptr;
65
101
        if (const auto* nullable_column =
66
101
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
33
            null_map = &nullable_column->get_null_map_data();
68
33
            const auto& nested_from_column = nullable_column->get_nested_column();
69
33
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
68
        } else {
71
68
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
68
        }
73
74
101
        return ColumnNullConstViewScalar {
75
101
                .data = *data, .null_map = null_map, .is_const = is_const};
76
101
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
11
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
11
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
11
        const NullMap* null_map = nullptr;
64
11
        const ArrayType* data = nullptr;
65
11
        if (const auto* nullable_column =
66
11
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
11
            null_map = &nullable_column->get_null_map_data();
68
11
            const auto& nested_from_column = nullable_column->get_nested_column();
69
11
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
11
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
11
        return ColumnNullConstViewScalar {
75
11
                .data = *data, .null_map = null_map, .is_const = is_const};
76
11
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
24
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
24
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
24
        const NullMap* null_map = nullptr;
64
24
        const ArrayType* data = nullptr;
65
24
        if (const auto* nullable_column =
66
24
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
17
            null_map = &nullable_column->get_null_map_data();
68
17
            const auto& nested_from_column = nullable_column->get_nested_column();
69
17
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
17
        } else {
71
7
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
7
        }
73
74
24
        return ColumnNullConstViewScalar {
75
24
                .data = *data, .null_map = null_map, .is_const = is_const};
76
24
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
52
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
52
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
52
        const NullMap* null_map = nullptr;
64
52
        const ArrayType* data = nullptr;
65
52
        if (const auto* nullable_column =
66
52
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
45
            null_map = &nullable_column->get_null_map_data();
68
45
            const auto& nested_from_column = nullable_column->get_nested_column();
69
45
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
45
        } else {
71
7
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
7
        }
73
74
52
        return ColumnNullConstViewScalar {
75
52
                .data = *data, .null_map = null_map, .is_const = is_const};
76
52
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
16
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
16
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
16
        const NullMap* null_map = nullptr;
64
16
        const ArrayType* data = nullptr;
65
16
        if (const auto* nullable_column =
66
16
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
16
            null_map = &nullable_column->get_null_map_data();
68
16
            const auto& nested_from_column = nullable_column->get_nested_column();
69
16
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
16
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
16
        return ColumnNullConstViewScalar {
75
16
                .data = *data, .null_map = null_map, .is_const = is_const};
76
16
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
807
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
807
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
367
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
367
                                          .null_map = &nullable_column->get_null_map_data()};
88
440
        } else {
89
440
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
440
        }
91
807
    }
92
93
2.48k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
2.48k
        auto index = index_check_const(i, from.is_const);
95
2.48k
        column.insert_from(from.column, index);
96
2.48k
        if (null_map != nullptr && from.null_map != nullptr) {
97
518
            null_map->push_back((*from.null_map)[index]);
98
1.97k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
1.03k
            null_map->push_back(0);
101
1.03k
        }
102
2.48k
    }
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
6.14k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
6.14k
        ColumnType* data_column = nullptr;
125
6.14k
        NullMap* null_map = nullptr;
126
6.14k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.48k
            null_map = &nullable_column->get_null_map_data();
128
1.48k
            auto& nested_column = nullable_column->get_nested_column();
129
1.48k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4.66k
        } else {
131
4.66k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4.66k
        }
133
134
6.14k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
6.14k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
76
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
76
        ColumnType* data_column = nullptr;
125
76
        NullMap* null_map = nullptr;
126
76
        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
74
        } else {
131
74
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
74
        }
133
134
76
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
76
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
4.43k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
4.43k
        ColumnType* data_column = nullptr;
125
4.43k
        NullMap* null_map = nullptr;
126
4.43k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
343
            null_map = &nullable_column->get_null_map_data();
128
343
            auto& nested_column = nullable_column->get_nested_column();
129
343
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4.09k
        } else {
131
4.09k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4.09k
        }
133
134
4.43k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
4.43k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
12
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
12
        ColumnType* data_column = nullptr;
125
12
        NullMap* null_map = nullptr;
126
12
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
10
            null_map = &nullable_column->get_null_map_data();
128
10
            auto& nested_column = nullable_column->get_nested_column();
129
10
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
10
        } else {
131
2
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
2
        }
133
134
12
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.10k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.10k
        ColumnType* data_column = nullptr;
125
1.10k
        NullMap* null_map = nullptr;
126
1.10k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
899
            null_map = &nullable_column->get_null_map_data();
128
899
            auto& nested_column = nullable_column->get_nested_column();
129
899
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
899
        } else {
131
206
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
206
        }
133
134
1.10k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.10k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
181
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
181
        ColumnType* data_column = nullptr;
125
181
        NullMap* null_map = nullptr;
126
181
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
52
            null_map = &nullable_column->get_null_map_data();
128
52
            auto& nested_column = nullable_column->get_nested_column();
129
52
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
129
        } else {
131
129
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
129
        }
133
134
181
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
181
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_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
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
2
        } else {
131
2
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
2
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
7
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
7
        ColumnType* data_column = nullptr;
125
7
        NullMap* null_map = nullptr;
126
7
        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
2
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
2
        }
133
134
7
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
7
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
112
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
112
        ColumnType* data_column = nullptr;
125
112
        NullMap* null_map = nullptr;
126
112
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
88
            null_map = &nullable_column->get_null_map_data();
128
88
            auto& nested_column = nullable_column->get_nested_column();
129
88
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
88
        } else {
131
24
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
24
        }
133
134
112
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
112
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
9
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
9
        ColumnType* data_column = nullptr;
125
9
        NullMap* null_map = nullptr;
126
9
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
9
            null_map = &nullable_column->get_null_map_data();
128
9
            auto& nested_column = nullable_column->get_nested_column();
129
9
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
9
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
9
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
9
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
91
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
91
        ColumnType* data_column = nullptr;
125
91
        NullMap* null_map = nullptr;
126
91
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
9
            null_map = &nullable_column->get_null_map_data();
128
9
            auto& nested_column = nullable_column->get_nested_column();
129
9
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
82
        } else {
131
82
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
82
        }
133
134
91
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
91
    }
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
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
28
        } else {
131
28
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
28
        }
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
6
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
6
        ColumnType* data_column = nullptr;
125
6
        NullMap* null_map = nullptr;
126
6
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
6
            null_map = &nullable_column->get_null_map_data();
128
6
            auto& nested_column = nullable_column->get_nested_column();
129
6
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
6
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
6
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
15
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
15
        ColumnType* data_column = nullptr;
125
15
        NullMap* null_map = nullptr;
126
15
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
8
            null_map = &nullable_column->get_null_map_data();
128
8
            auto& nested_column = nullable_column->get_nested_column();
129
8
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
8
        } else {
131
7
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
7
        }
133
134
15
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
15
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
32
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
32
        ColumnType* data_column = nullptr;
125
32
        NullMap* null_map = nullptr;
126
32
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
19
            null_map = &nullable_column->get_null_map_data();
128
19
            auto& nested_column = nullable_column->get_nested_column();
129
19
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
19
        } else {
131
13
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
13
        }
133
134
32
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
32
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
10
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
10
        ColumnType* data_column = nullptr;
125
10
        NullMap* null_map = nullptr;
126
10
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
10
            null_map = &nullable_column->get_null_map_data();
128
10
            auto& nested_column = nullable_column->get_nested_column();
129
10
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
10
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
10
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
10
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
136
137
14.8k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
14.8k
        auto& result_data = data;
139
14.8k
        const auto& from_data = from.data;
140
141
14.8k
        auto* result_null_map_data = null_map;
142
14.8k
        const auto* from_null_map_data = from.null_map;
143
144
14.8k
        if (from.is_const) {
145
4.48k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4.48k
                                     from_null_map_data, selector);
147
10.3k
        } else {
148
10.3k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
10.3k
                                      from_null_map_data, selector);
150
10.3k
        }
151
14.8k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
150
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
150
        auto& result_data = data;
139
150
        const auto& from_data = from.data;
140
141
150
        auto* result_null_map_data = null_map;
142
150
        const auto* from_null_map_data = from.null_map;
143
144
150
        if (from.is_const) {
145
4
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4
                                     from_null_map_data, selector);
147
146
        } else {
148
146
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
146
                                      from_null_map_data, selector);
150
146
        }
151
150
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
11.5k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
11.5k
        auto& result_data = data;
139
11.5k
        const auto& from_data = from.data;
140
141
11.5k
        auto* result_null_map_data = null_map;
142
11.5k
        const auto* from_null_map_data = from.null_map;
143
144
11.5k
        if (from.is_const) {
145
3.80k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
3.80k
                                     from_null_map_data, selector);
147
7.77k
        } else {
148
7.77k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
7.77k
                                      from_null_map_data, selector);
150
7.77k
        }
151
11.5k
    }
_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.18k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.18k
        auto& result_data = data;
139
2.18k
        const auto& from_data = from.data;
140
141
2.18k
        auto* result_null_map_data = null_map;
142
2.18k
        const auto* from_null_map_data = from.null_map;
143
144
2.18k
        if (from.is_const) {
145
469
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
469
                                     from_null_map_data, selector);
147
1.71k
        } else {
148
1.71k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.71k
                                      from_null_map_data, selector);
150
1.71k
        }
151
2.18k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
349
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
349
        auto& result_data = data;
139
349
        const auto& from_data = from.data;
140
141
349
        auto* result_null_map_data = null_map;
142
349
        const auto* from_null_map_data = from.null_map;
143
144
349
        if (from.is_const) {
145
62
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
62
                                     from_null_map_data, selector);
147
287
        } else {
148
287
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
287
                                      from_null_map_data, selector);
150
287
        }
151
349
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
2
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2
        auto& result_data = data;
139
2
        const auto& from_data = from.data;
140
141
2
        auto* result_null_map_data = null_map;
142
2
        const auto* from_null_map_data = from.null_map;
143
144
2
        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
0
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
0
                                      from_null_map_data, selector);
150
0
        }
151
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
8
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
8
        auto& result_data = data;
139
8
        const auto& from_data = from.data;
140
141
8
        auto* result_null_map_data = null_map;
142
8
        const auto* from_null_map_data = from.null_map;
143
144
8
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     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
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
221
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
221
        auto& result_data = data;
139
221
        const auto& from_data = from.data;
140
141
221
        auto* result_null_map_data = null_map;
142
221
        const auto* from_null_map_data = from.null_map;
143
144
221
        if (from.is_const) {
145
49
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
49
                                     from_null_map_data, selector);
147
172
        } else {
148
172
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
172
                                      from_null_map_data, selector);
150
172
        }
151
221
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_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
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
14
        } else {
148
14
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
14
                                      from_null_map_data, selector);
150
14
        }
151
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
147
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
147
        auto& result_data = data;
139
147
        const auto& from_data = from.data;
140
141
147
        auto* result_null_map_data = null_map;
142
147
        const auto* from_null_map_data = from.null_map;
143
144
147
        if (from.is_const) {
145
28
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
28
                                     from_null_map_data, selector);
147
119
        } else {
148
119
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
119
                                      from_null_map_data, selector);
150
119
        }
151
147
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
101
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
101
        auto& result_data = data;
139
101
        const auto& from_data = from.data;
140
141
101
        auto* result_null_map_data = null_map;
142
101
        const auto* from_null_map_data = from.null_map;
143
144
101
        if (from.is_const) {
145
38
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
38
                                     from_null_map_data, selector);
147
63
        } else {
148
63
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
63
                                      from_null_map_data, selector);
150
63
        }
151
101
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
11
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
11
        auto& result_data = data;
139
11
        const auto& from_data = from.data;
140
141
11
        auto* result_null_map_data = null_map;
142
11
        const auto* from_null_map_data = from.null_map;
143
144
11
        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
11
        } else {
148
11
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
11
                                      from_null_map_data, selector);
150
11
        }
151
11
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
24
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
24
        auto& result_data = data;
139
24
        const auto& from_data = from.data;
140
141
24
        auto* result_null_map_data = null_map;
142
24
        const auto* from_null_map_data = from.null_map;
143
144
24
        if (from.is_const) {
145
6
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
6
                                     from_null_map_data, selector);
147
18
        } else {
148
18
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
18
                                      from_null_map_data, selector);
150
18
        }
151
24
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
52
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
52
        auto& result_data = data;
139
52
        const auto& from_data = from.data;
140
141
52
        auto* result_null_map_data = null_map;
142
52
        const auto* from_null_map_data = from.null_map;
143
144
52
        if (from.is_const) {
145
6
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
6
                                     from_null_map_data, selector);
147
46
        } else {
148
46
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
46
                                      from_null_map_data, selector);
150
46
        }
151
52
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
16
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
16
        auto& result_data = data;
139
16
        const auto& from_data = from.data;
140
141
16
        auto* result_null_map_data = null_map;
142
16
        const auto* from_null_map_data = from.null_map;
143
144
16
        if (from.is_const) {
145
10
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
10
                                     from_null_map_data, selector);
147
10
        } 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
16
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
152
153
    template <bool is_const>
154
    static void insert_into_result(ArrayType& result_data, const ArrayType& from_data,
155
                                   NullMap* result_null_map_data, const NullMap* from_null_map_data,
156
14.8k
                                   const Selector& selector) {
157
14.8k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
14.8k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2.38k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2.38k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
14.8k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
4
                                   const Selector& selector) {
157
4
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
146
                                   const Selector& selector) {
157
146
        insert_with_selector<is_const>(result_data, from_data, selector);
158
146
        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
146
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
3.80k
                                   const Selector& selector) {
157
3.80k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
3.80k
        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
3.80k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
7.77k
                                   const Selector& selector) {
157
7.77k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
7.77k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
347
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
347
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
7.77k
    }
_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
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
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
469
                                   const Selector& selector) {
157
469
        insert_with_selector<is_const>(result_data, from_data, selector);
158
469
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
416
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
416
        }
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
469
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.71k
                                   const Selector& selector) {
157
1.71k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.71k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.26k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.26k
        }
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.71k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
62
                                   const Selector& selector) {
157
62
        insert_with_selector<is_const>(result_data, from_data, selector);
158
62
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
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
62
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
287
                                   const Selector& selector) {
157
287
        insert_with_selector<is_const>(result_data, from_data, selector);
158
287
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
62
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
62
        }
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
287
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_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
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
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
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
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
2
    }
_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
49
                                   const Selector& selector) {
157
49
        insert_with_selector<is_const>(result_data, from_data, selector);
158
49
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
14
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
14
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
49
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
172
                                   const Selector& selector) {
157
172
        insert_with_selector<is_const>(result_data, from_data, selector);
158
172
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
119
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
119
        }
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
172
    }
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
14
                                   const Selector& selector) {
157
14
        insert_with_selector<is_const>(result_data, from_data, selector);
158
14
        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
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
28
                                   const Selector& selector) {
157
28
        insert_with_selector<is_const>(result_data, from_data, selector);
158
28
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
3
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
3
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
28
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
119
                                   const Selector& selector) {
157
119
        insert_with_selector<is_const>(result_data, from_data, selector);
158
119
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
11
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
11
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
119
    }
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
38
                                   const Selector& selector) {
157
38
        insert_with_selector<is_const>(result_data, from_data, selector);
158
38
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
38
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
63
                                   const Selector& selector) {
157
63
        insert_with_selector<is_const>(result_data, from_data, selector);
158
63
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
25
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
25
        }
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
63
    }
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
11
                                   const Selector& selector) {
157
11
        insert_with_selector<is_const>(result_data, from_data, selector);
158
11
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
11
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
11
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
11
    }
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
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
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
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
18
                                   const Selector& selector) {
157
18
        insert_with_selector<is_const>(result_data, from_data, selector);
158
18
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
11
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
11
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
18
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_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
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
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_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
34
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
34
        }
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
    }
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
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
10
                                   const Selector& selector) {
157
10
        insert_with_selector<is_const>(result_data, from_data, selector);
158
10
        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
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_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
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
17.2k
                                     const Selector& selector) {
169
89.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
72.3k
            auto index = selector[i];
171
72.3k
            result_data[index] = data[index_check_const<is_const>(i)];
172
72.3k
        }
173
17.2k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
148
                                     const Selector& selector) {
169
273
        for (size_t i = 0; i < selector.size(); ++i) {
170
125
            auto index = selector[i];
171
125
            result_data[index] = data[index_check_const<is_const>(i)];
172
125
        }
173
148
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3.80k
                                     const Selector& selector) {
169
54.8k
        for (size_t i = 0; i < selector.size(); ++i) {
170
50.9k
            auto index = selector[i];
171
50.9k
            result_data[index] = data[index_check_const<is_const>(i)];
172
50.9k
        }
173
3.80k
    }
_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
7.77k
                                     const Selector& selector) {
169
10.2k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.51k
            auto index = selector[i];
171
2.51k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.51k
        }
173
7.77k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
347
                                     const Selector& selector) {
169
2.11k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.76k
            auto index = selector[i];
171
1.76k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.76k
        }
173
347
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_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
469
                                     const Selector& selector) {
169
1.82k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.35k
            auto index = selector[i];
171
1.35k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.35k
        }
173
469
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
416
                                     const Selector& selector) {
169
1.68k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.26k
            auto index = selector[i];
171
1.26k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.26k
        }
173
416
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.71k
                                     const Selector& selector) {
169
4.43k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.72k
            auto index = selector[i];
171
2.72k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.72k
        }
173
1.71k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.26k
                                     const Selector& selector) {
169
3.04k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.77k
            auto index = selector[i];
171
1.77k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.77k
        }
173
1.26k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
62
                                     const Selector& selector) {
169
246
        for (size_t i = 0; i < selector.size(); ++i) {
170
184
            auto index = selector[i];
171
184
            result_data[index] = data[index_check_const<is_const>(i)];
172
184
        }
173
62
    }
_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
287
                                     const Selector& selector) {
169
1.00k
        for (size_t i = 0; i < selector.size(); ++i) {
170
716
            auto index = selector[i];
171
716
            result_data[index] = data[index_check_const<is_const>(i)];
172
716
        }
173
287
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
62
                                     const Selector& selector) {
169
167
        for (size_t i = 0; i < selector.size(); ++i) {
170
105
            auto index = selector[i];
171
105
            result_data[index] = data[index_check_const<is_const>(i)];
172
105
        }
173
62
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
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
49
                                     const Selector& selector) {
169
94
        for (size_t i = 0; i < selector.size(); ++i) {
170
45
            auto index = selector[i];
171
45
            result_data[index] = data[index_check_const<is_const>(i)];
172
45
        }
173
49
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
14
                                     const Selector& selector) {
169
28
        for (size_t i = 0; i < selector.size(); ++i) {
170
14
            auto index = selector[i];
171
14
            result_data[index] = data[index_check_const<is_const>(i)];
172
14
        }
173
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
172
                                     const Selector& selector) {
169
403
        for (size_t i = 0; i < selector.size(); ++i) {
170
231
            auto index = selector[i];
171
231
            result_data[index] = data[index_check_const<is_const>(i)];
172
231
        }
173
172
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
119
                                     const Selector& selector) {
169
315
        for (size_t i = 0; i < selector.size(); ++i) {
170
196
            auto index = selector[i];
171
196
            result_data[index] = data[index_check_const<is_const>(i)];
172
196
        }
173
119
    }
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
14
                                     const Selector& selector) {
169
35
        for (size_t i = 0; i < selector.size(); ++i) {
170
21
            auto index = selector[i];
171
21
            result_data[index] = data[index_check_const<is_const>(i)];
172
21
        }
173
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
33
        for (size_t i = 0; i < selector.size(); ++i) {
170
21
            auto index = selector[i];
171
21
            result_data[index] = data[index_check_const<is_const>(i)];
172
21
        }
173
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
28
                                     const Selector& selector) {
169
59
        for (size_t i = 0; i < selector.size(); ++i) {
170
31
            auto index = selector[i];
171
31
            result_data[index] = data[index_check_const<is_const>(i)];
172
31
        }
173
28
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
3
            auto index = selector[i];
171
3
            result_data[index] = data[index_check_const<is_const>(i)];
172
3
        }
173
3
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
119
                                     const Selector& selector) {
169
271
        for (size_t i = 0; i < selector.size(); ++i) {
170
152
            auto index = selector[i];
171
152
            result_data[index] = data[index_check_const<is_const>(i)];
172
152
        }
173
119
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
32
        for (size_t i = 0; i < selector.size(); ++i) {
170
21
            auto index = selector[i];
171
21
            result_data[index] = data[index_check_const<is_const>(i)];
172
21
        }
173
11
    }
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
38
                                     const Selector& selector) {
169
6.46k
        for (size_t i = 0; i < selector.size(); ++i) {
170
6.42k
            auto index = selector[i];
171
6.42k
            result_data[index] = data[index_check_const<is_const>(i)];
172
6.42k
        }
173
38
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
63
                                     const Selector& selector) {
169
1.32k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.26k
            auto index = selector[i];
171
1.26k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.26k
        }
173
63
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
25
                                     const Selector& selector) {
169
58
        for (size_t i = 0; i < selector.size(); ++i) {
170
33
            auto index = selector[i];
171
33
            result_data[index] = data[index_check_const<is_const>(i)];
172
33
        }
173
25
    }
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
11
                                     const Selector& selector) {
169
21
        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
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
21
        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
11
    }
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
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_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
3
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
18
                                     const Selector& selector) {
169
49
        for (size_t i = 0; i < selector.size(); ++i) {
170
31
            auto index = selector[i];
171
31
            result_data[index] = data[index_check_const<is_const>(i)];
172
31
        }
173
18
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
32
        for (size_t i = 0; i < selector.size(); ++i) {
170
21
            auto index = selector[i];
171
21
            result_data[index] = data[index_check_const<is_const>(i)];
172
21
        }
173
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_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
    }
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
46
                                     const Selector& selector) {
169
120
        for (size_t i = 0; i < selector.size(); ++i) {
170
74
            auto index = selector[i];
171
74
            result_data[index] = data[index_check_const<is_const>(i)];
172
74
        }
173
46
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
34
                                     const Selector& selector) {
169
98
        for (size_t i = 0; i < selector.size(); ++i) {
170
64
            auto index = selector[i];
171
64
            result_data[index] = data[index_check_const<is_const>(i)];
172
64
        }
173
34
    }
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
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
20
        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
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
20
        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
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
0
            auto index = selector[i];
171
0
            result_data[index] = data[index_check_const<is_const>(i)];
172
0
        }
173
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
174
175
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
6.21k
    bool output_nulls() const { return column.get() == nullptr; }
199
200
    std::string debug_string() const {
201
        std::stringstream ss;
202
        ss << "ColumnAndSelector(selector_size=" << selector.size()
203
           << ", output_nulls=" << output_nulls()
204
           << ", column size=" << (column ? std::to_string(column->size()) : "null") << ")";
205
206
        ss << "\n selector data: [";
207
        for (size_t i = 0; i < selector.size(); ++i) {
208
            if (i != 0) {
209
                ss << ", ";
210
            }
211
            ss << selector[i];
212
        }
213
        ss << "]";
214
        return ss.str();
215
    }
216
};
217
218
// Scalar version of fill.
219
// Initializes the result column at the beginning.
220
// Subsequently fills data from each column into the result column using selectors.
221
template <PrimitiveType PType>
222
struct ScalarFillWithSelector {
223
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
224
    using ArrayType = typename ColumnType::Container;
225
226
public:
227
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
228
                          const Selector& true_selector, const ColumnPtr& false_column,
229
4.33k
                          const Selector& false_selector, size_t count) {
230
4.33k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4.33k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4.33k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4.33k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4.33k
        auto result_column = result_type->create_column();
236
237
4.33k
        MutableColumnNullViewScalar<PType> result_column_view =
238
4.33k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4.33k
        init_result_column(result_column_view, count);
240
241
4.33k
        ColumnNullConstViewScalar<PType> true_column_view =
242
4.33k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4.33k
        ColumnNullConstViewScalar<PType> false_column_view =
244
4.33k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4.33k
        result_column_view.insert_from(true_column_view, true_selector);
247
4.33k
        result_column_view.insert_from(false_column_view, false_selector);
248
4.33k
        DCHECK_EQ(result_column->size(), count);
249
4.33k
        return result_column;
250
4.33k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
74
                          const Selector& false_selector, size_t count) {
230
74
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
74
        DCHECK_EQ(true_column->size(), true_selector.size());
232
74
        DCHECK_EQ(false_column->size(), false_selector.size());
233
74
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
74
        auto result_column = result_type->create_column();
236
237
74
        MutableColumnNullViewScalar<PType> result_column_view =
238
74
                MutableColumnNullViewScalar<PType>::create(result_column);
239
74
        init_result_column(result_column_view, count);
240
241
74
        ColumnNullConstViewScalar<PType> true_column_view =
242
74
                ColumnNullConstViewScalar<PType>::create(true_column);
243
74
        ColumnNullConstViewScalar<PType> false_column_view =
244
74
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
74
        result_column_view.insert_from(true_column_view, true_selector);
247
74
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
74
        return result_column;
250
74
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2.88k
                          const Selector& false_selector, size_t count) {
230
2.88k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2.88k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2.88k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2.88k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2.88k
        auto result_column = result_type->create_column();
236
237
2.88k
        MutableColumnNullViewScalar<PType> result_column_view =
238
2.88k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2.88k
        init_result_column(result_column_view, count);
240
241
2.88k
        ColumnNullConstViewScalar<PType> true_column_view =
242
2.88k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2.88k
        ColumnNullConstViewScalar<PType> false_column_view =
244
2.88k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2.88k
        result_column_view.insert_from(true_column_view, true_selector);
247
2.88k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2.88k
        return result_column;
250
2.88k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.02k
                          const Selector& false_selector, size_t count) {
230
1.02k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.02k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.02k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.02k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.02k
        auto result_column = result_type->create_column();
236
237
1.02k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.02k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.02k
        init_result_column(result_column_view, count);
240
241
1.02k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.02k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.02k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.02k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.02k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.02k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.02k
        return result_column;
250
1.02k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
166
                          const Selector& false_selector, size_t count) {
230
166
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
166
        DCHECK_EQ(true_column->size(), true_selector.size());
232
166
        DCHECK_EQ(false_column->size(), false_selector.size());
233
166
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
166
        auto result_column = result_type->create_column();
236
237
166
        MutableColumnNullViewScalar<PType> result_column_view =
238
166
                MutableColumnNullViewScalar<PType>::create(result_column);
239
166
        init_result_column(result_column_view, count);
240
241
166
        ColumnNullConstViewScalar<PType> true_column_view =
242
166
                ColumnNullConstViewScalar<PType>::create(true_column);
243
166
        ColumnNullConstViewScalar<PType> false_column_view =
244
166
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
166
        result_column_view.insert_from(true_column_view, true_selector);
247
166
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
166
        return result_column;
250
166
    }
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
87
                          const Selector& false_selector, size_t count) {
230
87
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
87
        DCHECK_EQ(true_column->size(), true_selector.size());
232
87
        DCHECK_EQ(false_column->size(), false_selector.size());
233
87
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
87
        auto result_column = result_type->create_column();
236
237
87
        MutableColumnNullViewScalar<PType> result_column_view =
238
87
                MutableColumnNullViewScalar<PType>::create(result_column);
239
87
        init_result_column(result_column_view, count);
240
241
87
        ColumnNullConstViewScalar<PType> true_column_view =
242
87
                ColumnNullConstViewScalar<PType>::create(true_column);
243
87
        ColumnNullConstViewScalar<PType> false_column_view =
244
87
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
87
        result_column_view.insert_from(true_column_view, true_selector);
247
87
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
87
        return result_column;
250
87
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
4
                          const Selector& false_selector, size_t count) {
230
4
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4
        auto result_column = result_type->create_column();
236
237
4
        MutableColumnNullViewScalar<PType> result_column_view =
238
4
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4
        init_result_column(result_column_view, count);
240
241
4
        ColumnNullConstViewScalar<PType> true_column_view =
242
4
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4
        ColumnNullConstViewScalar<PType> false_column_view =
244
4
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4
        result_column_view.insert_from(true_column_view, true_selector);
247
4
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
4
        return result_column;
250
4
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
16
                          const Selector& false_selector, size_t count) {
230
16
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
16
        DCHECK_EQ(true_column->size(), true_selector.size());
232
16
        DCHECK_EQ(false_column->size(), false_selector.size());
233
16
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
16
        auto result_column = result_type->create_column();
236
237
16
        MutableColumnNullViewScalar<PType> result_column_view =
238
16
                MutableColumnNullViewScalar<PType>::create(result_column);
239
16
        init_result_column(result_column_view, count);
240
241
16
        ColumnNullConstViewScalar<PType> true_column_view =
242
16
                ColumnNullConstViewScalar<PType>::create(true_column);
243
16
        ColumnNullConstViewScalar<PType> false_column_view =
244
16
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
16
        result_column_view.insert_from(true_column_view, true_selector);
247
16
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
16
        return result_column;
250
16
    }
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
46
                          const Selector& false_selector, size_t count) {
230
46
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
46
        DCHECK_EQ(true_column->size(), true_selector.size());
232
46
        DCHECK_EQ(false_column->size(), false_selector.size());
233
46
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
46
        auto result_column = result_type->create_column();
236
237
46
        MutableColumnNullViewScalar<PType> result_column_view =
238
46
                MutableColumnNullViewScalar<PType>::create(result_column);
239
46
        init_result_column(result_column_view, count);
240
241
46
        ColumnNullConstViewScalar<PType> true_column_view =
242
46
                ColumnNullConstViewScalar<PType>::create(true_column);
243
46
        ColumnNullConstViewScalar<PType> false_column_view =
244
46
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
46
        result_column_view.insert_from(true_column_view, true_selector);
247
46
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
46
        return result_column;
250
46
    }
_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
6
                          const Selector& false_selector, size_t count) {
230
6
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
6
        DCHECK_EQ(true_column->size(), true_selector.size());
232
6
        DCHECK_EQ(false_column->size(), false_selector.size());
233
6
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
6
        auto result_column = result_type->create_column();
236
237
6
        MutableColumnNullViewScalar<PType> result_column_view =
238
6
                MutableColumnNullViewScalar<PType>::create(result_column);
239
6
        init_result_column(result_column_view, count);
240
241
6
        ColumnNullConstViewScalar<PType> true_column_view =
242
6
                ColumnNullConstViewScalar<PType>::create(true_column);
243
6
        ColumnNullConstViewScalar<PType> false_column_view =
244
6
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
6
        result_column_view.insert_from(true_column_view, true_selector);
247
6
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
6
        return result_column;
250
6
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
17
                          const Selector& false_selector, size_t count) {
230
17
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
17
        DCHECK_EQ(true_column->size(), true_selector.size());
232
17
        DCHECK_EQ(false_column->size(), false_selector.size());
233
17
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
17
        auto result_column = result_type->create_column();
236
237
17
        MutableColumnNullViewScalar<PType> result_column_view =
238
17
                MutableColumnNullViewScalar<PType>::create(result_column);
239
17
        init_result_column(result_column_view, count);
240
241
17
        ColumnNullConstViewScalar<PType> true_column_view =
242
17
                ColumnNullConstViewScalar<PType>::create(true_column);
243
17
        ColumnNullConstViewScalar<PType> false_column_view =
244
17
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
17
        result_column_view.insert_from(true_column_view, true_selector);
247
17
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
17
        return result_column;
250
17
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
6
                          const Selector& false_selector, size_t count) {
230
6
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
6
        DCHECK_EQ(true_column->size(), true_selector.size());
232
6
        DCHECK_EQ(false_column->size(), false_selector.size());
233
6
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
6
        auto result_column = result_type->create_column();
236
237
6
        MutableColumnNullViewScalar<PType> result_column_view =
238
6
                MutableColumnNullViewScalar<PType>::create(result_column);
239
6
        init_result_column(result_column_view, count);
240
241
6
        ColumnNullConstViewScalar<PType> true_column_view =
242
6
                ColumnNullConstViewScalar<PType>::create(true_column);
243
6
        ColumnNullConstViewScalar<PType> false_column_view =
244
6
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
6
        result_column_view.insert_from(true_column_view, true_selector);
247
6
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
6
        return result_column;
250
6
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
1.80k
                          size_t count) {
255
1.80k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.80k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.80k
                                             return sum + cs.selector.size();
258
1.80k
                                         }));
259
1.80k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.80k
        auto result_column = result_type->create_column();
261
262
1.80k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.80k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.80k
        init_result_column(result_column_view, count);
265
266
6.21k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
6.21k
            if (columns_and_selector.output_nulls()) {
268
14
                result_column_view.insert_null(columns_and_selector.selector);
269
6.20k
            } else {
270
6.20k
                ColumnNullConstViewScalar<PType> from_column_view =
271
6.20k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6.20k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6.20k
            }
274
6.21k
        }
275
1.80k
        DCHECK_EQ(result_column->size(), count);
276
1.80k
        return result_column;
277
1.80k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_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
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1.55k
                          size_t count) {
255
1.55k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.55k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.55k
                                             return sum + cs.selector.size();
258
1.55k
                                         }));
259
1.55k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.55k
        auto result_column = result_type->create_column();
261
262
1.55k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.55k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.55k
        init_result_column(result_column_view, count);
265
266
5.81k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5.81k
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
5.81k
            } else {
270
5.81k
                ColumnNullConstViewScalar<PType> from_column_view =
271
5.81k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5.81k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5.81k
            }
274
5.81k
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1.55k
        return result_column;
277
1.55k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
12
                          size_t count) {
255
12
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
12
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
12
                                             return sum + cs.selector.size();
258
12
                                         }));
259
12
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
12
        auto result_column = result_type->create_column();
261
262
12
        MutableColumnNullViewScalar<PType> result_column_view =
263
12
                MutableColumnNullViewScalar<PType>::create(result_column);
264
12
        init_result_column(result_column_view, count);
265
266
16
        for (const auto& columns_and_selector : columns_and_selectors) {
267
16
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
14
            } else {
270
14
                ColumnNullConstViewScalar<PType> from_column_view =
271
14
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
14
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
14
            }
274
16
        }
275
        DCHECK_EQ(result_column->size(), count);
276
12
        return result_column;
277
12
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
73
                          size_t count) {
255
73
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
73
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
73
                                             return sum + cs.selector.size();
258
73
                                         }));
259
73
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
73
        auto result_column = result_type->create_column();
261
262
73
        MutableColumnNullViewScalar<PType> result_column_view =
263
73
                MutableColumnNullViewScalar<PType>::create(result_column);
264
73
        init_result_column(result_column_view, count);
265
266
129
        for (const auto& columns_and_selector : columns_and_selectors) {
267
129
            if (columns_and_selector.output_nulls()) {
268
5
                result_column_view.insert_null(columns_and_selector.selector);
269
124
            } else {
270
124
                ColumnNullConstViewScalar<PType> from_column_view =
271
124
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
124
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
124
            }
274
129
        }
275
        DCHECK_EQ(result_column->size(), count);
276
73
        return result_column;
277
73
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
15
                          size_t count) {
255
15
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
15
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
15
                                             return sum + cs.selector.size();
258
15
                                         }));
259
15
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
15
        auto result_column = result_type->create_column();
261
262
15
        MutableColumnNullViewScalar<PType> result_column_view =
263
15
                MutableColumnNullViewScalar<PType>::create(result_column);
264
15
        init_result_column(result_column_view, count);
265
266
18
        for (const auto& columns_and_selector : columns_and_selectors) {
267
18
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
17
            } else {
270
17
                ColumnNullConstViewScalar<PType> from_column_view =
271
17
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
17
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
17
            }
274
18
        }
275
        DCHECK_EQ(result_column->size(), count);
276
15
        return result_column;
277
15
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_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
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
7
                          size_t count) {
255
7
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
7
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
7
                                             return sum + cs.selector.size();
258
7
                                         }));
259
7
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
7
        auto result_column = result_type->create_column();
261
262
7
        MutableColumnNullViewScalar<PType> result_column_view =
263
7
                MutableColumnNullViewScalar<PType>::create(result_column);
264
7
        init_result_column(result_column_view, count);
265
266
9
        for (const auto& columns_and_selector : columns_and_selectors) {
267
9
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
8
            } else {
270
8
                ColumnNullConstViewScalar<PType> from_column_view =
271
8
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
8
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
8
            }
274
9
        }
275
        DCHECK_EQ(result_column->size(), count);
276
7
        return result_column;
277
7
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
25
                          size_t count) {
255
25
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
25
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
25
                                             return sum + cs.selector.size();
258
25
                                         }));
259
25
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
25
        auto result_column = result_type->create_column();
261
262
25
        MutableColumnNullViewScalar<PType> result_column_view =
263
25
                MutableColumnNullViewScalar<PType>::create(result_column);
264
25
        init_result_column(result_column_view, count);
265
266
48
        for (const auto& columns_and_selector : columns_and_selectors) {
267
48
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
47
            } else {
270
47
                ColumnNullConstViewScalar<PType> from_column_view =
271
47
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
47
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
47
            }
274
48
        }
275
        DCHECK_EQ(result_column->size(), count);
276
25
        return result_column;
277
25
    }
_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
75
                          size_t count) {
255
75
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
75
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
75
                                             return sum + cs.selector.size();
258
75
                                         }));
259
75
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
75
        auto result_column = result_type->create_column();
261
262
75
        MutableColumnNullViewScalar<PType> result_column_view =
263
75
                MutableColumnNullViewScalar<PType>::create(result_column);
264
75
        init_result_column(result_column_view, count);
265
266
115
        for (const auto& columns_and_selector : columns_and_selectors) {
267
115
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
115
            } else {
270
115
                ColumnNullConstViewScalar<PType> from_column_view =
271
115
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
115
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
115
            }
274
115
        }
275
        DCHECK_EQ(result_column->size(), count);
276
75
        return result_column;
277
75
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_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
9
        for (const auto& columns_and_selector : columns_and_selectors) {
267
9
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
9
            } else {
270
9
                ColumnNullConstViewScalar<PType> from_column_view =
271
9
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
9
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
9
            }
274
9
        }
275
        DCHECK_EQ(result_column->size(), count);
276
8
        return result_column;
277
8
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
7
        for (const auto& columns_and_selector : columns_and_selectors) {
267
7
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
7
            } else {
270
7
                ColumnNullConstViewScalar<PType> from_column_view =
271
7
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
7
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
7
            }
274
7
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
9
                          size_t count) {
255
9
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
9
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
9
                                             return sum + cs.selector.size();
258
9
                                         }));
259
9
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
9
        auto result_column = result_type->create_column();
261
262
9
        MutableColumnNullViewScalar<PType> result_column_view =
263
9
                MutableColumnNullViewScalar<PType>::create(result_column);
264
9
        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
9
        return result_column;
277
9
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
15
                          size_t count) {
255
15
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
15
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
15
                                             return sum + cs.selector.size();
258
15
                                         }));
259
15
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
15
        auto result_column = result_type->create_column();
261
262
15
        MutableColumnNullViewScalar<PType> result_column_view =
263
15
                MutableColumnNullViewScalar<PType>::create(result_column);
264
15
        init_result_column(result_column_view, count);
265
266
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
15
        return result_column;
277
15
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
4
        for (const auto& columns_and_selector : columns_and_selectors) {
267
4
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
4
            } else {
270
4
                ColumnNullConstViewScalar<PType> from_column_view =
271
4
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
4
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
4
            }
274
4
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
278
279
private:
280
    // if result_column is nullable,nullmap will all init to false
281
    static void init_result_column(MutableColumnNullViewScalar<PType>& result_column_view,
282
6.14k
                                   size_t count) {
283
6.14k
        result_column_view.data.resize(count);
284
6.14k
        if (result_column_view.null_map != nullptr) {
285
1.48k
            result_column_view.null_map->resize_fill(count, 0);
286
1.48k
        }
287
6.14k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
76
                                   size_t count) {
283
76
        result_column_view.data.resize(count);
284
76
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
76
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
4.43k
                                   size_t count) {
283
4.43k
        result_column_view.data.resize(count);
284
4.43k
        if (result_column_view.null_map != nullptr) {
285
343
            result_column_view.null_map->resize_fill(count, 0);
286
343
        }
287
4.43k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Line
Count
Source
282
12
                                   size_t count) {
283
12
        result_column_view.data.resize(count);
284
12
        if (result_column_view.null_map != nullptr) {
285
10
            result_column_view.null_map->resize_fill(count, 0);
286
10
        }
287
12
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.10k
                                   size_t count) {
283
1.10k
        result_column_view.data.resize(count);
284
1.10k
        if (result_column_view.null_map != nullptr) {
285
897
            result_column_view.null_map->resize_fill(count, 0);
286
897
        }
287
1.10k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
181
                                   size_t count) {
283
181
        result_column_view.data.resize(count);
284
181
        if (result_column_view.null_map != nullptr) {
285
52
            result_column_view.null_map->resize_fill(count, 0);
286
52
        }
287
181
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
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
0
            result_column_view.null_map->resize_fill(count, 0);
286
0
        }
287
2
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
Line
Count
Source
282
7
                                   size_t count) {
283
7
        result_column_view.data.resize(count);
284
7
        if (result_column_view.null_map != nullptr) {
285
5
            result_column_view.null_map->resize_fill(count, 0);
286
5
        }
287
7
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Line
Count
Source
282
111
                                   size_t count) {
283
111
        result_column_view.data.resize(count);
284
111
        if (result_column_view.null_map != nullptr) {
285
88
            result_column_view.null_map->resize_fill(count, 0);
286
88
        }
287
111
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
9
                                   size_t count) {
283
9
        result_column_view.data.resize(count);
284
9
        if (result_column_view.null_map != nullptr) {
285
9
            result_column_view.null_map->resize_fill(count, 0);
286
9
        }
287
9
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
91
                                   size_t count) {
283
91
        result_column_view.data.resize(count);
284
91
        if (result_column_view.null_map != nullptr) {
285
9
            result_column_view.null_map->resize_fill(count, 0);
286
9
        }
287
91
    }
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
26
            result_column_view.null_map->resize_fill(count, 0);
286
26
        }
287
54
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Line
Count
Source
282
6
                                   size_t count) {
283
6
        result_column_view.data.resize(count);
284
6
        if (result_column_view.null_map != nullptr) {
285
6
            result_column_view.null_map->resize_fill(count, 0);
286
6
        }
287
6
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
15
                                   size_t count) {
283
15
        result_column_view.data.resize(count);
284
15
        if (result_column_view.null_map != nullptr) {
285
8
            result_column_view.null_map->resize_fill(count, 0);
286
8
        }
287
15
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Line
Count
Source
282
32
                                   size_t count) {
283
32
        result_column_view.data.resize(count);
284
32
        if (result_column_view.null_map != nullptr) {
285
19
            result_column_view.null_map->resize_fill(count, 0);
286
19
        }
287
32
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm
Line
Count
Source
282
10
                                   size_t count) {
283
10
        result_column_view.data.resize(count);
284
10
        if (result_column_view.null_map != nullptr) {
285
10
            result_column_view.null_map->resize_fill(count, 0);
286
10
        }
287
10
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm
288
};
289
290
// Non-scalar version of fill.
291
// For types that do not support random access, such as string, array, map, etc.
292
struct NonScalarFillWithSelector {
293
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
294
                          const Selector& true_selector, const ColumnPtr& false_column,
295
492
                          const Selector& false_selector, size_t count) {
296
492
        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
492
        DCHECK_EQ(true_column->size(), true_selector.size());
301
492
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
492
        auto result_column = result_type->create_column();
304
305
492
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
492
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
492
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
492
        size_t true_index = 0;
310
492
        size_t false_index = 0;
311
1.52k
        for (size_t i = 0; i < count; ++i) {
312
1.03k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
407
                result_column_view.insert_from(true_column_view, true_index++);
314
624
            } else {
315
624
                result_column_view.insert_from(false_column_view, false_index++);
316
624
            }
317
1.03k
        }
318
319
492
        DCHECK_EQ(result_column->size(), count);
320
492
        return result_column;
321
492
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
310
                          size_t count) {
326
310
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
310
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
310
                                             return sum + cs.selector.size();
329
310
                                         }));
330
310
        struct FillColumnWithPos {
331
310
            std::optional<ColumnNullConstView> source_column;
332
310
            size_t pos_in_source; // position in the column
333
334
1.47k
            void insert_to_column(MutableColumnNullView& result_column) const {
335
1.47k
                if (!source_column) {
336
27
                    result_column.insert_null();
337
1.44k
                } else {
338
1.44k
                    result_column.insert_from(*source_column, pos_in_source);
339
1.44k
                }
340
1.47k
            }
341
310
        };
342
343
310
        auto mutable_result_column = result_type->create_column();
344
310
        mutable_result_column->reserve(count);
345
346
310
        MutableColumnNullView mutable_result_column_view =
347
310
                MutableColumnNullView::create(mutable_result_column);
348
349
310
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
594
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
594
            if (column_with_selector.selector.empty()) {
353
162
                continue;
354
162
            }
355
1.90k
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
1.47k
                size_t result_index = column_with_selector.selector[i];
357
1.47k
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
0
                        << "Position " << result_index << " has been filled already.";
359
1.47k
                if (column_with_selector.column) {
360
1.44k
                    ColumnNullConstView column_view =
361
1.44k
                            ColumnNullConstView::create(column_with_selector.column);
362
1.44k
                    fill_positions[result_index].source_column.emplace(column_view);
363
1.44k
                    fill_positions[result_index].pos_in_source = i;
364
1.44k
                } else {
365
27
                    fill_positions[result_index].source_column = std::nullopt;
366
27
                }
367
1.47k
            }
368
432
        }
369
370
1.47k
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
1.47k
            fill_pos.insert_to_column(mutable_result_column_view);
372
1.47k
        }
373
374
310
        DCHECK_EQ(mutable_result_column->size(), count);
375
310
        return mutable_result_column;
376
310
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
10.7k
            : _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
10.7k
    void for_each_with_selector(Func& f) const {
388
10.7k
        if (_selector != nullptr) {
389
4.71k
            const auto& selector_data = *_selector;
390
9.85k
            for (size_t i = 0; i < _count; ++i) {
391
5.13k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
5.13k
            }
393
6.04k
        } else {
394
74.4k
            for (size_t i = 0; i < _count; ++i) {
395
68.4k
                f(index_check_const<is_const>(i), i, i);
396
68.4k
            }
397
6.04k
        }
398
10.7k
    }
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
9
    void for_each_with_selector(Func& f) const {
388
9
        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
7
        } else {
394
17
            for (size_t i = 0; i < _count; ++i) {
395
10
                f(index_check_const<is_const>(i), i, i);
396
10
            }
397
7
        }
398
9
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.30k
    void for_each_with_selector(Func& f) const {
388
2.30k
        if (_selector != nullptr) {
389
757
            const auto& selector_data = *_selector;
390
1.57k
            for (size_t i = 0; i < _count; ++i) {
391
818
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
818
            }
393
1.54k
        } else {
394
4.26k
            for (size_t i = 0; i < _count; ++i) {
395
2.72k
                f(index_check_const<is_const>(i), i, i);
396
2.72k
            }
397
1.54k
        }
398
2.30k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
226
    void for_each_with_selector(Func& f) const {
388
226
        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
226
        } else {
394
652
            for (size_t i = 0; i < _count; ++i) {
395
426
                f(index_check_const<is_const>(i), i, i);
396
426
            }
397
226
        }
398
226
    }
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.73k
    void for_each_with_selector(Func& f) const {
388
1.73k
        if (_selector != nullptr) {
389
50
            const auto& selector_data = *_selector;
390
126
            for (size_t i = 0; i < _count; ++i) {
391
76
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
76
            }
393
1.68k
        } else {
394
61.4k
            for (size_t i = 0; i < _count; ++i) {
395
59.7k
                f(index_check_const<is_const>(i), i, i);
396
59.7k
            }
397
1.68k
        }
398
1.73k
    }
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
18
    void for_each_with_selector(Func& f) const {
388
18
        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
18
        } else {
394
42
            for (size_t i = 0; i < _count; ++i) {
395
24
                f(index_check_const<is_const>(i), i, i);
396
24
            }
397
18
        }
398
18
    }
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
133
    void for_each_with_selector(Func& f) const {
388
133
        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
133
        } else {
394
450
            for (size_t i = 0; i < _count; ++i) {
395
317
                f(index_check_const<is_const>(i), i, i);
396
317
            }
397
133
        }
398
133
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
114
    void for_each_with_selector(Func& f) const {
388
114
        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
114
        } else {
394
1.07k
            for (size_t i = 0; i < _count; ++i) {
395
963
                f(index_check_const<is_const>(i), i, i);
396
963
            }
397
114
        }
398
114
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.57k
    void for_each_with_selector(Func& f) const {
388
1.57k
        if (_selector != nullptr) {
389
18
            const auto& selector_data = *_selector;
390
58
            for (size_t i = 0; i < _count; ++i) {
391
40
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
40
            }
393
1.56k
        } else {
394
3.19k
            for (size_t i = 0; i < _count; ++i) {
395
1.63k
                f(index_check_const<is_const>(i), i, i);
396
1.63k
            }
397
1.56k
        }
398
1.57k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
16
            const auto& selector_data = *_selector;
390
48
            for (size_t i = 0; i < _count; ++i) {
391
32
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
32
            }
393
16
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
16
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.20k
    void for_each_with_selector(Func& f) const {
388
2.20k
        if (_selector != nullptr) {
389
2.20k
            const auto& selector_data = *_selector;
390
4.60k
            for (size_t i = 0; i < _count; ++i) {
391
2.40k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2.40k
            }
393
2.20k
        } 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.20k
    }
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_
Line
Count
Source
387
1.48k
    void for_each_with_selector(Func& f) const {
388
1.48k
        if (_selector != nullptr) {
389
1.48k
            const auto& selector_data = *_selector;
390
2.98k
            for (size_t i = 0; i < _count; ++i) {
391
1.49k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
1.49k
            }
393
1.48k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
1.48k
    }
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
12
    void for_each_with_selector(Func& f) const {
388
12
        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
10
        } else {
394
20
            for (size_t i = 0; i < _count; ++i) {
395
10
                f(index_check_const<is_const>(i), i, i);
396
10
            }
397
10
        }
398
12
    }
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
532
    void for_each_with_selector(Func& f) const {
388
532
        if (_selector != nullptr) {
389
41
            const auto& selector_data = *_selector;
390
117
            for (size_t i = 0; i < _count; ++i) {
391
76
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
76
            }
393
491
        } else {
394
2.37k
            for (size_t i = 0; i < _count; ++i) {
395
1.88k
                f(index_check_const<is_const>(i), i, i);
396
1.88k
            }
397
491
        }
398
532
    }
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
6
    void for_each_with_selector(Func& f) const {
388
6
        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
4
        } else {
394
8
            for (size_t i = 0; i < _count; ++i) {
395
4
                f(index_check_const<is_const>(i), i, i);
396
4
            }
397
4
        }
398
6
    }
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
237
    void for_each_with_selector(Func& f) const {
388
237
        if (_selector != nullptr) {
389
16
            const auto& selector_data = *_selector;
390
38
            for (size_t i = 0; i < _count; ++i) {
391
22
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
22
            }
393
221
        } else {
394
857
            for (size_t i = 0; i < _count; ++i) {
395
636
                f(index_check_const<is_const>(i), i, i);
396
636
            }
397
221
        }
398
237
    }
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_
Line
Count
Source
387
24
    void for_each_with_selector(Func& f) const {
388
24
        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
24
        } else {
394
48
            for (size_t i = 0; i < _count; ++i) {
395
24
                f(index_check_const<is_const>(i), i, i);
396
24
            }
397
24
        }
398
24
    }
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
61
    void for_each_with_selector(Func& f) const {
388
61
        if (_selector != nullptr) {
389
61
            const auto& selector_data = *_selector;
390
138
            for (size_t i = 0; i < _count; ++i) {
391
77
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
77
            }
393
61
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
61
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
58
    void for_each_with_selector(Func& f) const {
388
58
        if (_selector != nullptr) {
389
58
            const auto& selector_data = *_selector;
390
143
            for (size_t i = 0; i < _count; ++i) {
391
85
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
85
            }
393
58
        } 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
58
    }
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
3
    void for_each_with_selector(Func& f) const {
388
3
        if (_selector != nullptr) {
389
3
            const auto& selector_data = *_selector;
390
6
            for (size_t i = 0; i < _count; ++i) {
391
3
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
3
            }
393
3
        } 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
3
    }
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
9.83k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
9.83k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
9.82k
                                      size_t count) {
415
9.82k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
9.82k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
9.82k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
9.82k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
9.82k
        if (this->null_map != nullptr) {
422
4.68k
            const auto& null_map_data = *(this->null_map);
423
6.32k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
6.32k
                if (null_map_data[i]) {
425
264
                    null_func(self_index, executor_index);
426
6.06k
                } else {
427
6.06k
                    if (this->data[i]) {
428
1.65k
                        true_func(self_index, executor_index);
429
4.40k
                    } else {
430
4.40k
                        false_func(self_index, executor_index);
431
4.40k
                    }
432
6.06k
                }
433
6.32k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
3.55k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
3.55k
                if (null_map_data[i]) {
425
152
                    null_func(self_index, executor_index);
426
3.40k
                } else {
427
3.40k
                    if (this->data[i]) {
428
879
                        true_func(self_index, executor_index);
429
2.52k
                    } else {
430
2.52k
                        false_func(self_index, executor_index);
431
2.52k
                    }
432
3.40k
                }
433
3.55k
            };
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
341
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
341
                if (null_map_data[i]) {
425
63
                    null_func(self_index, executor_index);
426
278
                } else {
427
278
                    if (this->data[i]) {
428
124
                        true_func(self_index, executor_index);
429
154
                    } else {
430
154
                        false_func(self_index, executor_index);
431
154
                    }
432
278
                }
433
341
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE_clEmmm
Line
Count
Source
423
2.43k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.43k
                if (null_map_data[i]) {
425
49
                    null_func(self_index, executor_index);
426
2.38k
                } else {
427
2.38k
                    if (this->data[i]) {
428
652
                        true_func(self_index, executor_index);
429
1.73k
                    } else {
430
1.73k
                        false_func(self_index, executor_index);
431
1.73k
                    }
432
2.38k
                }
433
2.43k
            };
434
4.68k
            if (is_const) {
435
43
                for_each_with_selector<true>(update);
436
4.64k
            } else {
437
4.64k
                for_each_with_selector<false>(update);
438
4.64k
            }
439
5.13k
        } else {
440
            // non-nullable condition column
441
64.4k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
64.4k
                if (this->data[i]) {
443
6.46k
                    true_func(self_index, executor_index);
444
57.9k
                } else {
445
57.9k
                    false_func(self_index, executor_index);
446
57.9k
                }
447
64.4k
            };
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
60.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
60.2k
                if (this->data[i]) {
443
5.16k
                    true_func(self_index, executor_index);
444
55.1k
                } else {
445
55.1k
                    false_func(self_index, executor_index);
446
55.1k
                }
447
60.2k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
2.63k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
2.63k
                if (this->data[i]) {
443
1.07k
                    true_func(self_index, executor_index);
444
1.55k
                } else {
445
1.55k
                    false_func(self_index, executor_index);
446
1.55k
                }
447
2.63k
            };
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.50k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.50k
                if (this->data[i]) {
443
227
                    true_func(self_index, executor_index);
444
1.27k
                } else {
445
1.27k
                    false_func(self_index, executor_index);
446
1.27k
                }
447
1.50k
            };
448
5.13k
            if (is_const) {
449
340
                for_each_with_selector<true>(update);
450
4.79k
            } else {
451
4.79k
                for_each_with_selector<false>(update);
452
4.79k
            }
453
5.13k
        }
454
9.82k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
4.27k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.27k
        if (this->null_map != nullptr) {
422
2.31k
            const auto& null_map_data = *(this->null_map);
423
2.31k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.31k
                if (null_map_data[i]) {
425
2.31k
                    null_func(self_index, executor_index);
426
2.31k
                } else {
427
2.31k
                    if (this->data[i]) {
428
2.31k
                        true_func(self_index, executor_index);
429
2.31k
                    } else {
430
2.31k
                        false_func(self_index, executor_index);
431
2.31k
                    }
432
2.31k
                }
433
2.31k
            };
434
2.31k
            if (is_const) {
435
9
                for_each_with_selector<true>(update);
436
2.30k
            } else {
437
2.30k
                for_each_with_selector<false>(update);
438
2.30k
            }
439
2.31k
        } else {
440
            // non-nullable condition column
441
1.96k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.96k
                if (this->data[i]) {
443
1.96k
                    true_func(self_index, executor_index);
444
1.96k
                } else {
445
1.96k
                    false_func(self_index, executor_index);
446
1.96k
                }
447
1.96k
            };
448
1.96k
            if (is_const) {
449
226
                for_each_with_selector<true>(update);
450
1.73k
            } else {
451
1.73k
                for_each_with_selector<false>(update);
452
1.73k
            }
453
1.96k
        }
454
4.27k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_
Line
Count
Source
420
1.84k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.84k
        if (this->null_map != nullptr) {
422
151
            const auto& null_map_data = *(this->null_map);
423
151
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
151
                if (null_map_data[i]) {
425
151
                    null_func(self_index, executor_index);
426
151
                } else {
427
151
                    if (this->data[i]) {
428
151
                        true_func(self_index, executor_index);
429
151
                    } else {
430
151
                        false_func(self_index, executor_index);
431
151
                    }
432
151
                }
433
151
            };
434
151
            if (is_const) {
435
18
                for_each_with_selector<true>(update);
436
133
            } else {
437
133
                for_each_with_selector<false>(update);
438
133
            }
439
1.69k
        } else {
440
            // non-nullable condition column
441
1.69k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.69k
                if (this->data[i]) {
443
1.69k
                    true_func(self_index, executor_index);
444
1.69k
                } else {
445
1.69k
                    false_func(self_index, executor_index);
446
1.69k
                }
447
1.69k
            };
448
1.69k
            if (is_const) {
449
114
                for_each_with_selector<true>(update);
450
1.57k
            } else {
451
1.57k
                for_each_with_selector<false>(update);
452
1.57k
            }
453
1.69k
        }
454
1.84k
    }
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_
Line
Count
Source
420
3.70k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
3.70k
        if (this->null_map != nullptr) {
422
2.22k
            const auto& null_map_data = *(this->null_map);
423
2.22k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.22k
                if (null_map_data[i]) {
425
2.22k
                    null_func(self_index, executor_index);
426
2.22k
                } else {
427
2.22k
                    if (this->data[i]) {
428
2.22k
                        true_func(self_index, executor_index);
429
2.22k
                    } else {
430
2.22k
                        false_func(self_index, executor_index);
431
2.22k
                    }
432
2.22k
                }
433
2.22k
            };
434
2.22k
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
2.20k
            } else {
437
2.20k
                for_each_with_selector<false>(update);
438
2.20k
            }
439
2.22k
        } else {
440
            // non-nullable condition column
441
1.48k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.48k
                if (this->data[i]) {
443
1.48k
                    true_func(self_index, executor_index);
444
1.48k
                } else {
445
1.48k
                    false_func(self_index, executor_index);
446
1.48k
                }
447
1.48k
            };
448
1.48k
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
1.48k
            } else {
451
1.48k
                for_each_with_selector<false>(update);
452
1.48k
            }
453
1.48k
        }
454
3.70k
    }
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
940
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
939
                                          size_t count) {
465
939
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
939
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
939
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
935
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
935
        if (this->null_map != nullptr) {
472
850
            const auto& null_map_data = *(this->null_map);
473
2.71k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
2.71k
                if (null_map_data[i]) {
475
390
                    null_func(self_index, executor_index);
476
2.32k
                } else {
477
2.32k
                    not_null_func(self_index, executor_index);
478
2.32k
                }
479
2.71k
            };
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm
Line
Count
Source
473
1.97k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.97k
                if (null_map_data[i]) {
475
208
                    null_func(self_index, executor_index);
476
1.76k
                } else {
477
1.76k
                    not_null_func(self_index, executor_index);
478
1.76k
                }
479
1.97k
            };
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
664
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
664
                if (null_map_data[i]) {
475
143
                    null_func(self_index, executor_index);
476
521
                } else {
477
521
                    not_null_func(self_index, executor_index);
478
521
                }
479
664
            };
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
79
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
79
                if (null_map_data[i]) {
475
39
                    null_func(self_index, executor_index);
476
40
                } else {
477
40
                    not_null_func(self_index, executor_index);
478
40
                }
479
79
            };
480
850
            if (is_const) {
481
20
                for_each_with_selector<true>(update);
482
830
            } else {
483
830
                for_each_with_selector<false>(update);
484
830
            }
485
850
        } else {
486
            // non-nullable condition column
487
112
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
112
                not_null_func(self_index, executor_index);
489
112
            };
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
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
Line
Count
Source
487
24
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
24
                not_null_func(self_index, executor_index);
489
24
            };
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
88
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
88
                not_null_func(self_index, executor_index);
489
88
            };
490
85
            if (is_const) {
491
82
                for_each_with_selector<true>(update);
492
82
            } else {
493
3
                for_each_with_selector<false>(update);
494
3
            }
495
85
        }
496
935
    }
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
544
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
544
        if (this->null_map != nullptr) {
472
544
            const auto& null_map_data = *(this->null_map);
473
544
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
544
                if (null_map_data[i]) {
475
544
                    null_func(self_index, executor_index);
476
544
                } else {
477
544
                    not_null_func(self_index, executor_index);
478
544
                }
479
544
            };
480
544
            if (is_const) {
481
12
                for_each_with_selector<true>(update);
482
532
            } else {
483
532
                for_each_with_selector<false>(update);
484
532
            }
485
544
        } 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
544
    }
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
267
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
267
        if (this->null_map != nullptr) {
472
243
            const auto& null_map_data = *(this->null_map);
473
243
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
243
                if (null_map_data[i]) {
475
243
                    null_func(self_index, executor_index);
476
243
                } else {
477
243
                    not_null_func(self_index, executor_index);
478
243
                }
479
243
            };
480
243
            if (is_const) {
481
6
                for_each_with_selector<true>(update);
482
237
            } else {
483
237
                for_each_with_selector<false>(update);
484
237
            }
485
243
        } else {
486
            // non-nullable condition column
487
24
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
24
                not_null_func(self_index, executor_index);
489
24
            };
490
24
            if (is_const) {
491
24
                for_each_with_selector<true>(update);
492
24
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
24
        }
496
267
    }
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
124
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
124
        if (this->null_map != nullptr) {
472
63
            const auto& null_map_data = *(this->null_map);
473
63
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
63
                if (null_map_data[i]) {
475
63
                    null_func(self_index, executor_index);
476
63
                } else {
477
63
                    not_null_func(self_index, executor_index);
478
63
                }
479
63
            };
480
63
            if (is_const) {
481
2
                for_each_with_selector<true>(update);
482
61
            } else {
483
61
                for_each_with_selector<false>(update);
484
61
            }
485
63
        } else {
486
            // non-nullable condition column
487
61
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
61
                not_null_func(self_index, executor_index);
489
61
            };
490
61
            if (is_const) {
491
58
                for_each_with_selector<true>(update);
492
58
            } else {
493
3
                for_each_with_selector<false>(update);
494
3
            }
495
61
        }
496
124
    }
497
};
498
499
} // namespace doris