Coverage Report

Created: 2026-10-26 12:00

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
243k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
243k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
243k
        if (const auto* nullable_column =
40
243k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
5.96k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
5.96k
                                        .null_map = &nullable_column->get_null_map_data(),
43
5.96k
                                        .is_const = is_const};
44
237k
        } else {
45
237k
            return ColumnNullConstView {
46
237k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
237k
        }
48
243k
    }
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
37.3k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
37.3k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
37.3k
        const NullMap* null_map = nullptr;
64
37.3k
        const ArrayType* data = nullptr;
65
37.3k
        if (const auto* nullable_column =
66
37.3k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
11.8k
            null_map = &nullable_column->get_null_map_data();
68
11.8k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
11.8k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
25.5k
        } else {
71
25.5k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
25.5k
        }
73
74
37.3k
        return ColumnNullConstViewScalar {
75
37.3k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
37.3k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
15.2k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
15.2k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
15.2k
        const NullMap* null_map = nullptr;
64
15.2k
        const ArrayType* data = nullptr;
65
15.2k
        if (const auto* nullable_column =
66
15.2k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
5.94k
            null_map = &nullable_column->get_null_map_data();
68
5.94k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
5.94k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
9.35k
        } else {
71
9.35k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
9.35k
        }
73
74
15.2k
        return ColumnNullConstViewScalar {
75
15.2k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
15.2k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
13.5k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
13.5k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
13.5k
        const NullMap* null_map = nullptr;
64
13.5k
        const ArrayType* data = nullptr;
65
13.5k
        if (const auto* nullable_column =
66
13.5k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
431
            null_map = &nullable_column->get_null_map_data();
68
431
            const auto& nested_from_column = nullable_column->get_nested_column();
69
431
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
13.0k
        } else {
71
13.0k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
13.0k
        }
73
74
13.5k
        return ColumnNullConstViewScalar {
75
13.5k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
13.5k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
18
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
18
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
18
        const NullMap* null_map = nullptr;
64
18
        const ArrayType* data = nullptr;
65
18
        if (const auto* nullable_column =
66
18
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
15
            null_map = &nullable_column->get_null_map_data();
68
15
            const auto& nested_from_column = nullable_column->get_nested_column();
69
15
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
15
        } else {
71
3
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
3
        }
73
74
18
        return ColumnNullConstViewScalar {
75
18
                .data = *data, .null_map = null_map, .is_const = is_const};
76
18
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
3.24k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
3.24k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
3.24k
        const NullMap* null_map = nullptr;
64
3.24k
        const ArrayType* data = nullptr;
65
3.24k
        if (const auto* nullable_column =
66
3.24k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
2.61k
            null_map = &nullable_column->get_null_map_data();
68
2.61k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
2.61k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2.61k
        } else {
71
626
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
626
        }
73
74
3.24k
        return ColumnNullConstViewScalar {
75
3.24k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
3.24k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
3.26k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
3.26k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
3.26k
        const NullMap* null_map = nullptr;
64
3.26k
        const ArrayType* data = nullptr;
65
3.26k
        if (const auto* nullable_column =
66
3.26k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.45k
            null_map = &nullable_column->get_null_map_data();
68
1.45k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.45k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.80k
        } else {
71
1.80k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
1.80k
        }
73
74
3.26k
        return ColumnNullConstViewScalar {
75
3.26k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
3.26k
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
29
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
29
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
29
        const NullMap* null_map = nullptr;
64
29
        const ArrayType* data = nullptr;
65
29
        if (const auto* nullable_column =
66
29
                    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
23
        } else {
71
23
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
23
        }
73
74
29
        return ColumnNullConstViewScalar {
75
29
                .data = *data, .null_map = null_map, .is_const = is_const};
76
29
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
282
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
282
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
282
        const NullMap* null_map = nullptr;
64
282
        const ArrayType* data = nullptr;
65
282
        if (const auto* nullable_column =
66
282
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
191
            null_map = &nullable_column->get_null_map_data();
68
191
            const auto& nested_from_column = nullable_column->get_nested_column();
69
191
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
191
        } else {
71
91
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
91
        }
73
74
282
        return ColumnNullConstViewScalar {
75
282
                .data = *data, .null_map = null_map, .is_const = is_const};
76
282
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_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
24
            null_map = &nullable_column->get_null_map_data();
68
24
            const auto& nested_from_column = nullable_column->get_nested_column();
69
24
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
24
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
24
        return ColumnNullConstViewScalar {
75
24
                .data = *data, .null_map = null_map, .is_const = is_const};
76
24
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
156
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
156
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
156
        const NullMap* null_map = nullptr;
64
156
        const ArrayType* data = nullptr;
65
156
        if (const auto* nullable_column =
66
156
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
40
            null_map = &nullable_column->get_null_map_data();
68
40
            const auto& nested_from_column = nullable_column->get_nested_column();
69
40
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
116
        } else {
71
116
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
116
        }
73
74
156
        return ColumnNullConstViewScalar {
75
156
                .data = *data, .null_map = null_map, .is_const = is_const};
76
156
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
275
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
275
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
275
        const NullMap* null_map = nullptr;
64
275
        const ArrayType* data = nullptr;
65
275
        if (const auto* nullable_column =
66
275
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
76
            null_map = &nullable_column->get_null_map_data();
68
76
            const auto& nested_from_column = nullable_column->get_nested_column();
69
76
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
199
        } else {
71
199
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
199
        }
73
74
275
        return ColumnNullConstViewScalar {
75
275
                .data = *data, .null_map = null_map, .is_const = is_const};
76
275
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
5
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
5
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
5
        const NullMap* null_map = nullptr;
64
5
        const ArrayType* data = nullptr;
65
5
        if (const auto* nullable_column =
66
5
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
5
            null_map = &nullable_column->get_null_map_data();
68
5
            const auto& nested_from_column = nullable_column->get_nested_column();
69
5
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
5
        return ColumnNullConstViewScalar {
75
5
                .data = *data, .null_map = null_map, .is_const = is_const};
76
5
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
144
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
144
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
144
        const NullMap* null_map = nullptr;
64
144
        const ArrayType* data = nullptr;
65
144
        if (const auto* nullable_column =
66
144
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
63
            null_map = &nullable_column->get_null_map_data();
68
63
            const auto& nested_from_column = nullable_column->get_nested_column();
69
63
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
81
        } else {
71
81
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
81
        }
73
74
144
        return ColumnNullConstViewScalar {
75
144
                .data = *data, .null_map = null_map, .is_const = is_const};
76
144
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
20
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
20
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
20
        const NullMap* null_map = nullptr;
64
20
        const ArrayType* data = nullptr;
65
20
        if (const auto* nullable_column =
66
20
                    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
4
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
4
        }
73
74
20
        return ColumnNullConstViewScalar {
75
20
                .data = *data, .null_map = null_map, .is_const = is_const};
76
20
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE43EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
158
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
158
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
158
        const NullMap* null_map = nullptr;
64
158
        const ArrayType* data = nullptr;
65
158
        if (const auto* nullable_column =
66
158
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
134
            null_map = &nullable_column->get_null_map_data();
68
134
            const auto& nested_from_column = nullable_column->get_nested_column();
69
134
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
134
        } else {
71
24
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
24
        }
73
74
158
        return ColumnNullConstViewScalar {
75
158
                .data = *data, .null_map = null_map, .is_const = is_const};
76
158
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
4
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
4
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
4
        const NullMap* null_map = nullptr;
64
4
        const ArrayType* data = nullptr;
65
4
        if (const auto* nullable_column =
66
4
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
2
            null_map = &nullable_column->get_null_map_data();
68
2
            const auto& nested_from_column = nullable_column->get_nested_column();
69
2
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2
        } else {
71
2
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
2
        }
73
74
4
        return ColumnNullConstViewScalar {
75
4
                .data = *data, .null_map = null_map, .is_const = is_const};
76
4
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE44EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
937
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
937
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
937
        const NullMap* null_map = nullptr;
64
937
        const ArrayType* data = nullptr;
65
937
        if (const auto* nullable_column =
66
937
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
785
            null_map = &nullable_column->get_null_map_data();
68
785
            const auto& nested_from_column = nullable_column->get_nested_column();
69
785
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
785
        } else {
71
152
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
152
        }
73
74
937
        return ColumnNullConstViewScalar {
75
937
                .data = *data, .null_map = null_map, .is_const = is_const};
76
937
    }
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
2.62k
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
2.62k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
551
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
551
                                          .null_map = &nullable_column->get_null_map_data()};
88
2.07k
        } else {
89
2.07k
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
2.07k
        }
91
2.62k
    }
92
93
264k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
264k
        auto index = index_check_const(i, from.is_const);
95
264k
        column.insert_from(from.column, index);
96
264k
        if (null_map != nullptr && from.null_map != nullptr) {
97
2.74k
            null_map->push_back((*from.null_map)[index]);
98
261k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
10.3k
            null_map->push_back(0);
101
10.3k
        }
102
264k
    }
103
104
26
    void insert_null() {
105
26
        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
26
        column.insert_default();
111
26
        null_map->push_back(1);
112
26
    }
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
10.6k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
10.6k
        ColumnType* data_column = nullptr;
125
10.6k
        NullMap* null_map = nullptr;
126
10.6k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
3.10k
            null_map = &nullable_column->get_null_map_data();
128
3.10k
            auto& nested_column = nullable_column->get_nested_column();
129
3.10k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
7.58k
        } else {
131
7.58k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
7.58k
        }
133
134
10.6k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
10.6k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
428
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
428
        ColumnType* data_column = nullptr;
125
428
        NullMap* null_map = nullptr;
126
428
        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
428
        } else {
131
428
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
428
        }
133
134
428
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
428
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
5.67k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
5.67k
        ColumnType* data_column = nullptr;
125
5.67k
        NullMap* null_map = nullptr;
126
5.67k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
407
            null_map = &nullable_column->get_null_map_data();
