Coverage Report

Created: 2026-10-06 07:16

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/short_circuit_util.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
#include "core/block/column_with_type_and_name.h"
20
#include "core/column/column.h"
21
#include "core/column/column_const.h"
22
#include "core/column/column_nullable.h"
23
#include "core/column/column_vector.h"
24
#include "core/field.h"
25
#include "exprs/vexpr.h"
26
27
namespace doris {
28
29
// Used to store a column along with its null_map and whether it is a const column.
30
// If the input column is not nullable, 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
89.2k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
89.2k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
89.2k
        if (const auto* nullable_column =
40
89.2k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
3.45k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
3.45k
                                        .null_map = &nullable_column->get_null_map_data(),
43
3.45k
                                        .is_const = is_const};
44
85.8k
        } else {
45
85.8k
            return ColumnNullConstView {
46
85.8k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
85.8k
        }
48
89.2k
    }
49
};
50
51
// Scalar version stores a reference to the actual data type array for convenient subsequent operations.
52
template <PrimitiveType PType>
53
struct ColumnNullConstViewScalar {
54
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
55
    using ArrayType = typename ColumnType::Container;
56
57
    const ArrayType& data;
58
    const NullMap* null_map;
59
    const bool is_const;
60
61
25.1k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
25.1k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
25.1k
        const NullMap* null_map = nullptr;
64
25.1k
        const ArrayType* data = nullptr;
65
25.1k
        if (const auto* nullable_column =
66
25.1k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
8.45k
            null_map = &nullable_column->get_null_map_data();
68
8.45k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
8.45k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
16.7k
        } else {
71
16.7k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
16.7k
        }
73
74
25.1k
        return ColumnNullConstViewScalar {
75
25.1k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
25.1k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
9.19k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
9.19k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
9.19k
        const NullMap* null_map = nullptr;
64
9.19k
        const ArrayType* data = nullptr;
65
9.19k
        if (const auto* nullable_column =
66
9.19k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
3.87k
            null_map = &nullable_column->get_null_map_data();
68
3.87k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
3.87k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
5.31k
        } else {
71
5.31k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5.31k
        }
73
74
9.19k
        return ColumnNullConstViewScalar {
75
9.19k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
9.19k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
10.2k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
10.2k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
10.2k
        const NullMap* null_map = nullptr;
64
10.2k
        const ArrayType* data = nullptr;
65
10.2k
        if (const auto* nullable_column =
66
10.2k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
426
            null_map = &nullable_column->get_null_map_data();
68
426
            const auto& nested_from_column = nullable_column->get_nested_column();
69
426
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
9.86k
        } else {
71
9.86k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
9.86k
        }
73
74
10.2k
        return ColumnNullConstViewScalar {
75
10.2k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
10.2k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
12
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
12
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
12
        const NullMap* null_map = nullptr;
64
12
        const ArrayType* data = nullptr;
65
12
        if (const auto* nullable_column =
66
12
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
12
            null_map = &nullable_column->get_null_map_data();
68
12
            const auto& nested_from_column = nullable_column->get_nested_column();
69
12
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
12
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
12
        return ColumnNullConstViewScalar {
75
12
                .data = *data, .null_map = null_map, .is_const = is_const};
76
12
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
2.88k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.88k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.88k
        const NullMap* null_map = nullptr;
64
2.88k
        const ArrayType* data = nullptr;
65
2.88k
        if (const auto* nullable_column =
66
2.88k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
2.36k
            null_map = &nullable_column->get_null_map_data();
68
2.36k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
2.36k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2.36k
        } else {
71
514
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
514
        }
73
74
2.88k
        return ColumnNullConstViewScalar {
75
2.88k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.88k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
1.58k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
1.58k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
1.58k
        const NullMap* null_map = nullptr;
64
1.58k
        const ArrayType* data = nullptr;
65
1.58k
        if (const auto* nullable_column =
66
1.58k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
910
            null_map = &nullable_column->get_null_map_data();
68
910
            const auto& nested_from_column = nullable_column->get_nested_column();
69
910
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
910
        } else {
71
674
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
674
        }
73
74
1.58k
        return ColumnNullConstViewScalar {
75
1.58k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
1.58k
    }
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
202
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
202
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
202
        const NullMap* null_map = nullptr;
64
202
        const ArrayType* data = nullptr;
65
202
        if (const auto* nullable_column =
66
202
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
125
            null_map = &nullable_column->get_null_map_data();
68
125
            const auto& nested_from_column = nullable_column->get_nested_column();
69
125
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
125
        } else {
71
77
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
77
        }
73
74
202
        return ColumnNullConstViewScalar {
75
202
                .data = *data, .null_map = null_map, .is_const = is_const};
76
202
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
12
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
12
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
12
        const NullMap* null_map = nullptr;
64
12
        const ArrayType* data = nullptr;
65
12
        if (const auto* nullable_column =
66
12
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
9
            null_map = &nullable_column->get_null_map_data();
68
9
            const auto& nested_from_column = nullable_column->get_nested_column();
69
9
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
9
        } else {
71
3
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
3
        }
73
74
12
        return ColumnNullConstViewScalar {
75
12
                .data = *data, .null_map = null_map, .is_const = is_const};
76
12
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
44
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
44
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
44
        const NullMap* null_map = nullptr;
64
44
        const ArrayType* data = nullptr;
65
44
        if (const auto* nullable_column =
66
44
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
39
            null_map = &nullable_column->get_null_map_data();
68
39
            const auto& nested_from_column = nullable_column->get_nested_column();
69
39
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
39
        } else {
71
5
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5
        }
73
74
44
        return ColumnNullConstViewScalar {
75
44
                .data = *data, .null_map = null_map, .is_const = is_const};
76
44
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
186
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
186
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
186
        const NullMap* null_map = nullptr;
64
186
        const ArrayType* data = nullptr;
65
186
        if (const auto* nullable_column =
66
186
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
80
            null_map = &nullable_column->get_null_map_data();
68
80
            const auto& nested_from_column = nullable_column->get_nested_column();
69
80
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
106
        } else {
71
106
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
106
        }
73
74
186
        return ColumnNullConstViewScalar {
75
186
                .data = *data, .null_map = null_map, .is_const = is_const};
76
186
    }
_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
80
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
80
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
80
        const NullMap* null_map = nullptr;
64
80
        const ArrayType* data = nullptr;
65
80
        if (const auto* nullable_column =
66
80
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
31
            null_map = &nullable_column->get_null_map_data();
68
31
            const auto& nested_from_column = nullable_column->get_nested_column();
69
31
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
49
        } else {
71
49
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
49
        }
73
74
80
        return ColumnNullConstViewScalar {
75
80
                .data = *data, .null_map = null_map, .is_const = is_const};
76
80
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
22
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
22
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
22
        const NullMap* null_map = nullptr;
64
22
        const ArrayType* data = nullptr;
65
22
        if (const auto* nullable_column =
66
22
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
17
            null_map = &nullable_column->get_null_map_data();
68
17
            const auto& nested_from_column = nullable_column->get_nested_column();
69
17
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
17
        } else {
71
5
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
5
        }
73
74
22
        return ColumnNullConstViewScalar {
75
22
                .data = *data, .null_map = null_map, .is_const = is_const};
76
22
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE43EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
415
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
415
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
415
        const NullMap* null_map = nullptr;
64
415
        const ArrayType* data = nullptr;
65
415
        if (const auto* nullable_column =
66
415
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
364
            null_map = &nullable_column->get_null_map_data();
68
364
            const auto& nested_from_column = nullable_column->get_nested_column();
69
364
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
364
        } else {
71
51
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
51
        }
73
74
415
        return ColumnNullConstViewScalar {
75
415
                .data = *data, .null_map = null_map, .is_const = is_const};
76
415
    }
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
236
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
236
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
236
        const NullMap* null_map = nullptr;
64
236
        const ArrayType* data = nullptr;
65
236
        if (const auto* nullable_column =
66
236
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
188
            null_map = &nullable_column->get_null_map_data();
68
188
            const auto& nested_from_column = nullable_column->get_nested_column();
69
188
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
188
        } else {
71
48
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
48
        }
73
74
236
        return ColumnNullConstViewScalar {
75
236
                .data = *data, .null_map = null_map, .is_const = is_const};
76
236
    }
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
1.49k
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
1.49k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
527
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
527
                                          .null_map = &nullable_column->get_null_map_data()};
88
965
        } else {
89
965
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
965
        }
91
1.49k
    }
92
93
209k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
209k
        auto index = index_check_const(i, from.is_const);
95
209k
        column.insert_from(from.column, index);