128
407
            auto& nested_column = nullable_column->get_nested_column();
129
407
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
5.26k
        } else {
131
5.26k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
5.26k
        }
133
134
5.67k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
5.67k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
13
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
13
        ColumnType* data_column = nullptr;
125
13
        NullMap* null_map = nullptr;
126
13
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
13
            null_map = &nullable_column->get_null_map_data();
128
13
            auto& nested_column = nullable_column->get_nested_column();
129
13
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
13
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
13
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
13
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.62k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.62k
        ColumnType* data_column = nullptr;
125
1.62k
        NullMap* null_map = nullptr;
126
1.62k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.28k
            null_map = &nullable_column->get_null_map_data();
128
1.28k
            auto& nested_column = nullable_column->get_nested_column();
129
1.28k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.28k
        } else {
131
342
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
342
        }
133
134
1.62k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.62k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.86k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.86k
        ColumnType* data_column = nullptr;
125
1.86k
        NullMap* null_map = nullptr;
126
1.86k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
627
            null_map = &nullable_column->get_null_map_data();
128
627
            auto& nested_column = nullable_column->get_nested_column();
129
627
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.24k
        } else {
131
1.24k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
1.24k
        }
133
134
1.86k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.86k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
13
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
13
        ColumnType* data_column = nullptr;
125
13
        NullMap* null_map = nullptr;
126
13
        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
7
        } else {
131
7
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
7
        }
133
134
13
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
13
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
141
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
141
        ColumnType* data_column = nullptr;
125
141
        NullMap* null_map = nullptr;
126
141
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
100
            null_map = &nullable_column->get_null_map_data();
128
100
            auto& nested_column = nullable_column->get_nested_column();
129
100
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
100
        } else {
131
41
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
41
        }
133
134
141
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
141
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
14
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
14
        ColumnType* data_column = nullptr;
125
14
        NullMap* null_map = nullptr;
126
14
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
14
            null_map = &nullable_column->get_null_map_data();
128
14
            auto& nested_column = nullable_column->get_nested_column();
129
14
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
14
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
14
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
93
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
93
        ColumnType* data_column = nullptr;
125
93
        NullMap* null_map = nullptr;
126
93
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
18
            null_map = &nullable_column->get_null_map_data();
128
18
            auto& nested_column = nullable_column->get_nested_column();
129
18
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
75
        } else {
131
75
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
75
        }
133
134
93
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
93
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
150
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
150
        ColumnType* data_column = nullptr;
125
150
        NullMap* null_map = nullptr;
126
150
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
27
            null_map = &nullable_column->get_null_map_data();
128
27
            auto& nested_column = nullable_column->get_nested_column();
129
27
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
123
        } else {
131
123
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
123
        }
133
134
150
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
150
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
74
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
74
        ColumnType* data_column = nullptr;
125
74
        NullMap* null_map = nullptr;
126
74
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
50
            null_map = &nullable_column->get_null_map_data();
128
50
            auto& nested_column = nullable_column->get_nested_column();
129
50
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
50
        } else {
131
24
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
24
        }
133
134
74
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
74
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_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
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
4
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4
        }
133
134
12
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
79
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
79
        ColumnType* data_column = nullptr;
125
79
        NullMap* null_map = nullptr;
126
79
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
79
            null_map = &nullable_column->get_null_map_data();
128
79
            auto& nested_column = nullable_column->get_nested_column();
129
79
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
79
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
79
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
79
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
2
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
2
        ColumnType* data_column = nullptr;
125
2
        NullMap* null_map = nullptr;
126
2
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2
            null_map = &nullable_column->get_null_map_data();
128
2
            auto& nested_column = nullable_column->get_nested_column();
129
2
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
2
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
2
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
2
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
506
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
506
        ColumnType* data_column = nullptr;
125
506
        NullMap* null_map = nullptr;
126
506
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
468
            null_map = &nullable_column->get_null_map_data();
128
468
            auto& nested_column = nullable_column->get_nested_column();
129
468
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
468
        } else {
131
38
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
38
        }
133
134
506
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
506
    }
136
137
22.9k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
22.9k
        auto& result_data = data;
139
22.9k
        const auto& from_data = from.data;
140
141
22.9k
        auto* result_null_map_data = null_map;
142
22.9k
        const auto* from_null_map_data = from.null_map;
143
144
22.9k
        if (from.is_const) {
145
6.70k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
6.70k
                                     from_null_map_data, selector);
147
16.2k
        } else {
148
16.2k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
16.2k
                                      from_null_map_data, selector);
150
16.2k
        }
151
22.9k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
856
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
856
        auto& result_data = data;
139
856
        const auto& from_data = from.data;
140
141
856
        auto* result_null_map_data = null_map;
142
856
        const auto* from_null_map_data = from.null_map;
143
144
856
        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
856
        } else {
148
856
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
856
                                      from_null_map_data, selector);
150
856
        }
151
856
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
13.5k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
13.5k
        auto& result_data = data;
139
13.5k
        const auto& from_data = from.data;
140
141
13.5k
        auto* result_null_map_data = null_map;
142
13.5k
        const auto* from_null_map_data = from.null_map;
143
144
13.5k
        if (from.is_const) {
145
4.93k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4.93k
                                     from_null_map_data, selector);
147
8.56k
        } else {
148
8.56k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
8.56k
                                      from_null_map_data, selector);
150
8.56k
        }
151
13.5k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
18
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
18
        auto& result_data = data;
139
18
        const auto& from_data = from.data;
140
141
18
        auto* result_null_map_data = null_map;
142
18
        const auto* from_null_map_data = from.null_map;
143
144
18
        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
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
18
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
3.23k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
3.23k
        auto& result_data = data;
139
3.23k
        const auto& from_data = from.data;
140
141
3.23k
        auto* result_null_map_data = null_map;
142
3.23k
        const auto* from_null_map_data = from.null_map;
143
144
3.23k
        if (from.is_const) {
145
589
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
589
                                     from_null_map_data, selector);
147
2.65k
        } else {
148
2.65k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2.65k
                                      from_null_map_data, selector);
150
2.65k
        }
151
3.23k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
3.26k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
3.26k
        auto& result_data = data;
139
3.26k
        const auto& from_data = from.data;
140
141
3.26k
        auto* result_null_map_data = null_map;
142
3.26k
        const auto* from_null_map_data = from.null_map;
143
144
3.26k
        if (from.is_const) {
145
596
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
596
                                     from_null_map_data, selector);
147
2.66k
        } else {
148
2.66k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2.66k
                                      from_null_map_data, selector);
150
2.66k
        }
151
3.26k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
29
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
29
        auto& result_data = data;
139
29
        const auto& from_data = from.data;
140
141
29
        auto* result_null_map_data = null_map;
142
29
        const auto* from_null_map_data = from.null_map;
143
144
29
        if (from.is_const) {
145
15
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
15
                                     from_null_map_data, selector);
147
15
        } 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
29
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
282
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
282
        auto& result_data = data;
139
282
        const auto& from_data = from.data;
140
141
282
        auto* result_null_map_data = null_map;
142
282
        const auto* from_null_map_data = from.null_map;
143
144
282
        if (from.is_const) {
145
67
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
67
                                     from_null_map_data, selector);
147
215
        } else {
148
215
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
215
                                      from_null_map_data, selector);
150
215
        }
151
282
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_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
1
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
1
                                     from_null_map_data, selector);
147
23
        } else {
148
23
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
23
                                      from_null_map_data, selector);
150
23
        }
151
24
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
156
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
156
        auto& result_data = data;
139
156
        const auto& from_data = from.data;
140
141
156
        auto* result_null_map_data = null_map;
142
156
        const auto* from_null_map_data = from.null_map;
143
144
156
        if (from.is_const) {
145
27
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
27
                                     from_null_map_data, selector);
147
129
        } else {
148
129
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
129
                                      from_null_map_data, selector);
150
129
        }
151
156
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
275
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
275
        auto& result_data = data;
139
275
        const auto& from_data = from.data;
140
141
275
        auto* result_null_map_data = null_map;
142
275
        const auto* from_null_map_data = from.null_map;
143
144
275
        if (from.is_const) {
145
95
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
95
                                     from_null_map_data, selector);
147
180
        } else {
148
180
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
180
                                      from_null_map_data, selector);
150
180
        }
151
275
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
5
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
5
        auto& result_data = data;
139
5
        const auto& from_data = from.data;
140
141
5
        auto* result_null_map_data = null_map;
142
5
        const auto* from_null_map_data = from.null_map;
143
144
5
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
5
        } else {
148
5
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
5
                                      from_null_map_data, selector);
150
5
        }
151
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
144
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
144
        auto& result_data = data;
139
144
        const auto& from_data = from.data;
140
141
144
        auto* result_null_map_data = null_map;
142
144
        const auto* from_null_map_data = from.null_map;
143
144
144
        if (from.is_const) {
145
37
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
37
                                     from_null_map_data, selector);
147
107
        } else {
148
107
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
107
                                      from_null_map_data, selector);
150
107
        }
151
144
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
20
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
20
        auto& result_data = data;
139
20
        const auto& from_data = from.data;
140
141
20
        auto* result_null_map_data = null_map;
142
20
        const auto* from_null_map_data = from.null_map;
143
144
20
        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
16
        } else {
148
16
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
16
                                      from_null_map_data, selector);
150
16
        }
151
20
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_43EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
158
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
158
        auto& result_data = data;
139
158
        const auto& from_data = from.data;
140
141
158
        auto* result_null_map_data = null_map;
142
158
        const auto* from_null_map_data = from.null_map;
143
144
158
        if (from.is_const) {
145
11
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
11
                                     from_null_map_data, selector);
147
147
        } else {
148
147
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
147
                                      from_null_map_data, selector);
150
147
        }
151
158
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
4
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
4
        auto& result_data = data;
139
4
        const auto& from_data = from.data;
140
141
4
        auto* result_null_map_data = null_map;
142
4
        const auto* from_null_map_data = from.null_map;
143
144
4
        if (from.is_const) {
145
4
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4
                                     from_null_map_data, selector);
147
4
        } else {
148
0
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
0
                                      from_null_map_data, selector);
150
0
        }
151
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_44EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
937
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
937
        auto& result_data = data;
139
937
        const auto& from_data = from.data;
140
141
937
        auto* result_null_map_data = null_map;
142
937
        const auto* from_null_map_data = from.null_map;
143
144
937
        if (from.is_const) {
145
318
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
318
                                     from_null_map_data, selector);
147
619
        } else {
148
619
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
619
                                      from_null_map_data, selector);
150
619
        }
151
937
    }
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
22.9k
                                   const Selector& selector) {
157
22.9k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
22.9k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
4.87k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
4.87k
        }
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
22.9k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
856
                                   const Selector& selector) {
157
856
        insert_with_selector<is_const>(result_data, from_data, selector);
158
856
        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
856
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
4.93k
                                   const Selector& selector) {
157
4.93k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4.93k
        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.93k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
8.56k
                                   const Selector& selector) {
157
8.56k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
8.56k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
425
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
425
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
8.56k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_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
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
6
    }
_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
589
                                   const Selector& selector) {
157
589
        insert_with_selector<is_const>(result_data, from_data, selector);
158
589
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
391
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
391
        }
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
589
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2.65k
                                   const Selector& selector) {
157
2.65k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2.65k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2.07k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2.07k
        }
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.65k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
596
                                   const Selector& selector) {
157
596
        insert_with_selector<is_const>(result_data, from_data, selector);
158
596
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
27
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
27
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
596
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2.66k
                                   const Selector& selector) {
157
2.66k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2.66k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
710
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
710
        }
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.66k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
15
                                   const Selector& selector) {
157
15
        insert_with_selector<is_const>(result_data, from_data, selector);
158
15
        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
15
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_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
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
14
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
67
                                   const Selector& selector) {
157
67
        insert_with_selector<is_const>(result_data, from_data, selector);
158
67
        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
67
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
215
                                   const Selector& selector) {
157
215
        insert_with_selector<is_const>(result_data, from_data, selector);
158
215
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
144
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
144
        }
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
215
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
1
                                   const Selector& selector) {
157
1
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
23
                                   const Selector& selector) {
157
23
        insert_with_selector<is_const>(result_data, from_data, selector);
158
23
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
23
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
23
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
27
                                   const Selector& selector) {
157
27
        insert_with_selector<is_const>(result_data, from_data, selector);
158
27
        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
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
129
                                   const Selector& selector) {
157
129
        insert_with_selector<is_const>(result_data, from_data, selector);
158
129
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
32
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
32
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
129
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
95
                                   const Selector& selector) {
157
95
        insert_with_selector<is_const>(result_data, from_data, selector);
158
95
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
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
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
180
                                   const Selector& selector) {
157
180
        insert_with_selector<is_const>(result_data, from_data, selector);
158
180
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
41
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
41
        }
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
180
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Line
Count
Source
156
5
                                   const Selector& selector) {
157
5
        insert_with_selector<is_const>(result_data, from_data, selector);
158
5
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
37
                                   const Selector& selector) {
157
37
        insert_with_selector<is_const>(result_data, from_data, selector);
158
37
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
37
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
37
        }
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
37
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
107
                                   const Selector& selector) {
157
107
        insert_with_selector<is_const>(result_data, from_data, selector);
158
107
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
26
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
26
        }
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
107
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
4
                                   const Selector& selector) {
157
4
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
0
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
0
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
16
                                   const Selector& selector) {
157
16
        insert_with_selector<is_const>(result_data, from_data, selector);
158
16
        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
16
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_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
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
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
147
                                   const Selector& selector) {
157
147
        insert_with_selector<is_const>(result_data, from_data, selector);
158
147
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
129
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
129
        }
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
147
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
4
                                   const Selector& selector) {
157
4
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_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
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
318
                                   const Selector& selector) {
157
318
        insert_with_selector<is_const>(result_data, from_data, selector);
158
318
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
166
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
166
        }
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
318
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
619
                                   const Selector& selector) {
157
619
        insert_with_selector<is_const>(result_data, from_data, selector);
158
619
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
585
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
585
        }
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
619
    }
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
27.7k
                                     const Selector& selector) {
169
10.6M
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.6M
            auto index = selector[i];
171
10.6M
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.6M
        }
173
27.7k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
856
                                     const Selector& selector) {
169
1.29k
        for (size_t i = 0; i < selector.size(); ++i) {
170
436
            auto index = selector[i];
171
436
            result_data[index] = data[index_check_const<is_const>(i)];
172
436
        }
173
856
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4.93k
                                     const Selector& selector) {
169
10.0M
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.0M
            auto index = selector[i];
171
10.0M
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.0M
        }
173
4.93k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
4
        for (size_t i = 0; i < selector.size(); ++i) {
170
2
            auto index = selector[i];
171
2
            result_data[index] = data[index_check_const<is_const>(i)];
172
2
        }
173
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
8.56k
                                     const Selector& selector) {
169
11.1k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.59k
            auto index = selector[i];
171
2.59k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.59k
        }
173
8.56k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
425
                                     const Selector& selector) {
169
2.23k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.81k
            auto index = selector[i];
171
1.81k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.81k
        }
173
425
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
16
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
3
                                     const Selector& selector) {
169
8
        for (size_t i = 0; i < selector.size(); ++i) {
170
5
            auto index = selector[i];
171
5
            result_data[index] = data[index_check_const<is_const>(i)];
172
5
        }
173
3
    }
_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
589
                                     const Selector& selector) {
169
1.85k
        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
589
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
391
                                     const Selector& selector) {
169
1.39k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.00k
            auto index = selector[i];
171
1.00k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.00k
        }
173
391
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2.65k
                                     const Selector& selector) {
169
22.9k
        for (size_t i = 0; i < selector.size(); ++i) {
170
20.2k
            auto index = selector[i];
171
20.2k
            result_data[index] = data[index_check_const<is_const>(i)];
172
20.2k
        }
173
2.65k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2.07k
                                     const Selector& selector) {
169
4.65k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.57k
            auto index = selector[i];
171
2.57k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.57k
        }
173
2.07k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
596
                                     const Selector& selector) {
169
4.98k
        for (size_t i = 0; i < selector.size(); ++i) {
170
4.39k
            auto index = selector[i];
171
4.39k
            result_data[index] = data[index_check_const<is_const>(i)];
172
4.39k
        }
173
596
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
27
                                     const Selector& selector) {
169
61
        for (size_t i = 0; i < selector.size(); ++i) {
170
34
            auto index = selector[i];
171
34
            result_data[index] = data[index_check_const<is_const>(i)];
172
34
        }
173
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2.66k
                                     const Selector& selector) {
169
104k
        for (size_t i = 0; i < selector.size(); ++i) {
170
102k
            auto index = selector[i];
171
102k
            result_data[index] = data[index_check_const<is_const>(i)];
172
102k
        }
173
2.66k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
710
                                     const Selector& selector) {
169
100k
        for (size_t i = 0; i < selector.size(); ++i) {
170
100k
            auto index = selector[i];
171
100k
            result_data[index] = data[index_check_const<is_const>(i)];
172
100k
        }
173
710
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
15
                                     const Selector& selector) {
169
4.12k
        for (size_t i = 0; i < selector.size(); ++i) {
170
4.11k
            auto index = selector[i];
171
4.11k
            result_data[index] = data[index_check_const<is_const>(i)];
172
4.11k
        }
173
15
    }
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
14
                                     const Selector& selector) {
169
37
        for (size_t i = 0; i < selector.size(); ++i) {
170
23
            auto index = selector[i];
171
23
            result_data[index] = data[index_check_const<is_const>(i)];
172
23
        }
173
14
    }
_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
67
                                     const Selector& selector) {
169
10.3k
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.3k
            auto index = selector[i];
171
10.3k
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.3k
        }
173
67
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
21
        for (size_t i = 0; i < selector.size(); ++i) {
170
11
            auto index = selector[i];
171
11
            result_data[index] = data[index_check_const<is_const>(i)];
172
11
        }
173
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
215
                                     const Selector& selector) {
169
484
        for (size_t i = 0; i < selector.size(); ++i) {
170
269
            auto index = selector[i];
171
269
            result_data[index] = data[index_check_const<is_const>(i)];
172
269
        }
173
215
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
144
                                     const Selector& selector) {
169
362
        for (size_t i = 0; i < selector.size(); ++i) {
170
218
            auto index = selector[i];
171
218
            result_data[index] = data[index_check_const<is_const>(i)];
172
218
        }
173
144
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
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_13PrimitiveTypeE28EE20insert_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_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
68
        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
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
68
        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
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
27
                                     const Selector& selector) {
169
56
        for (size_t i = 0; i < selector.size(); ++i) {
170
29
            auto index = selector[i];
171
29
            result_data[index] = data[index_check_const<is_const>(i)];
172
29
        }
173
27
    }
_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
129
                                     const Selector& selector) {
169
265
        for (size_t i = 0; i < selector.size(); ++i) {
170
136
            auto index = selector[i];
171
136
            result_data[index] = data[index_check_const<is_const>(i)];
172
136
        }
173
129
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
32
                                     const Selector& selector) {
169
59
        for (size_t i = 0; i < selector.size(); ++i) {
170
27
            auto index = selector[i];
171
27
            result_data[index] = data[index_check_const<is_const>(i)];
172
27
        }
173
32
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_14DecimalV2ValueEEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
95
                                     const Selector& selector) {
169
19.8k
        for (size_t i = 0; i < selector.size(); ++i) {
170
19.7k
            auto index = selector[i];
171
19.7k
            result_data[index] = data[index_check_const<is_const>(i)];
172
19.7k
        }
173
95
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
13
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
180
                                     const Selector& selector) {
169
4.02k
        for (size_t i = 0; i < selector.size(); ++i) {
170
3.84k
            auto index = selector[i];
171
3.84k
            result_data[index] = data[index_check_const<is_const>(i)];
172
3.84k
        }
173
180
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
41
                                     const Selector& selector) {
169
117
        for (size_t i = 0; i < selector.size(); ++i) {
170
76
            auto index = selector[i];
171
76
            result_data[index] = data[index_check_const<is_const>(i)];
172
76
        }
173
41
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
11
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
5
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
37
                                     const Selector& selector) {
169
2.09k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.05k
            auto index = selector[i];
171
2.05k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.05k
        }