96
209k
        if (null_map != nullptr && from.null_map != nullptr) {
97
11.7k
            null_map->push_back((*from.null_map)[index]);
98
197k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
1.10k
            null_map->push_back(0);
101
1.10k
        }
102
209k
    }
103
104
29
    void insert_null() {
105
29
        if (null_map == nullptr) {
106
0
            throw doris::Exception(ErrorCode::INTERNAL_ERROR,
107
0
                                   "Cannot insert null value into non-nullable column in "
108
0
                                   "ShortCircuitCoalesceExpr.");
109
0
        }
110
29
        column.insert_default();
111
29
        null_map->push_back(1);
112
29
    }
113
};
114
115
template <PrimitiveType PType>
116
struct MutableColumnNullViewScalar {
117
    using ColumnType = typename PrimitiveTypeTraits<PType>::ColumnType;
118
    using ArrayType = typename ColumnType::Container;
119
120
    ArrayType& data;
121
    NullMap* null_map;
122
123
8.24k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
8.24k
        ColumnType* data_column = nullptr;
125
8.24k
        NullMap* null_map = nullptr;
126
8.24k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
2.38k
            null_map = &nullable_column->get_null_map_data();
128
2.38k
            auto& nested_column = nullable_column->get_nested_column();
129
2.38k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
5.85k
        } else {
131
5.85k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
5.85k
        }
133
134
8.24k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
8.24k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
115
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
115
        ColumnType* data_column = nullptr;
125
115
        NullMap* null_map = nullptr;
126
115
        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
115
        } else {
131
115
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
115
        }
133
134
115
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
115
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
5.08k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
5.08k
        ColumnType* data_column = nullptr;
125
5.08k
        NullMap* null_map = nullptr;
126
5.08k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
408
            null_map = &nullable_column->get_null_map_data();
128
408
            auto& nested_column = nullable_column->get_nested_column();
129
408
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4.67k
        } else {
131
4.67k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
4.67k
        }
133
134
5.08k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
5.08k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
10
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
10
        ColumnType* data_column = nullptr;
125
10
        NullMap* null_map = nullptr;
126
10
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
10
            null_map = &nullable_column->get_null_map_data();
128
10
            auto& nested_column = nullable_column->get_nested_column();
129
10
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
10
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
10
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.45k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.45k
        ColumnType* data_column = nullptr;
125
1.45k
        NullMap* null_map = nullptr;
126
1.45k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.14k
            null_map = &nullable_column->get_null_map_data();
128
1.14k
            auto& nested_column = nullable_column->get_nested_column();
129
1.14k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.14k
        } else {
131
314
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
314
        }
133
134
1.45k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.45k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
931
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
931
        ColumnType* data_column = nullptr;
125
931
        NullMap* null_map = nullptr;
126
931
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
386
            null_map = &nullable_column->get_null_map_data();
128
386
            auto& nested_column = nullable_column->get_nested_column();
129
386
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
545
        } else {
131
545
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
545
        }
133
134
931
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
931
    }
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
94
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
94
        ColumnType* data_column = nullptr;
125
94
        NullMap* null_map = nullptr;
126
94
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
64
            null_map = &nullable_column->get_null_map_data();
128
64
            auto& nested_column = nullable_column->get_nested_column();
129
64
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
64
        } else {
131
30
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
30
        }
133
134
94
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
94
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
8
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
8
        ColumnType* data_column = nullptr;
125
8
        NullMap* null_map = nullptr;
126
8
        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
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
8
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
24
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
24
        ColumnType* data_column = nullptr;
125
24
        NullMap* null_map = nullptr;
126
24
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
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
18
        } else {
131
6
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
6
        }
133
134
24
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
24
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
107
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
107
        ColumnType* data_column = nullptr;
125
107
        NullMap* null_map = nullptr;
126
107
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
31
            null_map = &nullable_column->get_null_map_data();
128
31
            auto& nested_column = nullable_column->get_nested_column();
129
31
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
76
        } else {
131
76
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
76
        }
133
134
107
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
107
    }
_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
42
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
42
        ColumnType* data_column = nullptr;
125
42
        NullMap* null_map = nullptr;
126
42
        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
24
        } else {
131
24
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
24
        }
133
134
42
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
42
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_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
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
5
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
5
        }
133
134
13
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
13
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
224
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
224
        ColumnType* data_column = nullptr;
125
224
        NullMap* null_map = nullptr;
126
224
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
206
            null_map = &nullable_column->get_null_map_data();
128
206
            auto& nested_column = nullable_column->get_nested_column();
129
206
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
206
        } else {
131
18
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
18
        }
133
134
224
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
224
    }
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
115
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
115
        ColumnType* data_column = nullptr;
125
115
        NullMap* null_map = nullptr;
126
115
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
77
            null_map = &nullable_column->get_null_map_data();
128
77
            auto& nested_column = nullable_column->get_nested_column();
129
77
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
77
        } else {
131
38
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
38
        }
133
134
115
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
115
    }
136
137
16.2k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
16.2k
        auto& result_data = data;
139
16.2k
        const auto& from_data = from.data;
140
141
16.2k
        auto* result_null_map_data = null_map;
142
16.2k
        const auto* from_null_map_data = from.null_map;
143
144
16.2k
        if (from.is_const) {
145
5.21k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5.21k
                                     from_null_map_data, selector);
147
11.0k
        } else {
148
11.0k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
11.0k
                                      from_null_map_data, selector);
150
11.0k
        }
151
16.2k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
230
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
230
        auto& result_data = data;
139
230
        const auto& from_data = from.data;
140
141
230
        auto* result_null_map_data = null_map;
142
230
        const auto* from_null_map_data = from.null_map;
143
144
230
        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
230
        } else {
148
230
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
230
                                      from_null_map_data, selector);
150
230
        }
151
230
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
10.2k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
10.2k
        auto& result_data = data;
139
10.2k
        const auto& from_data = from.data;
140
141
10.2k
        auto* result_null_map_data = null_map;
142
10.2k
        const auto* from_null_map_data = from.null_map;
143
144
10.2k
        if (from.is_const) {
145
4.07k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4.07k
                                     from_null_map_data, selector);
147
6.21k
        } else {
148
6.21k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
6.21k
                                      from_null_map_data, selector);
150
6.21k
        }
151
10.2k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
12
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
12
        auto& result_data = data;
139
12
        const auto& from_data = from.data;
140
141
12
        auto* result_null_map_data = null_map;
142
12
        const auto* from_null_map_data = from.null_map;
143
144
12
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     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
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
2.87k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.87k
        auto& result_data = data;
139
2.87k
        const auto& from_data = from.data;
140
141
2.87k
        auto* result_null_map_data = null_map;
142
2.87k
        const auto* from_null_map_data = from.null_map;
143
144
2.87k
        if (from.is_const) {
145
566
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
566
                                     from_null_map_data, selector);
147
2.31k
        } else {
148
2.31k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2.31k
                                      from_null_map_data, selector);
150
2.31k
        }
151
2.87k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
1.58k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
1.58k
        auto& result_data = data;
139
1.58k
        const auto& from_data = from.data;
140
141
1.58k
        auto* result_null_map_data = null_map;
142
1.58k
        const auto* from_null_map_data = from.null_map;
143
144
1.58k
        if (from.is_const) {
145
253
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
253
                                     from_null_map_data, selector);
147
1.33k
        } else {
148
1.33k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.33k
                                      from_null_map_data, selector);
150
1.33k
        }
151
1.58k
    }
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
202
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
202
        auto& result_data = data;
139
202
        const auto& from_data = from.data;
140
141
202
        auto* result_null_map_data = null_map;
142
202
        const auto* from_null_map_data = from.null_map;
143
144
202
        if (from.is_const) {
145
56
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
56
                                     from_null_map_data, selector);
147
146
        } else {
148
146
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
146
                                      from_null_map_data, selector);
150
146
        }
151
202
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
12
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
12
        auto& result_data = data;
139
12
        const auto& from_data = from.data;
140
141
12
        auto* result_null_map_data = null_map;
142
12
        const auto* from_null_map_data = from.null_map;
143
144
12
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     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
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
44
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
44
        auto& result_data = data;
139
44
        const auto& from_data = from.data;
140
141
44
        auto* result_null_map_data = null_map;
142
44
        const auto* from_null_map_data = from.null_map;
143
144
44
        if (from.is_const) {
145
7
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
7
                                     from_null_map_data, selector);
147
37
        } else {
148
37
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
37
                                      from_null_map_data, selector);
150
37
        }
151
44
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
186
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
186
        auto& result_data = data;
139
186
        const auto& from_data = from.data;