173
37
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
37
                                     const Selector& selector) {
169
2.09k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.05k
            auto index = selector[i];
171
2.05k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.05k
        }
173
37
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
107
                                     const Selector& selector) {
169
2.24k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.13k
            auto index = selector[i];
171
2.13k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.13k
        }
173
107
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
26
                                     const Selector& selector) {
169
62
        for (size_t i = 0; i < selector.size(); ++i) {
170
36
            auto index = selector[i];
171
36
            result_data[index] = data[index_check_const<is_const>(i)];
172
36
        }
173
26
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
16
                                     const Selector& selector) {
169
42
        for (size_t i = 0; i < selector.size(); ++i) {
170
26
            auto index = selector[i];
171
26
            result_data[index] = data[index_check_const<is_const>(i)];
172
26
        }
173
16
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
38
        for (size_t i = 0; i < selector.size(); ++i) {
170
26
            auto index = selector[i];
171
26
            result_data[index] = data[index_check_const<is_const>(i)];
172
26
        }
173
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
11
                                     const Selector& selector) {
169
28
        for (size_t i = 0; i < selector.size(); ++i) {
170
17
            auto index = selector[i];
171
17
            result_data[index] = data[index_check_const<is_const>(i)];
172
17
        }
173
11
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
16
        for (size_t i = 0; i < selector.size(); ++i) {
170
11
            auto index = selector[i];
171
11
            result_data[index] = data[index_check_const<is_const>(i)];
172
11
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
147
                                     const Selector& selector) {
169
8.49k
        for (size_t i = 0; i < selector.size(); ++i) {
170
8.34k
            auto index = selector[i];
171
8.34k
            result_data[index] = data[index_check_const<is_const>(i)];
172
8.34k
        }
173
147
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
129
                                     const Selector& selector) {
169
8.47k
        for (size_t i = 0; i < selector.size(); ++i) {
170
8.34k
            auto index = selector[i];
171
8.34k
            result_data[index] = data[index_check_const<is_const>(i)];
172
8.34k
        }
173
129
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
8
            auto index = selector[i];
171
8
            result_data[index] = data[index_check_const<is_const>(i)];
172
8
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2
                                     const Selector& selector) {
169
6
        for (size_t i = 0; i < selector.size(); ++i) {
170
4
            auto index = selector[i];
171
4
            result_data[index] = data[index_check_const<is_const>(i)];
172
4
        }
173
2
    }
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
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
318
                                     const Selector& selector) {
169
17.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
17.3k
            auto index = selector[i];
171
17.3k
            result_data[index] = data[index_check_const<is_const>(i)];
172
17.3k
        }
173
318
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
166
                                     const Selector& selector) {
169
596
        for (size_t i = 0; i < selector.size(); ++i) {
170
430
            auto index = selector[i];
171
430
            result_data[index] = data[index_check_const<is_const>(i)];
172
430
        }
173
166
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
619
                                     const Selector& selector) {
169
138k
        for (size_t i = 0; i < selector.size(); ++i) {
170
137k
            auto index = selector[i];
171
137k
            result_data[index] = data[index_check_const<is_const>(i)];
172
137k
        }
173
619
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
585
                                     const Selector& selector) {
169
137k
        for (size_t i = 0; i < selector.size(); ++i) {
170
136k
            auto index = selector[i];
171
136k
            result_data[index] = data[index_check_const<is_const>(i)];
172
136k
        }
173
585
    }
174
175
56
    void insert_null(const Selector& selector) {
176
56
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
56
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
55
        auto& null_map_data = *null_map;
183
120
        for (size_t i = 0; i < selector.size(); ++i) {
184
65
            null_map_data[selector[i]] = 1;
185
65
        }
186
55
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
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
13
    void insert_null(const Selector& selector) {
176
13
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
13
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
12
        auto& null_map_data = *null_map;
183
29
        for (size_t i = 0; i < selector.size(); ++i) {
184
17
            null_map_data[selector[i]] = 1;
185
17
        }
186
12
    }
_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
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
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_13PrimitiveTypeE43EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
31
    void insert_null(const Selector& selector) {
176
31
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
31
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
31
        auto& null_map_data = *null_map;
183
67
        for (size_t i = 0; i < selector.size(); ++i) {
184
36
            null_map_data[selector[i]] = 1;
185
36
        }
186
31
    }
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.80k
    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
8.08k
                          const Selector& false_selector, size_t count) {
230
8.08k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
8.08k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
8.08k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
8.08k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
8.08k
        auto result_column = result_type->create_column();
236
237
8.08k
        MutableColumnNullViewScalar<PType> result_column_view =
238
8.08k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
8.08k
        init_result_column(result_column_view, count);
240
241
8.08k
        ColumnNullConstViewScalar<PType> true_column_view =
242
8.08k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
8.08k
        ColumnNullConstViewScalar<PType> false_column_view =
244
8.08k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
8.08k
        result_column_view.insert_from(true_column_view, true_selector);
247
8.08k
        result_column_view.insert_from(false_column_view, false_selector);
248
8.08k
        DCHECK_EQ(result_column->size(), count);
249
8.08k
        return result_column;
250
8.08k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
428
                          const Selector& false_selector, size_t count) {
230
428
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
428
        DCHECK_EQ(true_column->size(), true_selector.size());
232
428
        DCHECK_EQ(false_column->size(), false_selector.size());
233
428
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
428
        auto result_column = result_type->create_column();
236
237
428
        MutableColumnNullViewScalar<PType> result_column_view =
238
428
                MutableColumnNullViewScalar<PType>::create(result_column);
239
428
        init_result_column(result_column_view, count);
240
241
428
        ColumnNullConstViewScalar<PType> true_column_view =
242
428
                ColumnNullConstViewScalar<PType>::create(true_column);
243
428
        ColumnNullConstViewScalar<PType> false_column_view =
244
428
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
428
        result_column_view.insert_from(true_column_view, true_selector);
247
428
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
428
        return result_column;
250
428
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
4.21k
                          const Selector& false_selector, size_t count) {
230
4.21k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4.21k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4.21k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4.21k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4.21k
        auto result_column = result_type->create_column();
236
237
4.21k
        MutableColumnNullViewScalar<PType> result_column_view =
238
4.21k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4.21k
        init_result_column(result_column_view, count);
240
241
4.21k
        ColumnNullConstViewScalar<PType> true_column_view =
242
4.21k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4.21k
        ColumnNullConstViewScalar<PType> false_column_view =
244
4.21k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4.21k
        result_column_view.insert_from(true_column_view, true_selector);
247
4.21k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
4.21k
        return result_column;
250
4.21k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
3
                          const Selector& false_selector, size_t count) {
230
3
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
3
        DCHECK_EQ(true_column->size(), true_selector.size());
232
3
        DCHECK_EQ(false_column->size(), false_selector.size());
233
3
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
3
        auto result_column = result_type->create_column();
236
237
3
        MutableColumnNullViewScalar<PType> result_column_view =
238
3
                MutableColumnNullViewScalar<PType>::create(result_column);
239
3
        init_result_column(result_column_view, count);
240
241
3
        ColumnNullConstViewScalar<PType> true_column_view =
242
3
                ColumnNullConstViewScalar<PType>::create(true_column);
243
3
        ColumnNullConstViewScalar<PType> false_column_view =
244
3
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
3
        result_column_view.insert_from(true_column_view, true_selector);
247
3
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
3
        return result_column;
250
3
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.51k
                          const Selector& false_selector, size_t count) {
230
1.51k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.51k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.51k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.51k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.51k
        auto result_column = result_type->create_column();
236
237
1.51k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.51k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.51k
        init_result_column(result_column_view, count);
240
241
1.51k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.51k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.51k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.51k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.51k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.51k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.51k
        return result_column;
250
1.51k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.16k
                          const Selector& false_selector, size_t count) {
230
1.16k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.16k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.16k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.16k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.16k
        auto result_column = result_type->create_column();
236
237
1.16k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.16k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.16k
        init_result_column(result_column_view, count);
240
241
1.16k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.16k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.16k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.16k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.16k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.16k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.16k
        return result_column;
250
1.16k
    }
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
101
                          const Selector& false_selector, size_t count) {
230
101
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
101
        DCHECK_EQ(true_column->size(), true_selector.size());
232
101
        DCHECK_EQ(false_column->size(), false_selector.size());
233
101
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
101
        auto result_column = result_type->create_column();
236
237
101
        MutableColumnNullViewScalar<PType> result_column_view =
238
101
                MutableColumnNullViewScalar<PType>::create(result_column);
239
101
        init_result_column(result_column_view, count);
240
241
101
        ColumnNullConstViewScalar<PType> true_column_view =
242
101
                ColumnNullConstViewScalar<PType>::create(true_column);
243
101
        ColumnNullConstViewScalar<PType> false_column_view =
244
101
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
101
        result_column_view.insert_from(true_column_view, true_selector);
247
101
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
101
        return result_column;
250
101
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
9
                          const Selector& false_selector, size_t count) {
230
9
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
9
        DCHECK_EQ(true_column->size(), true_selector.size());
232
9
        DCHECK_EQ(false_column->size(), false_selector.size());
233
9
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
9
        auto result_column = result_type->create_column();
236
237
9
        MutableColumnNullViewScalar<PType> result_column_view =
238
9
                MutableColumnNullViewScalar<PType>::create(result_column);
239
9
        init_result_column(result_column_view, count);
240
241
9
        ColumnNullConstViewScalar<PType> true_column_view =
242
9
                ColumnNullConstViewScalar<PType>::create(true_column);
243
9
        ColumnNullConstViewScalar<PType> false_column_view =
244
9
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
9
        result_column_view.insert_from(true_column_view, true_selector);
247
9
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
9
        return result_column;
250
9
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
20
                          const Selector& false_selector, size_t count) {
230
20
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
20
        DCHECK_EQ(true_column->size(), true_selector.size());
232
20
        DCHECK_EQ(false_column->size(), false_selector.size());
233
20
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
20
        auto result_column = result_type->create_column();
236
237
20
        MutableColumnNullViewScalar<PType> result_column_view =
238
20
                MutableColumnNullViewScalar<PType>::create(result_column);
239
20
        init_result_column(result_column_view, count);
240
241
20
        ColumnNullConstViewScalar<PType> true_column_view =
242
20
                ColumnNullConstViewScalar<PType>::create(true_column);
243
20
        ColumnNullConstViewScalar<PType> false_column_view =
244
20
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
20
        result_column_view.insert_from(true_column_view, true_selector);
247
20
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
20
        return result_column;
250
20
    }
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
120
                          const Selector& false_selector, size_t count) {
230
120
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
120
        DCHECK_EQ(true_column->size(), true_selector.size());
232
120
        DCHECK_EQ(false_column->size(), false_selector.size());
233
120
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
120
        auto result_column = result_type->create_column();
236
237
120
        MutableColumnNullViewScalar<PType> result_column_view =
238
120
                MutableColumnNullViewScalar<PType>::create(result_column);
239
120
        init_result_column(result_column_view, count);
240
241
120
        ColumnNullConstViewScalar<PType> true_column_view =
242
120
                ColumnNullConstViewScalar<PType>::create(true_column);
243
120
        ColumnNullConstViewScalar<PType> false_column_view =
244
120
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
120
        result_column_view.insert_from(true_column_view, true_selector);
247
120
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
120
        return result_column;
250
120
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
67
                          const Selector& false_selector, size_t count) {
230
67
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
67
        DCHECK_EQ(true_column->size(), true_selector.size());
232
67
        DCHECK_EQ(false_column->size(), false_selector.size());
233
67
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
67
        auto result_column = result_type->create_column();
236
237
67
        MutableColumnNullViewScalar<PType> result_column_view =
238
67
                MutableColumnNullViewScalar<PType>::create(result_column);
239
67
        init_result_column(result_column_view, count);
240
241
67
        ColumnNullConstViewScalar<PType> true_column_view =
242
67
                ColumnNullConstViewScalar<PType>::create(true_column);
243
67
        ColumnNullConstViewScalar<PType> false_column_view =
244
67
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
67
        result_column_view.insert_from(true_column_view, true_selector);
247
67
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
67
        return result_column;
250
67
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_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_13PrimitiveTypeE43EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
79
                          const Selector& false_selector, size_t count) {
230
79
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
79
        DCHECK_EQ(true_column->size(), true_selector.size());
232
79
        DCHECK_EQ(false_column->size(), false_selector.size());
233
79
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
79
        auto result_column = result_type->create_column();
236
237
79
        MutableColumnNullViewScalar<PType> result_column_view =
238
79
                MutableColumnNullViewScalar<PType>::create(result_column);
239
79
        init_result_column(result_column_view, count);
240
241
79
        ColumnNullConstViewScalar<PType> true_column_view =
242
79
                ColumnNullConstViewScalar<PType>::create(true_column);
243
79
        ColumnNullConstViewScalar<PType> false_column_view =
244
79
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
79
        result_column_view.insert_from(true_column_view, true_selector);
247
79
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
79
        return result_column;
250
79
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE44EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
352
                          const Selector& false_selector, size_t count) {
230
352
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
352
        DCHECK_EQ(true_column->size(), true_selector.size());
232
352
        DCHECK_EQ(false_column->size(), false_selector.size());
233
352
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
352
        auto result_column = result_type->create_column();
236
237
352
        MutableColumnNullViewScalar<PType> result_column_view =
238
352
                MutableColumnNullViewScalar<PType>::create(result_column);
239
352
        init_result_column(result_column_view, count);
240
241
352
        ColumnNullConstViewScalar<PType> true_column_view =
242
352
                ColumnNullConstViewScalar<PType>::create(true_column);
243
352
        ColumnNullConstViewScalar<PType> false_column_view =
244
352
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
352
        result_column_view.insert_from(true_column_view, true_selector);
247
352
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
352
        return result_column;
250
352
    }
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
2.60k
                          size_t count) {
255
2.60k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2.60k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2.60k
                                             return sum + cs.selector.size();
258
2.60k
                                         }));
259
2.60k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2.60k
        auto result_column = result_type->create_column();
261
262
2.60k
        MutableColumnNullViewScalar<PType> result_column_view =
263
2.60k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2.60k
        init_result_column(result_column_view, count);
265
266
6.80k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
6.80k
            if (columns_and_selector.output_nulls()) {
268
54
                result_column_view.insert_null(columns_and_selector.selector);
269
6.74k
            } else {
270
6.74k
                ColumnNullConstViewScalar<PType> from_column_view =
271
6.74k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
6.74k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
6.74k
            }
274
6.80k
        }
275
2.60k
        DCHECK_EQ(result_column->size(), count);
276
2.60k
        return result_column;
277
2.60k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1.45k
                          size_t count) {
255
1.45k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.45k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.45k
                                             return sum + cs.selector.size();
258
1.45k
                                         }));
259
1.45k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.45k
        auto result_column = result_type->create_column();
261
262
1.45k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.45k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.45k
        init_result_column(result_column_view, count);
265
266
5.07k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5.07k
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
5.06k
            } else {
270
5.06k
                ColumnNullConstViewScalar<PType> from_column_view =
271
5.06k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5.06k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5.06k
            }
274
5.07k
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1.45k
        return result_column;
277
1.45k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
10
                          size_t count) {
255
10
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
10
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
10
                                             return sum + cs.selector.size();
258
10
                                         }));
259
10
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
10
        auto result_column = result_type->create_column();
261
262
10
        MutableColumnNullViewScalar<PType> result_column_view =
263
10
                MutableColumnNullViewScalar<PType>::create(result_column);
264
10
        init_result_column(result_column_view, count);
265
266
14
        for (const auto& columns_and_selector : columns_and_selectors) {
267
14
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
12
            } else {
270
12
                ColumnNullConstViewScalar<PType> from_column_view =
271
12
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
12
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
12
            }
274
14
        }
275
        DCHECK_EQ(result_column->size(), count);
276
10
        return result_column;
277
10
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
107
                          size_t count) {
255
107
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
107
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
107
                                             return sum + cs.selector.size();
258
107
                                         }));
259
107
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
107
        auto result_column = result_type->create_column();
261
262
107
        MutableColumnNullViewScalar<PType> result_column_view =
263
107
                MutableColumnNullViewScalar<PType>::create(result_column);
264
107
        init_result_column(result_column_view, count);
265
266
222
        for (const auto& columns_and_selector : columns_and_selectors) {
267
222
            if (columns_and_selector.output_nulls()) {
268
11
                result_column_view.insert_null(columns_and_selector.selector);
269
211
            } else {
270
211
                ColumnNullConstViewScalar<PType> from_column_view =
271
211
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
211
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
211
            }
274
222
        }
275
        DCHECK_EQ(result_column->size(), count);
276
107
        return result_column;
277
107
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
703
                          size_t count) {
255
703
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
703
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
703
                                             return sum + cs.selector.size();
258
703
                                         }));
259
703
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
703
        auto result_column = result_type->create_column();
261
262
703
        MutableColumnNullViewScalar<PType> result_column_view =
263
703
                MutableColumnNullViewScalar<PType>::create(result_column);
264
703
        init_result_column(result_column_view, count);
265
266
933
        for (const auto& columns_and_selector : columns_and_selectors) {
267
933
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
932
            } else {
270
932
                ColumnNullConstViewScalar<PType> from_column_view =
271
932
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
932
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
932
            }
274
933
        }
275
        DCHECK_EQ(result_column->size(), count);
276
703
        return result_column;
277
703
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
13
                          size_t count) {
255
13
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
13
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
13
                                             return sum + cs.selector.size();
258
13
                                         }));
259
13
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
13
        auto result_column = result_type->create_column();
261
262
13
        MutableColumnNullViewScalar<PType> result_column_view =
263
13
                MutableColumnNullViewScalar<PType>::create(result_column);
264
13
        init_result_column(result_column_view, count);
265
266
31
        for (const auto& columns_and_selector : columns_and_selectors) {
267
31
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
29
            } else {
270
29
                ColumnNullConstViewScalar<PType> from_column_view =
271
29
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
29
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
29
            }
274
31
        }
275
        DCHECK_EQ(result_column->size(), count);
276
13
        return result_column;
277
13
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
40
                          size_t count) {
255
40
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
40
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
40
                                             return sum + cs.selector.size();
258
40
                                         }));
259
40
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
40
        auto result_column = result_type->create_column();
261
262
40
        MutableColumnNullViewScalar<PType> result_column_view =
263
40
                MutableColumnNullViewScalar<PType>::create(result_column);
264
40
        init_result_column(result_column_view, count);
265
266
82
        for (const auto& columns_and_selector : columns_and_selectors) {
267
82
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
80
            } else {
270
80
                ColumnNullConstViewScalar<PType> from_column_view =
271
80
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
80
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
80
            }
274
82
        }
275
        DCHECK_EQ(result_column->size(), count);
276
40
        return result_column;
277
40
    }