140
141
186
        auto* result_null_map_data = null_map;
142
186
        const auto* from_null_map_data = from.null_map;
143
144
186
        if (from.is_const) {
145
51
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
51
                                     from_null_map_data, selector);
147
135
        } else {
148
135
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
135
                                      from_null_map_data, selector);
150
135
        }
151
186
    }
_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
80
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
80
        auto& result_data = data;
139
80
        const auto& from_data = from.data;
140
141
80
        auto* result_null_map_data = null_map;
142
80
        const auto* from_null_map_data = from.null_map;
143
144
80
        if (from.is_const) {
145
5
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
5
                                     from_null_map_data, selector);
147
75
        } else {
148
75
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
75
                                      from_null_map_data, selector);
150
75
        }
151
80
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
22
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
22
        auto& result_data = data;
139
22
        const auto& from_data = from.data;
140
141
22
        auto* result_null_map_data = null_map;
142
22
        const auto* from_null_map_data = from.null_map;
143
144
22
        if (from.is_const) {
145
4
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
4
                                     from_null_map_data, selector);
147
18
        } else {
148
18
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
18
                                      from_null_map_data, selector);
150
18
        }
151
22
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_43EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
415
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
415
        auto& result_data = data;
139
415
        const auto& from_data = from.data;
140
141
415
        auto* result_null_map_data = null_map;
142
415
        const auto* from_null_map_data = from.null_map;
143
144
415
        if (from.is_const) {
145
114
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
114
                                     from_null_map_data, selector);
147
301
        } else {
148
301
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
301
                                      from_null_map_data, selector);
150
301
        }
151
415
    }
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
236
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
236
        auto& result_data = data;
139
236
        const auto& from_data = from.data;
140
141
236
        auto* result_null_map_data = null_map;
142
236
        const auto* from_null_map_data = from.null_map;
143
144
236
        if (from.is_const) {
145
71
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
71
                                     from_null_map_data, selector);
147
165
        } else {
148
165
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
165
                                      from_null_map_data, selector);
150
165
        }
151
236
    }
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
16.2k
                                   const Selector& selector) {
157
16.2k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
16.2k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
3.86k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
3.86k
        }
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.2k
    }
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
230
                                   const Selector& selector) {
157
230
        insert_with_selector<is_const>(result_data, from_data, selector);
158
230
        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
230
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
4.07k
                                   const Selector& selector) {
157
4.07k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
4.07k
        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.07k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
6.21k
                                   const Selector& selector) {
157
6.21k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
6.21k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
415
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
415
        }
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.21k
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_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
566
                                   const Selector& selector) {
157
566
        insert_with_selector<is_const>(result_data, from_data, selector);
158
566
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
363
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
363
        }
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
566
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2.31k
                                   const Selector& selector) {
157
2.31k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2.31k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.83k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.83k
        }
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.31k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
253
                                   const Selector& selector) {
157
253
        insert_with_selector<is_const>(result_data, from_data, selector);
158
253
        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
253
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.33k
                                   const Selector& selector) {
157
1.33k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.33k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
462
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
462
        }
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.33k
    }
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
56
                                   const Selector& selector) {
157
56
        insert_with_selector<is_const>(result_data, from_data, selector);
158
56
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
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
56
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
146
                                   const Selector& selector) {
157
146
        insert_with_selector<is_const>(result_data, from_data, selector);
158
146
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
95
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
95
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
146
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
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
9
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
9
        }
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_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
7
                                   const Selector& selector) {
157
7
        insert_with_selector<is_const>(result_data, from_data, selector);
158
7
        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
7
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_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
29
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
29
        }
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
    }
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
51
                                   const Selector& selector) {
157
51
        insert_with_selector<is_const>(result_data, from_data, selector);
158
51
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
7
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
7
        }
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
51
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
135
                                   const Selector& selector) {
157
135
        insert_with_selector<is_const>(result_data, from_data, selector);
158
135
        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
135
    }
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
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
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
75
                                   const Selector& selector) {
157
75
        insert_with_selector<is_const>(result_data, from_data, selector);
158
75
        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
75
    }
_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
18
                                   const Selector& selector) {
157
18
        insert_with_selector<is_const>(result_data, from_data, selector);
158
18
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
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
18
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
114
                                   const Selector& selector) {
157
114
        insert_with_selector<is_const>(result_data, from_data, selector);
158
114
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
97
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
97
        }
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
114
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
301
                                   const Selector& selector) {
157
301
        insert_with_selector<is_const>(result_data, from_data, selector);
158
301
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
249
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
249
        }
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
301
    }
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
71
                                   const Selector& selector) {
157
71
        insert_with_selector<is_const>(result_data, from_data, selector);
158
71
        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
71
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
165
                                   const Selector& selector) {
157
165
        insert_with_selector<is_const>(result_data, from_data, selector);
158
165
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
131
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
131
        }
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
165
    }
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
20.0k
                                     const Selector& selector) {
169
10.4M
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.4M
            auto index = selector[i];
171
10.4M
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.4M
        }
173
20.0k
    }
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
230
                                     const Selector& selector) {
169
603
        for (size_t i = 0; i < selector.size(); ++i) {
170
373
            auto index = selector[i];
171
373
            result_data[index] = data[index_check_const<is_const>(i)];
172
373
        }
173
230
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4.07k
                                     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.07k
    }
_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
6.21k
                                     const Selector& selector) {
169
9.07k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.86k
            auto index = selector[i];
171
2.86k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.86k
        }
173
6.21k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
415
                                     const Selector& selector) {
169
2.28k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.87k
            auto index = selector[i];
171
1.87k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.87k
        }
173
415
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
42
        for (size_t i = 0; i < selector.size(); ++i) {
170
30
            auto index = selector[i];
171
30
            result_data[index] = data[index_check_const<is_const>(i)];
172
30
        }
173
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
42
        for (size_t i = 0; i < selector.size(); ++i) {
170
30
            auto index = selector[i];
171
30
            result_data[index] = data[index_check_const<is_const>(i)];
172
30
        }
173
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
566
                                     const Selector& selector) {
169
5.93k
        for (size_t i = 0; i < selector.size(); ++i) {
170
5.37k
            auto index = selector[i];
171
5.37k
            result_data[index] = data[index_check_const<is_const>(i)];
172
5.37k
        }
173
566
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
363
                                     const Selector& selector) {
169
5.47k
        for (size_t i = 0; i < selector.size(); ++i) {
170
5.11k
            auto index = selector[i];
171
5.11k
            result_data[index] = data[index_check_const<is_const>(i)];
172
5.11k
        }
173
363
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2.31k
                                     const Selector& selector) {
169
26.1k
        for (size_t i = 0; i < selector.size(); ++i) {
170
23.8k
            auto index = selector[i];
171
23.8k
            result_data[index] = data[index_check_const<is_const>(i)];
172
23.8k
        }
173
2.31k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.83k
                                     const Selector& selector) {
169
4.21k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.37k
            auto index = selector[i];
171
2.37k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.37k
        }
173
1.83k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
253
                                     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