_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
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
116
        for (const auto& columns_and_selector : columns_and_selectors) {
267
116
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
116
            } else {
270
116
                ColumnNullConstViewScalar<PType> from_column_view =
271
116
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
116
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
116
            }
274
116
        }
275
        DCHECK_EQ(result_column->size(), count);
276
73
        return result_column;
277
73
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
30
                          size_t count) {
255
30
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
30
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
30
                                             return sum + cs.selector.size();
258
30
                                         }));
259
30
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
30
        auto result_column = result_type->create_column();
261
262
30
        MutableColumnNullViewScalar<PType> result_column_view =
263
30
                MutableColumnNullViewScalar<PType>::create(result_column);
264
30
        init_result_column(result_column_view, count);
265
266
35
        for (const auto& columns_and_selector : columns_and_selectors) {
267
35
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
35
            } else {
270
35
                ColumnNullConstViewScalar<PType> from_column_view =
271
35
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
35
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
35
            }
274
35
        }
275
        DCHECK_EQ(result_column->size(), count);
276
30
        return result_column;
277
30
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
5
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
5
            } else {
270
5
                ColumnNullConstViewScalar<PType> from_column_view =
271
5
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5
            }
274
5
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
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
11
        for (const auto& columns_and_selector : columns_and_selectors) {
267
11
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
10
            } else {
270
10
                ColumnNullConstViewScalar<PType> from_column_view =
271
10
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
10
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
10
            }
274
11
        }
275
        DCHECK_EQ(result_column->size(), count);
276
7
        return result_column;
277
7
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
8
                          size_t count) {
255
8
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
8
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
8
                                             return sum + cs.selector.size();
258
8
                                         }));
259
8
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
8
        auto result_column = result_type->create_column();
261
262
8
        MutableColumnNullViewScalar<PType> result_column_view =
263
8
                MutableColumnNullViewScalar<PType>::create(result_column);
264
8
        init_result_column(result_column_view, count);
265
266
13
        for (const auto& columns_and_selector : columns_and_selectors) {
267
13
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
12
            } else {
270
12
                ColumnNullConstViewScalar<PType> from_column_view =
271
12
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
12
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
12
            }
274
13
        }
275
        DCHECK_EQ(result_column->size(), count);
276
8
        return result_column;
277
8
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE43EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE44EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
154
                          size_t count) {
255
154
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
154
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
154
                                             return sum + cs.selector.size();
258
154
                                         }));
259
154
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
154
        auto result_column = result_type->create_column();
261
262
154
        MutableColumnNullViewScalar<PType> result_column_view =
263
154
                MutableColumnNullViewScalar<PType>::create(result_column);
264
154
        init_result_column(result_column_view, count);
265
266
264
        for (const auto& columns_and_selector : columns_and_selectors) {
267
264
            if (columns_and_selector.output_nulls()) {
268
31
                result_column_view.insert_null(columns_and_selector.selector);
269
233
            } else {
270
233
                ColumnNullConstViewScalar<PType> from_column_view =
271
233
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
233
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
233
            }
274
264
        }
275
        DCHECK_EQ(result_column->size(), count);
276
154
        return result_column;
277
154
    }
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
10.6k
                                   size_t count) {
283
10.6k
        result_column_view.data.resize(count);
284
10.6k
        if (result_column_view.null_map != nullptr) {
285
3.10k
            result_column_view.null_map->resize_fill(count, 0);
286
3.10k
        }
287
10.6k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
428
                                   size_t count) {
283
428
        result_column_view.data.resize(count);
284
428
        if (result_column_view.null_map != nullptr) {
285
0
            result_column_view.null_map->resize_fill(count, 0);
286
0
        }
287
428
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
5.67k
                                   size_t count) {
283
5.67k
        result_column_view.data.resize(count);
284
5.67k
        if (result_column_view.null_map != nullptr) {
285
407
            result_column_view.null_map->resize_fill(count, 0);
286
407
        }
287
5.67k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Line
Count
Source
282
13
                                   size_t count) {
283
13
        result_column_view.data.resize(count);
284
13
        if (result_column_view.null_map != nullptr) {
285
13
            result_column_view.null_map->resize_fill(count, 0);
286
13
        }
287
13
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.62k
                                   size_t count) {
283
1.62k
        result_column_view.data.resize(count);
284
1.62k
        if (result_column_view.null_map != nullptr) {
285
1.27k
            result_column_view.null_map->resize_fill(count, 0);
286
1.27k
        }
287
1.62k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
1.86k
                                   size_t count) {
283
1.86k
        result_column_view.data.resize(count);
284
1.86k
        if (result_column_view.null_map != nullptr) {
285
627
            result_column_view.null_map->resize_fill(count, 0);
286
627
        }
287
1.86k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm
Line
Count
Source
282
13
                                   size_t count) {
283
13
        result_column_view.data.resize(count);
284
13
        if (result_column_view.null_map != nullptr) {
285
6
            result_column_view.null_map->resize_fill(count, 0);
286
6
        }
287
13
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm
Line
Count
Source
282
141
                                   size_t count) {
283
141
        result_column_view.data.resize(count);
284
141
        if (result_column_view.null_map != nullptr) {
285
100
            result_column_view.null_map->resize_fill(count, 0);
286
100
        }
287
141
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
14
                                   size_t count) {
283
14
        result_column_view.data.resize(count);
284
14
        if (result_column_view.null_map != nullptr) {
285
14
            result_column_view.null_map->resize_fill(count, 0);
286
14
        }
287
14
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
93
                                   size_t count) {
283
93
        result_column_view.data.resize(count);
284
93
        if (result_column_view.null_map != nullptr) {
285
18
            result_column_view.null_map->resize_fill(count, 0);
286
18
        }
287
93
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
150
                                   size_t count) {
283
150
        result_column_view.data.resize(count);
284
150
        if (result_column_view.null_map != nullptr) {
285
27
            result_column_view.null_map->resize_fill(count, 0);
286
27
        }
287
150
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
74
                                   size_t count) {
283
74
        result_column_view.data.resize(count);
284
74
        if (result_column_view.null_map != nullptr) {
285
50
            result_column_view.null_map->resize_fill(count, 0);
286
50
        }
287
74
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
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
8
            result_column_view.null_map->resize_fill(count, 0);
286
8
        }
287
12
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE43EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_43EEEm
Line
Count
Source
282
79
                                   size_t count) {
283
79
        result_column_view.data.resize(count);
284
79
        if (result_column_view.null_map != nullptr) {
285
79
            result_column_view.null_map->resize_fill(count, 0);
286
79
        }
287
79
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm
Line
Count
Source
282
2
                                   size_t count) {
283
2
        result_column_view.data.resize(count);
284
2
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE44EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_44EEEm
Line
Count
Source
282
506
                                   size_t count) {
283
506
        result_column_view.data.resize(count);
284
506
        if (result_column_view.null_map != nullptr) {
285
468
            result_column_view.null_map->resize_fill(count, 0);
286
468
        }
287
506
    }
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
2.27k
                          const Selector& false_selector, size_t count) {
296
2.27k
        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
2.27k
        DCHECK_EQ(true_column->size(), true_selector.size());
301
2.27k
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
2.27k
        auto result_column = result_type->create_column();
304
305
2.27k
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
2.27k
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
2.27k
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
2.27k
        size_t true_index = 0;
310
2.27k
        size_t false_index = 0;
311
31.1k
        for (size_t i = 0; i < count; ++i) {
312
28.8k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
7.39k
                result_column_view.insert_from(true_column_view, true_index++);
314
21.4k
            } else {
315
21.4k
                result_column_view.insert_from(false_column_view, false_index++);
316
21.4k
            }
317
28.8k
        }
318
319
2.27k
        DCHECK_EQ(result_column->size(), count);
320
2.27k
        return result_column;
321
2.27k
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
346
                          size_t count) {
326
346
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
346
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
346
                                             return sum + cs.selector.size();
329
346
                                         }));
330
346
        struct FillColumnWithPos {
331
346
            std::optional<ColumnNullConstView> source_column;
332
346
            size_t pos_in_source; // position in the column
333
334
235k
            void insert_to_column(MutableColumnNullView& result_column) const {
335
235k
                if (!source_column) {
336
24
                    result_column.insert_null();
337
235k
                } else {
338
235k
                    result_column.insert_from(*source_column, pos_in_source);
339
235k
                }
340
235k
            }
341
346
        };
342
343
346
        auto mutable_result_column = result_type->create_column();
344
346
        mutable_result_column->reserve(count);
345
346
346
        MutableColumnNullView mutable_result_column_view =
347
346
                MutableColumnNullView::create(mutable_result_column);
348
349
346
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
1.53k
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
1.53k
            if (column_with_selector.selector.empty()) {
353
157
                continue;
354
157
            }
355
236k
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
235k
                size_t result_index = column_with_selector.selector[i];
357
235k
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
0
                        << "Position " << result_index << " has been filled already.";
359
235k
                if (column_with_selector.column) {
360
235k
                    ColumnNullConstView column_view =
361
235k
                            ColumnNullConstView::create(column_with_selector.column);
362
235k
                    fill_positions[result_index].source_column.emplace(column_view);
363
235k
                    fill_positions[result_index].pos_in_source = i;
364
235k
                } else {
365
24
                    fill_positions[result_index].source_column = std::nullopt;
366
24
                }
367
235k
            }
368
1.38k
        }
369
370
235k
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
235k
            fill_pos.insert_to_column(mutable_result_column_view);
372
235k
        }
373
374
346
        DCHECK_EQ(mutable_result_column->size(), count);
375
346
        return mutable_result_column;
376
346
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
17.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
17.7k
    void for_each_with_selector(Func& f) const {
388
17.7k
        if (_selector != nullptr) {
389
5.79k
            const auto& selector_data = *_selector;
390
383k
            for (size_t i = 0; i < _count; ++i) {
391
377k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
377k
            }
393
11.9k
        } else {
394
10.5M
            for (size_t i = 0; i < _count; ++i) {
395
10.5M
                f(index_check_const<is_const>(i), i, i);
396
10.5M
            }
397
11.9k
        }
398
17.7k
    }