253
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
49
        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
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.33k
                                     const Selector& selector) {
169
85.3k
        for (size_t i = 0; i < selector.size(); ++i) {
170
84.0k
            auto index = selector[i];
171
84.0k
            result_data[index] = data[index_check_const<is_const>(i)];
172
84.0k
        }
173
1.33k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
462
                                     const Selector& selector) {
169
85.7k
        for (size_t i = 0; i < selector.size(); ++i) {
170
85.3k
            auto index = selector[i];
171
85.3k
            result_data[index] = data[index_check_const<is_const>(i)];
172
85.3k
        }
173
462
    }
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
56
                                     const Selector& selector) {
169
4.23k
        for (size_t i = 0; i < selector.size(); ++i) {
170
4.17k
            auto index = selector[i];
171
4.17k
            result_data[index] = data[index_check_const<is_const>(i)];
172
4.17k
        }
173
56
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
12
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
146
                                     const Selector& selector) {
169
318
        for (size_t i = 0; i < selector.size(); ++i) {
170
172
            auto index = selector[i];
171
172
            result_data[index] = data[index_check_const<is_const>(i)];
172
172
        }
173
146
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
95
                                     const Selector& selector) {
169
217
        for (size_t i = 0; i < selector.size(); ++i) {
170
122
            auto index = selector[i];
171
122
            result_data[index] = data[index_check_const<is_const>(i)];
172
122
        }
173
95
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
12
                                     const Selector& selector) {
169
30
        for (size_t i = 0; i < selector.size(); ++i) {
170
18
            auto index = selector[i];
171
18
            result_data[index] = data[index_check_const<is_const>(i)];
172
18
        }
173
12
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
9
                                     const Selector& selector) {
169
27
        for (size_t i = 0; i < selector.size(); ++i) {
170
18
            auto index = selector[i];
171
18
            result_data[index] = data[index_check_const<is_const>(i)];
172
18
        }
173
9
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
7
                                     const Selector& selector) {
169
18
        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
7
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
16
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
37
                                     const Selector& selector) {
169
69
        for (size_t i = 0; i < selector.size(); ++i) {
170
32
            auto index = selector[i];
171
32
            result_data[index] = data[index_check_const<is_const>(i)];
172
32
        }
173
37
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
29
                                     const Selector& selector) {
169
51
        for (size_t i = 0; i < selector.size(); ++i) {
170
22
            auto index = selector[i];
171
22
            result_data[index] = data[index_check_const<is_const>(i)];
172
22
        }
173
29
    }
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
51
                                     const Selector& selector) {
169
901
        for (size_t i = 0; i < selector.size(); ++i) {
170
850
            auto index = selector[i];
171
850
            result_data[index] = data[index_check_const<is_const>(i)];
172
850
        }
173
51
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
7
                                     const Selector& selector) {
169
22
        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
7
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
135
                                     const Selector& selector) {
169
271
        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
135
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
41
                                     const Selector& selector) {
169
86
        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
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
5
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
9
            auto index = selector[i];
171
9
            result_data[index] = data[index_check_const<is_const>(i)];
172
9
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
5
                                     const Selector& selector) {
169
14
        for (size_t i = 0; i < selector.size(); ++i) {
170
9
            auto index = selector[i];
171
9
            result_data[index] = data[index_check_const<is_const>(i)];
172
9
        }
173
5
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
75
                                     const Selector& selector) {
169
161
        for (size_t i = 0; i < selector.size(); ++i) {
170
86
            auto index = selector[i];
171
86
            result_data[index] = data[index_check_const<is_const>(i)];
172
86
        }
173
75
    }
_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
18
                                     const Selector& selector) {
169
45
        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
18
    }
_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
114
                                     const Selector& selector) {
169
237
        for (size_t i = 0; i < selector.size(); ++i) {
170
123
            auto index = selector[i];
171
123
            result_data[index] = data[index_check_const<is_const>(i)];
172
123
        }
173
114
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
97
                                     const Selector& selector) {
169
200
        for (size_t i = 0; i < selector.size(); ++i) {
170
103
            auto index = selector[i];
171
103
            result_data[index] = data[index_check_const<is_const>(i)];
172
103
        }
173
97
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
301
                                     const Selector& selector) {
169
8.72k
        for (size_t i = 0; i < selector.size(); ++i) {
170
8.42k
            auto index = selector[i];
171
8.42k
            result_data[index] = data[index_check_const<is_const>(i)];
172
8.42k
        }
173
301
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
249
                                     const Selector& selector) {
169
8.64k
        for (size_t i = 0; i < selector.size(); ++i) {
170
8.39k
            auto index = selector[i];
171
8.39k
            result_data[index] = data[index_check_const<is_const>(i)];
172
8.39k
        }
173
249
    }
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
71
                                     const Selector& selector) {
169
23.0k
        for (size_t i = 0; i < selector.size(); ++i) {
170
23.0k
            auto index = selector[i];
171
23.0k
            result_data[index] = data[index_check_const<is_const>(i)];
172
23.0k
        }
173
71
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
2.24k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.22k
            auto index = selector[i];
171
2.22k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.22k
        }
173
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
165
                                     const Selector& selector) {
169
15.8k
        for (size_t i = 0; i < selector.size(); ++i) {
170
15.6k
            auto index = selector[i];
171
15.6k
            result_data[index] = data[index_check_const<is_const>(i)];
172
15.6k
        }
173
165
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
131
                                     const Selector& selector) {
169
15.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
15.5k
            auto index = selector[i];
171
15.5k
            result_data[index] = data[index_check_const<is_const>(i)];
172
15.5k
        }
173
131
    }
174
175
51
    void insert_null(const Selector& selector) {
176
51
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
51
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
50
        auto& null_map_data = *null_map;
183
112
        for (size_t i = 0; i < selector.size(); ++i) {
184
62
            null_map_data[selector[i]] = 1;
185
62
        }
186
50
    }
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
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
25
    void insert_null(const Selector& selector) {
176
25
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
25
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
25
        auto& null_map_data = *null_map;
183
57
        for (size_t i = 0; i < selector.size(); ++i) {
184
32
            null_map_data[selector[i]] = 1;
185
32
        }
186
25
    }
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
1.57k
    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
7.35k
                          const Selector& false_selector, size_t count) {
230
7.35k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
7.35k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
7.35k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
7.35k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
7.35k
        auto result_column = result_type->create_column();
236
237
7.35k
        MutableColumnNullViewScalar<PType> result_column_view =
238
7.35k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
7.35k
        init_result_column(result_column_view, count);
240
241
7.35k
        ColumnNullConstViewScalar<PType> true_column_view =
242
7.35k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
7.35k
        ColumnNullConstViewScalar<PType> false_column_view =
244
7.35k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
7.35k
        result_column_view.insert_from(true_column_view, true_selector);
247
7.35k
        result_column_view.insert_from(false_column_view, false_selector);
248
7.35k
        DCHECK_EQ(result_column->size(), count);
249
7.35k
        return result_column;
250
7.35k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
115
                          const Selector& false_selector, size_t count) {
230
115
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
115
        DCHECK_EQ(true_column->size(), true_selector.size());
232
115
        DCHECK_EQ(false_column->size(), false_selector.size());
233
115
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
115
        auto result_column = result_type->create_column();
236
237
115
        MutableColumnNullViewScalar<PType> result_column_view =
238
115
                MutableColumnNullViewScalar<PType>::create(result_column);
239
115
        init_result_column(result_column_view, count);
240
241
115
        ColumnNullConstViewScalar<PType> true_column_view =
242
115
                ColumnNullConstViewScalar<PType>::create(true_column);
243
115
        ColumnNullConstViewScalar<PType> false_column_view =
244
115
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
115
        result_column_view.insert_from(true_column_view, true_selector);
247
115
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
115
        return result_column;
250
115
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
4.97k
                          const Selector& false_selector, size_t count) {
230
4.97k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
4.97k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
4.97k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
4.97k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
4.97k
        auto result_column = result_type->create_column();
236
237
4.97k
        MutableColumnNullViewScalar<PType> result_column_view =
238
4.97k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
4.97k
        init_result_column(result_column_view, count);
240
241
4.97k
        ColumnNullConstViewScalar<PType> true_column_view =
242
4.97k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
4.97k
        ColumnNullConstViewScalar<PType> false_column_view =
244
4.97k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
4.97k
        result_column_view.insert_from(true_column_view, true_selector);
247
4.97k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
4.97k
        return result_column;
250
4.97k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
1.34k
                          const Selector& false_selector, size_t count) {
230
1.34k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.34k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.34k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.34k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.34k
        auto result_column = result_type->create_column();
236
237
1.34k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.34k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.34k
        init_result_column(result_column_view, count);
240
241
1.34k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.34k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.34k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.34k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.34k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.34k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.34k
        return result_column;
250
1.34k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
518
                          const Selector& false_selector, size_t count) {
230
518
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
518
        DCHECK_EQ(true_column->size(), true_selector.size());
232
518
        DCHECK_EQ(false_column->size(), false_selector.size());
233
518
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
518
        auto result_column = result_type->create_column();
236
237
518
        MutableColumnNullViewScalar<PType> result_column_view =
238
518
                MutableColumnNullViewScalar<PType>::create(result_column);
239
518
        init_result_column(result_column_view, count);
240
241
518
        ColumnNullConstViewScalar<PType> true_column_view =
242
518
                ColumnNullConstViewScalar<PType>::create(true_column);
243
518
        ColumnNullConstViewScalar<PType> false_column_view =
244
518
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
518
        result_column_view.insert_from(true_column_view, true_selector);
247
518
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
518
        return result_column;
250
518
    }
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
63
                          const Selector& false_selector, size_t count) {
230
63
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
63
        DCHECK_EQ(true_column->size(), true_selector.size());
232
63
        DCHECK_EQ(false_column->size(), false_selector.size());
233
63
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
63
        auto result_column = result_type->create_column();
236
237
63
        MutableColumnNullViewScalar<PType> result_column_view =
238
63
                MutableColumnNullViewScalar<PType>::create(result_column);
239
63
        init_result_column(result_column_view, count);
240
241
63
        ColumnNullConstViewScalar<PType> true_column_view =
242
63
                ColumnNullConstViewScalar<PType>::create(true_column);
243
63
        ColumnNullConstViewScalar<PType> false_column_view =
244
63
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
63
        result_column_view.insert_from(true_column_view, true_selector);
247
63
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
63
        return result_column;
250
63
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_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_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
75
                          const Selector& false_selector, size_t count) {
230
75
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
75
        DCHECK_EQ(true_column->size(), true_selector.size());
232
75
        DCHECK_EQ(false_column->size(), false_selector.size());
233
75
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
75
        auto result_column = result_type->create_column();
236
237
75
        MutableColumnNullViewScalar<PType> result_column_view =
238
75
                MutableColumnNullViewScalar<PType>::create(result_column);
239
75
        init_result_column(result_column_view, count);
240
241
75
        ColumnNullConstViewScalar<PType> true_column_view =
242
75
                ColumnNullConstViewScalar<PType>::create(true_column);
243
75
        ColumnNullConstViewScalar<PType> false_column_view =
244
75
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
75
        result_column_view.insert_from(true_column_view, true_selector);
247
75
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
75
        return result_column;
250
75
    }
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
35
                          const Selector& false_selector, size_t count) {
230
35
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
35
        DCHECK_EQ(true_column->size(), true_selector.size());
232
35
        DCHECK_EQ(false_column->size(), false_selector.size());
233
35
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
35
        auto result_column = result_type->create_column();
236
237
35
        MutableColumnNullViewScalar<PType> result_column_view =
238
35
                MutableColumnNullViewScalar<PType>::create(result_column);
239
35
        init_result_column(result_column_view, count);
240
241
35
        ColumnNullConstViewScalar<PType> true_column_view =
242
35
                ColumnNullConstViewScalar<PType>::create(true_column);
243
35
        ColumnNullConstViewScalar<PType> false_column_view =
244
35
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
35
        result_column_view.insert_from(true_column_view, true_selector);
247
35
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
35
        return result_column;
250
35
    }