unity_28_cxx.cxx:_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
13
    void for_each_with_selector(Func& f) const {
388
13
        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
11
        } else {
394
152
            for (size_t i = 0; i < _count; ++i) {
395
141
                f(index_check_const<is_const>(i), i, i);
396
141
            }
397
11
        }
398
13
    }
unity_28_cxx.cxx:_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.81k
    void for_each_with_selector(Func& f) const {
388
2.81k
        if (_selector != nullptr) {
389
679
            const auto& selector_data = *_selector;
390
1.45k
            for (size_t i = 0; i < _count; ++i) {
391
773
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
773
            }
393
2.13k
        } else {
394
193k
            for (size_t i = 0; i < _count; ++i) {
395
191k
                f(index_check_const<is_const>(i), i, i);
396
191k
            }
397
2.13k
        }
398
2.81k
    }
unity_28_cxx.cxx:_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
343
    void for_each_with_selector(Func& f) const {
388
343
        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
343
        } else {
394
1.35k
            for (size_t i = 0; i < _count; ++i) {
395
1.00k
                f(index_check_const<is_const>(i), i, i);
396
1.00k
            }
397
343
        }
398
343
    }
unity_28_cxx.cxx:_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
5.21k
    void for_each_with_selector(Func& f) const {
388
5.21k
        if (_selector != nullptr) {
389
200
            const auto& selector_data = *_selector;
390
598
            for (size_t i = 0; i < _count; ++i) {
391
398
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
398
            }
393
5.01k
        } else {
394
10.0M
            for (size_t i = 0; i < _count; ++i) {
395
10.0M
                f(index_check_const<is_const>(i), i, i);
396
10.0M
            }
397
5.01k
        }
398
5.21k
    }
unity_28_cxx.cxx:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
16
        } else {
394
38
            for (size_t i = 0; i < _count; ++i) {
395
22
                f(index_check_const<is_const>(i), i, i);
396
22
            }
397
16
        }
398
16
    }
unity_28_cxx.cxx:_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
333
    void for_each_with_selector(Func& f) const {
388
333
        if (_selector != nullptr) {
389
17
            const auto& selector_data = *_selector;
390
131k
            for (size_t i = 0; i < _count; ++i) {
391
131k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
131k
            }
393
316
        } else {
394
203k
            for (size_t i = 0; i < _count; ++i) {
395
203k
                f(index_check_const<is_const>(i), i, i);
396
203k
            }
397
316
        }
398
333
    }
unity_28_cxx.cxx:_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
32
    void for_each_with_selector(Func& f) const {
388
32
        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
32
        } else {
394
999
            for (size_t i = 0; i < _count; ++i) {
395
967
                f(index_check_const<is_const>(i), i, i);
396
967
            }
397
32
        }
398
32
    }
unity_28_cxx.cxx:_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.50k
    void for_each_with_selector(Func& f) const {
388
1.50k
        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.49k
        } else {
394
11.3k
            for (size_t i = 0; i < _count; ++i) {
395
9.81k
                f(index_check_const<is_const>(i), i, i);
396
9.81k
            }
397
1.49k
        }
398
1.50k
    }
unity_28_cxx.cxx:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
12
    void for_each_with_selector(Func& f) const {
388
12
        if (_selector != nullptr) {
389
12
            const auto& selector_data = *_selector;
390
40
            for (size_t i = 0; i < _count; ++i) {
391
28
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
28
            }
393
12
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
12
    }
unity_28_cxx.cxx:_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.75k
    void for_each_with_selector(Func& f) const {
388
2.75k
        if (_selector != nullptr) {
389
2.75k
            const auto& selector_data = *_selector;
390
237k
            for (size_t i = 0; i < _count; ++i) {
391
234k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
234k
            }
393
2.75k
        } 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.75k
    }
unity_28_cxx.cxx:_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_
Line
Count
Source
387
8
    void for_each_with_selector(Func& f) const {
388
8
        if (_selector != nullptr) {
389
8
            const auto& selector_data = *_selector;
390
16
            for (size_t i = 0; i < _count; ++i) {
391
8
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
8
            }
393
8
        } 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
8
    }
unity_28_cxx.cxx:_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.39k
    void for_each_with_selector(Func& f) const {
388
1.39k
        if (_selector != nullptr) {
389
1.39k
            const auto& selector_data = *_selector;
390
11.0k
            for (size_t i = 0; i < _count; ++i) {
391
9.64k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
9.64k
            }
393
1.39k
        } 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.39k
    }
unity_28_cxx.cxx:_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
186
    void for_each_with_selector(Func& f) const {
388
186
        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
184
        } else {
394
708
            for (size_t i = 0; i < _count; ++i) {
395
524
                f(index_check_const<is_const>(i), i, i);
396
524
            }
397
184
        }
398
186
    }
unity_28_cxx.cxx:_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
1.78k
    void for_each_with_selector(Func& f) const {
388
1.78k
        if (_selector != nullptr) {
389
388
            const auto& selector_data = *_selector;
390
806
            for (size_t i = 0; i < _count; ++i) {
391
418
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
418
            }
393
1.39k
        } else {
394
5.42k
            for (size_t i = 0; i < _count; ++i) {
395
4.02k
                f(index_check_const<is_const>(i), i, i);
396
4.02k
            }
397
1.39k
        }
398
1.78k
    }
Unexecuted instantiation: unity_28_cxx.cxx:_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: unity_28_cxx.cxx:_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_
unity_28_cxx.cxx:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_
Line
Count
Source
387
2
    void for_each_with_selector(Func& f) const {
388
2
        if (_selector != nullptr) {
389
2
            const auto& selector_data = *_selector;
390
4
            for (size_t i = 0; i < _count; ++i) {
391
2
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
2
            }
393
2
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2
    }
unity_28_cxx.cxx:_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
1.05k
    void for_each_with_selector(Func& f) const {
388
1.05k
        if (_selector != nullptr) {
389
12
            const auto& selector_data = *_selector;
390
30
            for (size_t i = 0; i < _count; ++i) {
391
18
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
18
            }
393
1.04k
        } else {
394
21.0k
            for (size_t i = 0; i < _count; ++i) {
395
19.9k
                f(index_check_const<is_const>(i), i, i);
396
19.9k
            }
397
1.04k
        }
398
1.05k
    }
Unexecuted instantiation: unity_28_cxx.cxx:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_
Unexecuted instantiation: unity_28_cxx.cxx:_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_
unity_28_cxx.cxx:_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
15
    void for_each_with_selector(Func& f) const {
388
15
        if (_selector != nullptr) {
389
15
            const auto& selector_data = *_selector;
390
77
            for (size_t i = 0; i < _count; ++i) {
391
62
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
62
            }
393
15
        } 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
15
    }
unity_28_cxx.cxx:_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
107
    void for_each_with_selector(Func& f) const {
388
107
        if (_selector != nullptr) {
389
107
            const auto& selector_data = *_selector;
390
326
            for (size_t i = 0; i < _count; ++i) {
391
219
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
219
            }
393
107
        } 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
107
    }
unity_28_cxx.cxx:_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
178
    void for_each_with_selector(Func& f) const {
388
178
        if (_selector != nullptr) {
389
178
            const auto& selector_data = *_selector;
390
461
            for (size_t i = 0; i < _count; ++i) {
391
283
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
283
            }
393
178
        } 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
178
    }
unity_28_cxx.cxx:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_
Line
Count
Source
387
6
    void for_each_with_selector(Func& f) const {
388
6
        if (_selector != nullptr) {
389
6
            const auto& selector_data = *_selector;
390
12
            for (size_t i = 0; i < _count; ++i) {
391
6
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
6
            }
393
6
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
6
    }
399
400
private:
401
    const Selector* _selector;
402
    const size_t _count;
403
};
404
405
// Utility class for columns that return boolean values.
406
// We care about whether the value is null, as well as true/false values.
407
struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper {
408
    ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector,
409
                        size_t count)
410
14.4k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
14.4k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
14.4k
                                      size_t count) {
415
14.4k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
14.4k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
14.4k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
14.4k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
14.4k
        if (this->null_map != nullptr) {
422
5.94k
            const auto& null_map_data = *(this->null_map);
423
761k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
761k
                if (null_map_data[i]) {
425
132k
                    null_func(self_index, executor_index);
426
629k
                } else {
427
629k
                    if (this->data[i]) {
428
306k
                        true_func(self_index, executor_index);
429
322k
                    } else {
430
322k
                        false_func(self_index, executor_index);
431
322k
                    }
432
629k
                }
433
761k
            };
unity_28_cxx.cxx:_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
192k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
192k
                if (null_map_data[i]) {
425
298
                    null_func(self_index, executor_index);
426
191k
                } else {
427
191k
                    if (this->data[i]) {
428
15.5k
                        true_func(self_index, executor_index);
429
176k
                    } else {
430
176k
                        false_func(self_index, executor_index);
431
176k
                    }
432
191k
                }
433
192k
            };
unity_28_cxx.cxx:_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
334k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
334k
                if (null_map_data[i]) {
425
132k
                    null_func(self_index, executor_index);
426
202k
                } else {
427
202k
                    if (this->data[i]) {
428
112k
                        true_func(self_index, executor_index);
429
112k
                    } else {
430
90.2k
                        false_func(self_index, executor_index);
431
90.2k
                    }
432
202k
                }
433
334k
            };
unity_28_cxx.cxx:_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
234k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
234k
                if (null_map_data[i]) {
425
42
                    null_func(self_index, executor_index);
426
234k
                } else {
427
234k
                    if (this->data[i]) {
428
178k
                        true_func(self_index, executor_index);
429
178k
                    } else {
430
55.9k
                        false_func(self_index, executor_index);
431
55.9k
                    }
432
234k
                }