_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
189
                          const Selector& false_selector, size_t count) {
230
189
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
189
        DCHECK_EQ(true_column->size(), true_selector.size());
232
189
        DCHECK_EQ(false_column->size(), false_selector.size());
233
189
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
189
        auto result_column = result_type->create_column();
236
237
189
        MutableColumnNullViewScalar<PType> result_column_view =
238
189
                MutableColumnNullViewScalar<PType>::create(result_column);
239
189
        init_result_column(result_column_view, count);
240
241
189
        ColumnNullConstViewScalar<PType> true_column_view =
242
189
                ColumnNullConstViewScalar<PType>::create(true_column);
243
189
        ColumnNullConstViewScalar<PType> false_column_view =
244
189
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
189
        result_column_view.insert_from(true_column_view, true_selector);
247
189
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
189
        return result_column;
250
189
    }
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
6
                          const Selector& false_selector, size_t count) {
230
6
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
6
        DCHECK_EQ(true_column->size(), true_selector.size());
232
6
        DCHECK_EQ(false_column->size(), false_selector.size());
233
6
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
6
        auto result_column = result_type->create_column();
236
237
6
        MutableColumnNullViewScalar<PType> result_column_view =
238
6
                MutableColumnNullViewScalar<PType>::create(result_column);
239
6
        init_result_column(result_column_view, count);
240
241
6
        ColumnNullConstViewScalar<PType> true_column_view =
242
6
                ColumnNullConstViewScalar<PType>::create(true_column);
243
6
        ColumnNullConstViewScalar<PType> false_column_view =
244
6
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
6
        result_column_view.insert_from(true_column_view, true_selector);
247
6
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
6
        return result_column;
250
6
    }
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
886
                          size_t count) {
255
886
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
886
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
886
                                             return sum + cs.selector.size();
258
886
                                         }));
259
886
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
886
        auto result_column = result_type->create_column();
261
262
886
        MutableColumnNullViewScalar<PType> result_column_view =
263
886
                MutableColumnNullViewScalar<PType>::create(result_column);
264
886
        init_result_column(result_column_view, count);
265
266
1.57k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
1.57k
            if (columns_and_selector.output_nulls()) {
268
49
                result_column_view.insert_null(columns_and_selector.selector);
269
1.52k
            } else {
270
1.52k
                ColumnNullConstViewScalar<PType> from_column_view =
271
1.52k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
1.52k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
1.52k
            }
274
1.57k
        }
275
886
        DCHECK_EQ(result_column->size(), count);
276
886
        return result_column;
277
886
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
108
                          size_t count) {
255
108
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
108
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
108
                                             return sum + cs.selector.size();
258
108
                                         }));
259
108
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
108
        auto result_column = result_type->create_column();
261
262
108
        MutableColumnNullViewScalar<PType> result_column_view =
263
108
                MutableColumnNullViewScalar<PType>::create(result_column);
264
108
        init_result_column(result_column_view, count);
265
266
335
        for (const auto& columns_and_selector : columns_and_selectors) {
267
335
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
333
            } else {
270
333
                ColumnNullConstViewScalar<PType> from_column_view =
271
333
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
333
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
333
            }
274
335
        }
275
        DCHECK_EQ(result_column->size(), count);
276
108
        return result_column;
277
108
    }
_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
108
                          size_t count) {
255
108
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
108
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
108
                                             return sum + cs.selector.size();
258
108
                                         }));
259
108
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
108
        auto result_column = result_type->create_column();
261
262
108
        MutableColumnNullViewScalar<PType> result_column_view =
263
108
                MutableColumnNullViewScalar<PType>::create(result_column);
264
108
        init_result_column(result_column_view, count);
265
266
198
        for (const auto& columns_and_selector : columns_and_selectors) {
267
198
            if (columns_and_selector.output_nulls()) {
268
11
                result_column_view.insert_null(columns_and_selector.selector);
269
187
            } else {
270
187
                ColumnNullConstViewScalar<PType> from_column_view =
271
187
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
187
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
187
            }
274
198
        }
275
        DCHECK_EQ(result_column->size(), count);
276
108
        return result_column;
277
108
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
413
                          size_t count) {
255
413
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
413
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
413
                                             return sum + cs.selector.size();
258
413
                                         }));
259
413
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
413
        auto result_column = result_type->create_column();
261
262
413
        MutableColumnNullViewScalar<PType> result_column_view =
263
413
                MutableColumnNullViewScalar<PType>::create(result_column);
264
413
        init_result_column(result_column_view, count);
265
266
549
        for (const auto& columns_and_selector : columns_and_selectors) {
267
549
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
548
            } else {
270
548
                ColumnNullConstViewScalar<PType> from_column_view =
271
548
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
548
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
548
            }
274
549
        }
275
        DCHECK_EQ(result_column->size(), count);
276
413
        return result_column;
277
413
    }
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
31
                          size_t count) {
255
31
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
31
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
31
                                             return sum + cs.selector.size();
258
31
                                         }));
259
31
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
31
        auto result_column = result_type->create_column();
261
262
31
        MutableColumnNullViewScalar<PType> result_column_view =
263
31
                MutableColumnNullViewScalar<PType>::create(result_column);
264
31
        init_result_column(result_column_view, count);
265
266
78
        for (const auto& columns_and_selector : columns_and_selectors) {
267
78
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
76
            } else {
270
76
                ColumnNullConstViewScalar<PType> from_column_view =
271
76
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
76
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
76
            }
274
78
        }
275
        DCHECK_EQ(result_column->size(), count);
276
31
        return result_column;
277
31
    }
_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
4
                          size_t count) {
255
4
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
4
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
4
                                             return sum + cs.selector.size();
258
4
                                         }));
259
4
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
4
        auto result_column = result_type->create_column();
261
262
4
        MutableColumnNullViewScalar<PType> result_column_view =
263
4
                MutableColumnNullViewScalar<PType>::create(result_column);
264
4
        init_result_column(result_column_view, count);
265
266
4
        for (const auto& columns_and_selector : columns_and_selectors) {
267
4
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
4
            } else {
270
4
                ColumnNullConstViewScalar<PType> from_column_view =
271
4
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
4
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
4
            }
274
4
        }
275
        DCHECK_EQ(result_column->size(), count);
276
4
        return result_column;
277
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
32
                          size_t count) {
255
32
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
32
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
32
                                             return sum + cs.selector.size();
258
32
                                         }));
259
32
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
32
        auto result_column = result_type->create_column();
261
262
32
        MutableColumnNullViewScalar<PType> result_column_view =
263
32
                MutableColumnNullViewScalar<PType>::create(result_column);
264
32
        init_result_column(result_column_view, count);
265
266
36
        for (const auto& columns_and_selector : columns_and_selectors) {
267
36
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
36
            } else {
270
36
                ColumnNullConstViewScalar<PType> from_column_view =
271
36
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
36
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
36
            }
274
36
        }
275
        DCHECK_EQ(result_column->size(), count);
276
32
        return result_column;
277
32
    }
_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
9
                          size_t count) {
255
9
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
9
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
9
                                             return sum + cs.selector.size();
258
9
                                         }));
259
9
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
9
        auto result_column = result_type->create_column();
261
262
9
        MutableColumnNullViewScalar<PType> result_column_view =
263
9
                MutableColumnNullViewScalar<PType>::create(result_column);
264
9
        init_result_column(result_column_view, count);
265
266
15
        for (const auto& columns_and_selector : columns_and_selectors) {
267
15
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
14
            } else {
270
14
                ColumnNullConstViewScalar<PType> from_column_view =
271
14
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
14
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
14
            }
274
15
        }
275
        DCHECK_EQ(result_column->size(), count);
276
9
        return result_column;
277
9
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE43EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
35
                          size_t count) {
255
35
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
35
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
35
                                             return sum + cs.selector.size();
258
35
                                         }));
259
35
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
35
        auto result_column = result_type->create_column();
261
262
35
        MutableColumnNullViewScalar<PType> result_column_view =
263
35
                MutableColumnNullViewScalar<PType>::create(result_column);
264
35
        init_result_column(result_column_view, count);
265
266
38
        for (const auto& columns_and_selector : columns_and_selectors) {
267
38
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
37
            } else {
270
37
                ColumnNullConstViewScalar<PType> from_column_view =
271
37
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
37
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
37
            }
274
38
        }
275
        DCHECK_EQ(result_column->size(), count);
276
35
        return result_column;
277
35
    }
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
109
                          size_t count) {
255
109
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
109
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
109
                                             return sum + cs.selector.size();
258
109
                                         }));
259
109
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
109
        auto result_column = result_type->create_column();
261
262
109
        MutableColumnNullViewScalar<PType> result_column_view =
263
109
                MutableColumnNullViewScalar<PType>::create(result_column);
264
109
        init_result_column(result_column_view, count);
265
266
249
        for (const auto& columns_and_selector : columns_and_selectors) {
267
249
            if (columns_and_selector.output_nulls()) {
268
25
                result_column_view.insert_null(columns_and_selector.selector);
269
224
            } else {
270
224
                ColumnNullConstViewScalar<PType> from_column_view =
271
224
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
224
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
224
            }
274
249
        }
275
        DCHECK_EQ(result_column->size(), count);
276
109
        return result_column;
277
109
    }
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
8.23k
                                   size_t count) {
283
8.23k
        result_column_view.data.resize(count);
284
8.23k
        if (result_column_view.null_map != nullptr) {
285
2.38k
            result_column_view.null_map->resize_fill(count, 0);
286
2.38k
        }
287
8.23k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
115
                                   size_t count) {
283
115
        result_column_view.data.resize(count);
284
115
        if (result_column_view.null_map != nullptr) {
285
0
            result_column_view.null_map->resize_fill(count, 0);
286
0
        }
287
115
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
5.08k
                                   size_t count) {
283
5.08k
        result_column_view.data.resize(count);
284
5.08k
        if (result_column_view.null_map != nullptr) {
285
408
            result_column_view.null_map->resize_fill(count, 0);
286
408
        }
287
5.08k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm
Line
Count
Source
282
10
                                   size_t count) {
283
10
        result_column_view.data.resize(count);
284
10
        if (result_column_view.null_map != nullptr) {
285
10
            result_column_view.null_map->resize_fill(count, 0);
286
10
        }
287
10
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm
Line
Count
Source
282
1.45k
                                   size_t count) {
283
1.45k
        result_column_view.data.resize(count);
284
1.45k
        if (result_column_view.null_map != nullptr) {
285
1.14k
            result_column_view.null_map->resize_fill(count, 0);
286
1.14k
        }
287
1.45k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
931
                                   size_t count) {
283
931
        result_column_view.data.resize(count);
284
931
        if (result_column_view.null_map != nullptr) {
285
386
            result_column_view.null_map->resize_fill(count, 0);
286
386
        }
287
931
    }
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
94
                                   size_t count) {
283
94
        result_column_view.data.resize(count);
284
94
        if (result_column_view.null_map != nullptr) {
285
64
            result_column_view.null_map->resize_fill(count, 0);
286
64
        }
287
94
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
8
                                   size_t count) {
283
8
        result_column_view.data.resize(count);
284
8
        if (result_column_view.null_map != nullptr) {
285
8
            result_column_view.null_map->resize_fill(count, 0);
286
8
        }
287
8
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
24
                                   size_t count) {
283
24
        result_column_view.data.resize(count);
284
24
        if (result_column_view.null_map != nullptr) {
285
18
            result_column_view.null_map->resize_fill(count, 0);
286
18
        }
287
24
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
107
                                   size_t count) {
283
107
        result_column_view.data.resize(count);
284
107
        if (result_column_view.null_map != nullptr) {
285
31
            result_column_view.null_map->resize_fill(count, 0);
286
31
        }
287
107
    }
_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
42
                                   size_t count) {
283
42
        result_column_view.data.resize(count);
284
42
        if (result_column_view.null_map != nullptr) {
285
18
            result_column_view.null_map->resize_fill(count, 0);
286
18
        }
287
42
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
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
8
            result_column_view.null_map->resize_fill(count, 0);
286
8
        }
287
13
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE43EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_43EEEm
Line
Count
Source
282
224
                                   size_t count) {
283
224
        result_column_view.data.resize(count);
284
224
        if (result_column_view.null_map != nullptr) {
285
206
            result_column_view.null_map->resize_fill(count, 0);
286
206
        }
287
224
    }
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
115
                                   size_t count) {
283
115
        result_column_view.data.resize(count);
284
115
        if (result_column_view.null_map != nullptr) {
285
77
            result_column_view.null_map->resize_fill(count, 0);
286
77
        }
287
115
    }
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
1.22k
                          const Selector& false_selector, size_t count) {
296
1.22k
        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
1.22k
        DCHECK_EQ(true_column->size(), true_selector.size());
301
1.22k
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
1.22k
        auto result_column = result_type->create_column();
304
305
1.22k
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
1.22k
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
1.22k
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
1.22k
        size_t true_index = 0;
310
1.22k
        size_t false_index = 0;
311
124k
        for (size_t i = 0; i < count; ++i) {
312
123k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
10.5k
                result_column_view.insert_from(true_column_view, true_index++);
314
112k
            } else {
315
112k
                result_column_view.insert_from(false_column_view, false_index++);
316
112k
            }
317
123k
        }
318
319
1.22k
        DCHECK_EQ(result_column->size(), count);
320
1.22k
        return result_column;
321
1.22k
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
267
                          size_t count) {
326
267
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
267
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
267
                                             return sum + cs.selector.size();
329
267
                                         }));
330
267
        struct FillColumnWithPos {
331
267
            std::optional<ColumnNullConstView> source_column;
332
267
            size_t pos_in_source; // position in the column
333
334
86.6k
            void insert_to_column(MutableColumnNullView& result_column) const {
335
86.6k
                if (!source_column) {
336
27
                    result_column.insert_null();
337
86.6k
                } else {
338
86.6k
                    result_column.insert_from(*source_column, pos_in_source);
339
86.6k
                }
340
86.6k
            }
341
267
        };
342
343
267
        auto mutable_result_column = result_type->create_column();
344
267
        mutable_result_column->reserve(count);
345
346
267
        MutableColumnNullView mutable_result_column_view =
347
267
                MutableColumnNullView::create(mutable_result_column);
348
349
267
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
1.09k
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
1.09k
            if (column_with_selector.selector.empty()) {
353
669
                continue;
354
669
            }
355
94.2k
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
93.8k
                size_t result_index = column_with_selector.selector[i];
357
93.8k
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
7.15k
                        << "Position " << result_index << " has been filled already.";
359
93.8k
                if (column_with_selector.column) {
360
85.5k
                    ColumnNullConstView column_view =
361
85.5k
                            ColumnNullConstView::create(column_with_selector.column);
362
85.5k
                    fill_positions[result_index].source_column.emplace(column_view);
363
85.5k
                    fill_positions[result_index].pos_in_source = i;
364
85.5k
                } else {
365
8.30k
                    fill_positions[result_index].source_column = std::nullopt;
366
8.30k
                }
367
93.8k
            }
368
421
        }
369
370
86.7k
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
86.7k
            fill_pos.insert_to_column(mutable_result_column_view);