433
234k
            };
434
5.94k
            if (is_const) {
435
41
                for_each_with_selector<true>(update);
436
5.89k
            } else {
437
5.89k
                for_each_with_selector<false>(update);
438
5.89k
            }
439
8.49k
        } else {
440
            // non-nullable condition column
441
10.1M
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.1M
                if (this->data[i]) {
443
10.0M
                    true_func(self_index, executor_index);
444
10.0M
                } else {
445
84.5k
                    false_func(self_index, executor_index);
446
84.5k
                }
447
10.1M
            };
unity_28_cxx.cxx:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm
Line
Count
Source
441
10.0M
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.0M
                if (this->data[i]) {
443
10.0M
                    true_func(self_index, executor_index);
444
10.0M
                } else {
445
65.4k
                    false_func(self_index, executor_index);
446
65.4k
                }
447
10.0M
            };
unity_28_cxx.cxx:_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
10.8k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.8k
                if (this->data[i]) {
443
1.22k
                    true_func(self_index, executor_index);
444
9.59k
                } else {
445
9.59k
                    false_func(self_index, executor_index);
446
9.59k
                }
447
10.8k
            };
unity_28_cxx.cxx:_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
9.64k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
9.64k
                if (this->data[i]) {
443
194
                    true_func(self_index, executor_index);
444
9.45k
                } else {
445
9.45k
                    false_func(self_index, executor_index);
446
9.45k
                }
447
9.64k
            };
448
8.49k
            if (is_const) {
449
383
                for_each_with_selector<true>(update);
450
8.11k
            } else {
451
8.11k
                for_each_with_selector<false>(update);
452
8.11k
            }
453
8.49k
        }
454
14.4k
    }
unity_28_cxx.cxx:_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
8.38k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
8.38k
        if (this->null_map != nullptr) {
422
2.82k
            const auto& null_map_data = *(this->null_map);
423
2.82k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.82k
                if (null_map_data[i]) {
425
2.82k
                    null_func(self_index, executor_index);
426
2.82k
                } else {
427
2.82k
                    if (this->data[i]) {
428
2.82k
                        true_func(self_index, executor_index);
429
2.82k
                    } else {
430
2.82k
                        false_func(self_index, executor_index);
431
2.82k
                    }
432
2.82k
                }
433
2.82k
            };
434
2.82k
            if (is_const) {
435
13
                for_each_with_selector<true>(update);
436
2.81k
            } else {
437
2.81k
                for_each_with_selector<false>(update);
438
2.81k
            }
439
5.55k
        } else {
440
            // non-nullable condition column
441
5.55k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
5.55k
                if (this->data[i]) {
443
5.55k
                    true_func(self_index, executor_index);
444
5.55k
                } else {
445
5.55k
                    false_func(self_index, executor_index);
446
5.55k
                }
447
5.55k
            };
448
5.55k
            if (is_const) {
449
343
                for_each_with_selector<true>(update);
450
5.21k
            } else {
451
5.21k
                for_each_with_selector<false>(update);
452
5.21k
            }
453
5.55k
        }
454
8.38k
    }
unity_28_cxx.cxx:_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.88k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.88k
        if (this->null_map != nullptr) {
422
349
            const auto& null_map_data = *(this->null_map);
423
349
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
349
                if (null_map_data[i]) {
425
349
                    null_func(self_index, executor_index);
426
349
                } else {
427
349
                    if (this->data[i]) {
428
349
                        true_func(self_index, executor_index);
429
349
                    } else {
430
349
                        false_func(self_index, executor_index);
431
349
                    }
432
349
                }
433
349
            };
434
349
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
333
            } else {
437
333
                for_each_with_selector<false>(update);
438
333
            }
439
1.54k
        } else {
440
            // non-nullable condition column
441
1.54k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.54k
                if (this->data[i]) {
443
1.54k
                    true_func(self_index, executor_index);
444
1.54k
                } else {
445
1.54k
                    false_func(self_index, executor_index);
446
1.54k
                }
447
1.54k
            };
448
1.54k
            if (is_const) {
449
32
                for_each_with_selector<true>(update);
450
1.50k
            } else {
451
1.50k
                for_each_with_selector<false>(update);
452
1.50k
            }
453
1.54k
        }
454
1.88k
    }
unity_28_cxx.cxx:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_
Line
Count
Source
420
4.16k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.16k
        if (this->null_map != nullptr) {
422
2.76k
            const auto& null_map_data = *(this->null_map);
423
2.76k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.76k
                if (null_map_data[i]) {
425
2.76k
                    null_func(self_index, executor_index);
426
2.76k
                } else {
427
2.76k
                    if (this->data[i]) {
428
2.76k
                        true_func(self_index, executor_index);
429
2.76k
                    } else {
430
2.76k
                        false_func(self_index, executor_index);
431
2.76k
                    }
432
2.76k
                }
433
2.76k
            };
434
2.76k
            if (is_const) {
435
12
                for_each_with_selector<true>(update);
436
2.75k
            } else {
437
2.75k
                for_each_with_selector<false>(update);
438
2.75k
            }
439
2.76k
        } else {
440
            // non-nullable condition column
441
1.40k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.40k
                if (this->data[i]) {
443
1.40k
                    true_func(self_index, executor_index);
444
1.40k
                } else {
445
1.40k
                    false_func(self_index, executor_index);
446
1.40k
                }
447
1.40k
            };
448
1.40k
            if (is_const) {
449
8
                for_each_with_selector<true>(update);
450
1.39k
            } else {
451
1.39k
                for_each_with_selector<false>(update);
452
1.39k
            }
453
1.40k
        }
454
4.16k
    }
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
3.33k
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
3.33k
                                          size_t count) {
465
3.33k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
3.33k
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
3.33k
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
3.33k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
3.33k
        if (this->null_map != nullptr) {
472
3.14k
            const auto& null_map_data = *(this->null_map);
473
25.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
25.2k
                if (null_map_data[i]) {
475
1.15k
                    null_func(self_index, executor_index);
476
24.0k
                } else {
477
24.0k
                    not_null_func(self_index, executor_index);
478
24.0k
                }
479
25.2k
            };
unity_28_cxx.cxx:_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
4.97k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
4.97k
                if (null_map_data[i]) {
475
528
                    null_func(self_index, executor_index);
476
4.44k
                } else {
477
4.44k
                    not_null_func(self_index, executor_index);
478
4.44k
                }
479
4.97k
            };
unity_28_cxx.cxx:_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
19.9k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
19.9k
                if (null_map_data[i]) {
475
546
                    null_func(self_index, executor_index);
476
19.4k
                } else {
477
19.4k
                    not_null_func(self_index, executor_index);
478
19.4k
                }
479
19.9k
            };
unity_28_cxx.cxx:_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
281
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
281
                if (null_map_data[i]) {
475
84
                    null_func(self_index, executor_index);
476
197
                } else {
477
197
                    not_null_func(self_index, executor_index);
478
197
                }
479
281
            };
480
3.14k
            if (is_const) {
481
203
                for_each_with_selector<true>(update);
482
2.94k
            } else {
483
2.94k
                for_each_with_selector<false>(update);
484
2.94k
            }
485
3.14k
        } else {
486
            // non-nullable condition column
487
289
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
289
                not_null_func(self_index, executor_index);
489
289
            };
Unexecuted instantiation: unity_28_cxx.cxx:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm
Unexecuted instantiation: unity_28_cxx.cxx:_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
unity_28_cxx.cxx:_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
289
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
289
                not_null_func(self_index, executor_index);
489
289
            };
490
184
            if (is_const) {
491
178
                for_each_with_selector<true>(update);
492
178
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
184
        }
496
3.33k
    }
unity_28_cxx.cxx:_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
1.97k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
1.97k
        if (this->null_map != nullptr) {
472
1.97k
            const auto& null_map_data = *(this->null_map);
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
1.97k
                    null_func(self_index, executor_index);
476
1.97k
                } else {
477
1.97k
                    not_null_func(self_index, executor_index);
478
1.97k
                }
479
1.97k
            };
480
1.97k
            if (is_const) {
481
186
                for_each_with_selector<true>(update);
482
1.78k
            } else {
483
1.78k
                for_each_with_selector<false>(update);
484
1.78k
            }
485
1.97k
        } 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
1.97k
    }
unity_28_cxx.cxx:_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
1.05k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
1.05k
        if (this->null_map != nullptr) {
472
1.05k
            const auto& null_map_data = *(this->null_map);
473
1.05k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.05k
                if (null_map_data[i]) {
475
1.05k
                    null_func(self_index, executor_index);
476
1.05k
                } else {
477
1.05k
                    not_null_func(self_index, executor_index);
478
1.05k
                }
479
1.05k
            };
480
1.05k
            if (is_const) {
481
2
                for_each_with_selector<true>(update);
482
1.05k
            } else {
483
1.05k
                for_each_with_selector<false>(update);
484
1.05k
            }
485
1.05k
        } 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
1.05k
    }
unity_28_cxx.cxx:_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
306
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
306
        if (this->null_map != nullptr) {
472
122
            const auto& null_map_data = *(this->null_map);
473
122
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
122
                if (null_map_data[i]) {
475
122
                    null_func(self_index, executor_index);
476
122
                } else {
477
122
                    not_null_func(self_index, executor_index);
478
122
                }
479
122
            };
480
122
            if (is_const) {
481
15
                for_each_with_selector<true>(update);
482
107
            } else {
483
107
                for_each_with_selector<false>(update);
484
107
            }
485
184
        } else {
486
            // non-nullable condition column
487
184
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
184
                not_null_func(self_index, executor_index);
489
184
            };
490
184
            if (is_const) {
491
178
                for_each_with_selector<true>(update);
492
178
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
184
        }
496
306
    }
497
};
498
499
} // namespace doris