372
86.7k
        }
373
374
267
        DCHECK_EQ(mutable_result_column->size(), count);
375
267
        return mutable_result_column;
376
267
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
11.0k
            : _selector(selector), _count(count) {}
382
383
    // Iterate over the condition column and generate true_selector and false_selector
384
    // based on null_map and data.
385
386
    template <bool is_const, typename Func>
387
11.0k
    void for_each_with_selector(Func& f) const {
388
11.0k
        if (_selector != nullptr) {
389
2.56k
            const auto& selector_data = *_selector;
390
229k
            for (size_t i = 0; i < _count; ++i) {
391
226k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
226k
            }
393
8.48k
        } 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
8.48k
        }
398
11.0k
    }
unity_27_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
98
    void for_each_with_selector(Func& f) const {
388
98
        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
96
        } else {
394
550
            for (size_t i = 0; i < _count; ++i) {
395
454
                f(index_check_const<is_const>(i), i, i);
396
454
            }
397
96
        }
398
98
    }
unity_27_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
3.18k
    void for_each_with_selector(Func& f) const {
388
3.18k
        if (_selector != nullptr) {
389
967
            const auto& selector_data = *_selector;
390
12.5k
            for (size_t i = 0; i < _count; ++i) {
391
11.5k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
11.5k
            }
393
2.21k
        } else {
394
144k
            for (size_t i = 0; i < _count; ++i) {
395
141k
                f(index_check_const<is_const>(i), i, i);
396
141k
            }
397
2.21k
        }
398
3.18k
    }
unity_27_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
132
    void for_each_with_selector(Func& f) const {
388
132
        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
132
        } else {
394
446
            for (size_t i = 0; i < _count; ++i) {
395
314
                f(index_check_const<is_const>(i), i, i);
396
314
            }
397
132
        }
398
132
    }
unity_27_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
4.17k
    void for_each_with_selector(Func& f) const {
388
4.17k
        if (_selector != nullptr) {
389
191
            const auto& selector_data = *_selector;
390
559
            for (size_t i = 0; i < _count; ++i) {
391
368
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
368
            }
393
3.98k
        } 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
3.98k
        }
398
4.17k
    }
unity_27_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
4
    void for_each_with_selector(Func& f) const {
388
4
        if (_selector != nullptr) {
389
0
            const auto& selector_data = *_selector;
390
0
            for (size_t i = 0; i < _count; ++i) {
391
0
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
0
            }
393
4
        } else {
394
14
            for (size_t i = 0; i < _count; ++i) {
395
10
                f(index_check_const<is_const>(i), i, i);
396
10
            }
397
4
        }
398
4
    }
unity_27_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
171
    void for_each_with_selector(Func& f) const {
388
171
        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
171
        } else {
394
277k
            for (size_t i = 0; i < _count; ++i) {
395
277k
                f(index_check_const<is_const>(i), i, i);
396
277k
            }
397
171
        }
398
171
    }
unity_27_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
30
    void for_each_with_selector(Func& f) const {
388
30
        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
30
        } else {
394
993
            for (size_t i = 0; i < _count; ++i) {
395
963
                f(index_check_const<is_const>(i), i, i);
396
963
            }
397
30
        }
398
30
    }
unity_27_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
149
    void for_each_with_selector(Func& f) const {
388
149
        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
131
        } else {
394
8.57k
            for (size_t i = 0; i < _count; ++i) {
395
8.44k
                f(index_check_const<is_const>(i), i, i);
396
8.44k
            }
397
131
        }
398
149
    }
unity_27_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
16
    void for_each_with_selector(Func& f) const {
388
16
        if (_selector != nullptr) {
389
16
            const auto& selector_data = *_selector;
390
48
            for (size_t i = 0; i < _count; ++i) {
391
32
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
32
            }
393
16
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
16
    }
unity_27_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
295
    void for_each_with_selector(Func& f) const {
388
295
        if (_selector != nullptr) {
389
295
            const auto& selector_data = *_selector;
390
204k
            for (size_t i = 0; i < _count; ++i) {
391
203k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
203k
            }
393
295
        } 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
295
    }
Unexecuted instantiation: unity_27_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_
unity_27_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
712
    void for_each_with_selector(Func& f) const {
388
712
        if (_selector != nullptr) {
389
712
            const auto& selector_data = *_selector;
390
10.1k
            for (size_t i = 0; i < _count; ++i) {
391
9.47k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
9.47k
            }
393
712
        } 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
712
    }
unity_27_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
42
    void for_each_with_selector(Func& f) const {
388
42
        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
40
        } else {
394
80
            for (size_t i = 0; i < _count; ++i) {
395
40
                f(index_check_const<is_const>(i), i, i);
396
40
            }
397
40
        }
398
42
    }
unity_27_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
945
    void for_each_with_selector(Func& f) const {
388
945
        if (_selector != nullptr) {
389
42
            const auto& selector_data = *_selector;
390
120
            for (size_t i = 0; i < _count; ++i) {
391
78
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
78
            }
393
903
        } else {
394
3.49k
            for (size_t i = 0; i < _count; ++i) {
395
2.59k
                f(index_check_const<is_const>(i), i, i);
396
2.59k
            }
397
903
        }
398
945
    }
Unexecuted instantiation: unity_27_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_27_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_27_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
25
    void for_each_with_selector(Func& f) const {
388
25
        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
23
        } else {
394
46
            for (size_t i = 0; i < _count; ++i) {
395
23
                f(index_check_const<is_const>(i), i, i);
396
23
            }
397
23
        }
398
25
    }
unity_27_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
768
    void for_each_with_selector(Func& f) const {
388
768
        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
756
        } else {
394
19.9k
            for (size_t i = 0; i < _count; ++i) {
395
19.1k
                f(index_check_const<is_const>(i), i, i);
396
19.1k
            }
397
756
        }
398
768
    }
Unexecuted instantiation: unity_27_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_27_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_27_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
20
    void for_each_with_selector(Func& f) const {
388
20
        if (_selector != nullptr) {
389
20
            const auto& selector_data = *_selector;
390
182
            for (size_t i = 0; i < _count; ++i) {
391
162
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
162
            }
393
20
        } 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
20
    }
unity_27_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
124
    void for_each_with_selector(Func& f) const {
388
124
        if (_selector != nullptr) {
389
124
            const auto& selector_data = *_selector;
390
741
            for (size_t i = 0; i < _count; ++i) {
391
617
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
617
            }
393
124
        } 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
124
    }
unity_27_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
159
    void for_each_with_selector(Func& f) const {
388
159
        if (_selector != nullptr) {
389
159
            const auto& selector_data = *_selector;
390
620
            for (size_t i = 0; i < _count; ++i) {
391
461
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
461
            }
393
159
        } 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
159
    }
unity_27_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
8.96k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
8.96k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
8.96k
                                      size_t count) {
415
8.96k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
8.96k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
8.96k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
8.95k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
8.95k
        if (this->null_map != nullptr) {
422
3.76k
            const auto& null_map_data = *(this->null_map);
423
634k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
634k
                if (null_map_data[i]) {
425
115k
                    null_func(self_index, executor_index);
426
518k
                } else {
427
518k
                    if (this->data[i]) {
428
267k
                        true_func(self_index, executor_index);
429
267k
                    } else {
430
251k
                        false_func(self_index, executor_index);
431
251k
                    }
432
518k
                }
433
634k
            };
unity_27_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
153k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
153k
                if (null_map_data[i]) {
425
1.38k
                    null_func(self_index, executor_index);
426
152k
                } else {
427
152k
                    if (this->data[i]) {
428
18.8k
                        true_func(self_index, executor_index);
429
133k
                    } else {
430
133k
                        false_func(self_index, executor_index);
431
133k
                    }
432
152k
                }
433
153k
            };
unity_27_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
276k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
276k
                if (null_map_data[i]) {
425
114k
                    null_func(self_index, executor_index);
426
162k
                } else {
427
162k
                    if (this->data[i]) {
428
96.5k
                        true_func(self_index, executor_index);
429
96.5k
                    } else {
430
66.1k
                        false_func(self_index, executor_index);
431
66.1k
                    }
432
162k
                }
433
276k
            };
unity_27_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
203k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
203k
                if (null_map_data[i]) {
425
60
                    null_func(self_index, executor_index);
426
203k
                } else {
427
203k
                    if (this->data[i]) {
428
152k
                        true_func(self_index, executor_index);
429
152k
                    } else {
430
51.3k
                        false_func(self_index, executor_index);
431
51.3k
                    }
432
203k
                }
433
203k
            };
434
3.76k
            if (is_const) {
435
118
                for_each_with_selector<true>(update);
436
3.64k
            } else {
437
3.64k
                for_each_with_selector<false>(update);
438
3.64k
            }
439
5.19k
        } else {
440
            // non-nullable condition column
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
59.1k
                    false_func(self_index, executor_index);
446
59.1k
                }
447
10.0M
            };
unity_27_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
41.2k
                    false_func(self_index, executor_index);
446
41.2k
                }
447
10.0M
            };
unity_27_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
9.44k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
9.44k
                if (this->data[i]) {
443
1.02k
                    true_func(self_index, executor_index);
444
8.42k
                } else {
445
8.42k
                    false_func(self_index, executor_index);
446
8.42k
                }
447
9.44k
            };
unity_27_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.47k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
9.47k
                if (this->data[i]) {
443
64
                    true_func(self_index, executor_index);
444
9.41k
                } else {
445
9.41k
                    false_func(self_index, executor_index);
446
9.41k
                }
447
9.47k
            };
448
5.19k
            if (is_const) {
449
162
                for_each_with_selector<true>(update);
450
5.03k
            } else {
451
5.03k
                for_each_with_selector<false>(update);
452
5.03k
            }
453
5.19k
        }
454
8.95k
    }
unity_27_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
7.58k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
7.58k
        if (this->null_map != nullptr) {
422
3.27k
            const auto& null_map_data = *(this->null_map);
423
3.27k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
3.27k
                if (null_map_data[i]) {
425
3.27k
                    null_func(self_index, executor_index);
426
3.27k
                } else {
427
3.27k
                    if (this->data[i]) {
428
3.27k
                        true_func(self_index, executor_index);
429
3.27k
                    } else {
430
3.27k
                        false_func(self_index, executor_index);
431
3.27k
                    }
432
3.27k
                }
433
3.27k
            };
434
3.27k
            if (is_const) {
435
98
                for_each_with_selector<true>(update);
436
3.18k
            } else {
437
3.18k
                for_each_with_selector<false>(update);
438
3.18k
            }
439
4.30k
        } else {
440
            // non-nullable condition column
441
4.30k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
4.30k
                if (this->data[i]) {
443
4.30k
                    true_func(self_index, executor_index);
444
4.30k
                } else {
445
4.30k
                    false_func(self_index, executor_index);
446
4.30k
                }
447
4.30k
            };
448
4.30k
            if (is_const) {
449
132
                for_each_with_selector<true>(update);
450
4.17k
            } else {
451
4.17k
                for_each_with_selector<false>(update);
452
4.17k
            }
453
4.30k
        }
454
7.58k
    }
unity_27_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
354
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
354
        if (this->null_map != nullptr) {
422
175
            const auto& null_map_data = *(this->null_map);
423
175
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
175
                if (null_map_data[i]) {
425
175
                    null_func(self_index, executor_index);
426
175
                } else {
427
175
                    if (this->data[i]) {
428
175
                        true_func(self_index, executor_index);
429
175
                    } else {
430
175
                        false_func(self_index, executor_index);
431
175
                    }
432
175
                }
433
175
            };
434
175
            if (is_const) {
435
4
                for_each_with_selector<true>(update);
436
171
            } else {
437
171
                for_each_with_selector<false>(update);
438
171
            }
439
179
        } else {
440
            // non-nullable condition column
441
179
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
179
                if (this->data[i]) {
443
179
                    true_func(self_index, executor_index);
444
179
                } else {
445
179
                    false_func(self_index, executor_index);
446
179
                }
447
179
            };
448
179
            if (is_const) {
449
30
                for_each_with_selector<true>(update);
450
149
            } else {
451
149
                for_each_with_selector<false>(update);
452
149
            }
453
179
        }
454
354
    }
unity_27_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
1.02k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.02k
        if (this->null_map != nullptr) {
422
311
            const auto& null_map_data = *(this->null_map);
423
311
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
311
                if (null_map_data[i]) {
425
311
                    null_func(self_index, executor_index);
426
311
                } else {
427
311
                    if (this->data[i]) {
428
311
                        true_func(self_index, executor_index);
429
311
                    } else {
430
311
                        false_func(self_index, executor_index);
431
311
                    }
432
311
                }
433
311
            };
434
311
            if (is_const) {
435
16
                for_each_with_selector<true>(update);
436
295
            } else {
437
295
                for_each_with_selector<false>(update);
438
295
            }
439
712
        } else {
440
            // non-nullable condition column
441
712
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
712
                if (this->data[i]) {
443
712
                    true_func(self_index, executor_index);
444
712
                } else {
445
712
                    false_func(self_index, executor_index);
446
712
                }
447
712
            };
448
712
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
712
            } else {
451
712
                for_each_with_selector<false>(update);
452
712
            }
453
712
        }
454
1.02k
    }
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
2.09k
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
2.09k
                                          size_t count) {
465
2.09k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
2.09k
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
2.09k
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
2.08k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
2.08k
        if (this->null_map != nullptr) {
472
1.92k
            const auto& null_map_data = *(this->null_map);
473
22.7k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
22.7k
                if (null_map_data[i]) {
475
1.63k
                    null_func(self_index, executor_index);
476
21.0k
                } else {
477
21.0k
                    not_null_func(self_index, executor_index);
478
21.0k
                }
479
22.7k
            };
unity_27_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
2.71k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
2.71k
                if (null_map_data[i]) {
475
333
                    null_func(self_index, executor_index);
476
2.37k
                } else {
477
2.37k
                    not_null_func(self_index, executor_index);
478
2.37k
                }
479
2.71k
            };
unity_27_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.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
19.2k
                if (null_map_data[i]) {
475
1.22k
                    null_func(self_index, executor_index);
476
17.9k
                } else {
477
17.9k
                    not_null_func(self_index, executor_index);
478
17.9k
                }
479
19.2k
            };
unity_27_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
779
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
779
                if (null_map_data[i]) {
475
81
                    null_func(self_index, executor_index);
476
698
                } else {
477
698
                    not_null_func(self_index, executor_index);
478
698
                }
479
779
            };
480
1.92k
            if (is_const) {
481
87
                for_each_with_selector<true>(update);
482
1.83k
            } else {
483
1.83k
                for_each_with_selector<false>(update);
484
1.83k
            }
485
1.92k
        } else {
486
            // non-nullable condition column
487
467
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
467
                not_null_func(self_index, executor_index);
489
467
            };
Unexecuted instantiation: unity_27_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_27_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_27_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
467
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
467
                not_null_func(self_index, executor_index);
489
467
            };
490
165
            if (is_const) {
491
159
                for_each_with_selector<true>(update);
492
159
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
165
        }
496
2.08k
    }
unity_27_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
987
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
987
        if (this->null_map != nullptr) {
472
987
            const auto& null_map_data = *(this->null_map);
473
987
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
987
                if (null_map_data[i]) {
475
987
                    null_func(self_index, executor_index);
476
987
                } else {
477
987
                    not_null_func(self_index, executor_index);
478
987
                }
479
987
            };
480
987
            if (is_const) {
481
42
                for_each_with_selector<true>(update);
482
945
            } else {
483
945
                for_each_with_selector<false>(update);
484
945
            }
485
987
        } 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
987
    }
unity_27_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
793
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
793
        if (this->null_map != nullptr) {
472
793
            const auto& null_map_data = *(this->null_map);
473
793
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
793
                if (null_map_data[i]) {
475
793
                    null_func(self_index, executor_index);
476
793
                } else {
477
793
                    not_null_func(self_index, executor_index);
478
793
                }
479
793
            };
480
793
            if (is_const) {
481
25
                for_each_with_selector<true>(update);
482
768
            } else {
483
768
                for_each_with_selector<false>(update);
484
768
            }
485
793
        } 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
793
    }
unity_27_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
309
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
309
        if (this->null_map != nullptr) {
472
144
            const auto& null_map_data = *(this->null_map);
473
144
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
144
                if (null_map_data[i]) {
475
144
                    null_func(self_index, executor_index);
476
144
                } else {
477
144
                    not_null_func(self_index, executor_index);
478
144
                }
479
144
            };
480
144
            if (is_const) {
481
20
                for_each_with_selector<true>(update);
482
124
            } else {
483
124
                for_each_with_selector<false>(update);
484
124
            }
485
165
        } else {
486
            // non-nullable condition column
487
165
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
165
                not_null_func(self_index, executor_index);
489
165
            };
490
165
            if (is_const) {
491
159
                for_each_with_selector<true>(update);
492
159
            } else {
493
6
                for_each_with_selector<false>(update);
494
6
            }
495
165
        }
496
309
    }
497
};
498
499
} // namespace doris