Coverage Report

Created: 2026-10-20 07:13

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
234k
    static ColumnNullConstView create(const ColumnPtr& column_ptr) {
37
234k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
38
39
234k
        if (const auto* nullable_column =
40
234k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
41
6.30k
            return ColumnNullConstView {.column = nullable_column->get_nested_column(),
42
6.30k
                                        .null_map = &nullable_column->get_null_map_data(),
43
6.30k
                                        .is_const = is_const};
44
228k
        } else {
45
228k
            return ColumnNullConstView {
46
228k
                    .column = *from_data_column, .null_map = nullptr, .is_const = is_const};
47
228k
        }
48
234k
    }
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
47.3k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
47.3k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
47.3k
        const NullMap* null_map = nullptr;
64
47.3k
        const ArrayType* data = nullptr;
65
47.3k
        if (const auto* nullable_column =
66
47.3k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
13.2k
            null_map = &nullable_column->get_null_map_data();
68
13.2k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
13.2k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
34.0k
        } else {
71
34.0k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
34.0k
        }
73
74
47.3k
        return ColumnNullConstViewScalar {
75
47.3k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
47.3k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
18.8k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
18.8k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
18.8k
        const NullMap* null_map = nullptr;
64
18.8k
        const ArrayType* data = nullptr;
65
18.8k
        if (const auto* nullable_column =
66
18.8k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
7.37k
            null_map = &nullable_column->get_null_map_data();
68
7.37k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
7.37k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
11.4k
        } else {
71
11.4k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
11.4k
        }
73
74
18.8k
        return ColumnNullConstViewScalar {
75
18.8k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
18.8k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
20.3k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
20.3k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
20.3k
        const NullMap* null_map = nullptr;
64
20.3k
        const ArrayType* data = nullptr;
65
20.3k
        if (const auto* nullable_column =
66
20.3k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
421
            null_map = &nullable_column->get_null_map_data();
68
421
            const auto& nested_from_column = nullable_column->get_nested_column();
69
421
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
19.9k
        } else {
71
19.9k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
19.9k
        }
73
74
20.3k
        return ColumnNullConstViewScalar {
75
20.3k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
20.3k
    }
_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.71k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.71k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.71k
        const NullMap* null_map = nullptr;
64
2.71k
        const ArrayType* data = nullptr;
65
2.71k
        if (const auto* nullable_column =
66
2.71k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
2.15k
            null_map = &nullable_column->get_null_map_data();
68
2.15k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
2.15k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
2.15k
        } else {
71
553
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
553
        }
73
74
2.71k
        return ColumnNullConstViewScalar {
75
2.71k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.71k
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
2.41k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
2.41k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
2.41k
        const NullMap* null_map = nullptr;
64
2.41k
        const ArrayType* data = nullptr;
65
2.41k
        if (const auto* nullable_column =
66
2.41k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.07k
            null_map = &nullable_column->get_null_map_data();
68
1.07k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.07k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.34k
        } else {
71
1.34k
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
1.34k
        }
73
74
2.41k
        return ColumnNullConstViewScalar {
75
2.41k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
2.41k
    }
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
345
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
345
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
345
        const NullMap* null_map = nullptr;
64
345
        const ArrayType* data = nullptr;
65
345
        if (const auto* nullable_column =
66
345
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
209
            null_map = &nullable_column->get_null_map_data();
68
209
            const auto& nested_from_column = nullable_column->get_nested_column();
69
209
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
209
        } else {
71
136
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
136
        }
73
74
345
        return ColumnNullConstViewScalar {
75
345
                .data = *data, .null_map = null_map, .is_const = is_const};
76
345
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
28
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
28
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
28
        const NullMap* null_map = nullptr;
64
28
        const ArrayType* data = nullptr;
65
28
        if (const auto* nullable_column =
66
28
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
28
            null_map = &nullable_column->get_null_map_data();
68
28
            const auto& nested_from_column = nullable_column->get_nested_column();
69
28
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
28
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
28
        return ColumnNullConstViewScalar {
75
28
                .data = *data, .null_map = null_map, .is_const = is_const};
76
28
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
138
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
138
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
138
        const NullMap* null_map = nullptr;
64
138
        const ArrayType* data = nullptr;
65
138
        if (const auto* nullable_column =
66
138
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
24
            null_map = &nullable_column->get_null_map_data();
68
24
            const auto& nested_from_column = nullable_column->get_nested_column();
69
24
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
114
        } else {
71
114
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
114
        }
73
74
138
        return ColumnNullConstViewScalar {
75
138
                .data = *data, .null_map = null_map, .is_const = is_const};
76
138
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
298
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
298
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
298
        const NullMap* null_map = nullptr;
64
298
        const ArrayType* data = nullptr;
65
298
        if (const auto* nullable_column =
66
298
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
117
            null_map = &nullable_column->get_null_map_data();
68
117
            const auto& nested_from_column = nullable_column->get_nested_column();
69
117
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
181
        } else {
71
181
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
181
        }
73
74
298
        return ColumnNullConstViewScalar {
75
298
                .data = *data, .null_map = null_map, .is_const = is_const};
76
298
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
6
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
6
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
6
        const NullMap* null_map = nullptr;
64
6
        const ArrayType* data = nullptr;
65
6
        if (const auto* nullable_column =
66
6
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
6
            null_map = &nullable_column->get_null_map_data();
68
6
            const auto& nested_from_column = nullable_column->get_nested_column();
69
6
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
6
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
6
        return ColumnNullConstViewScalar {
75
6
                .data = *data, .null_map = null_map, .is_const = is_const};
76
6
    }
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
82
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
82
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
82
        const NullMap* null_map = nullptr;
64
82
        const ArrayType* data = nullptr;
65
82
        if (const auto* nullable_column =
66
82
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
51
            null_map = &nullable_column->get_null_map_data();
68
51
            const auto& nested_from_column = nullable_column->get_nested_column();
69
51
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
51
        } else {
71
31
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
31
        }
73
74
82
        return ColumnNullConstViewScalar {
75
82
                .data = *data, .null_map = null_map, .is_const = is_const};
76
82
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
32
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
32
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
32
        const NullMap* null_map = nullptr;
64
32
        const ArrayType* data = nullptr;
65
32
        if (const auto* nullable_column =
66
32
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
32
            null_map = &nullable_column->get_null_map_data();
68
32
            const auto& nested_from_column = nullable_column->get_nested_column();
69
32
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
32
        } else {
71
0
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
0
        }
73
74
32
        return ColumnNullConstViewScalar {
75
32
                .data = *data, .null_map = null_map, .is_const = is_const};
76
32
    }
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE43EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Line
Count
Source
61
350
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
350
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
350
        const NullMap* null_map = nullptr;
64
350
        const ArrayType* data = nullptr;
65
350
        if (const auto* nullable_column =
66
350
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
307
            null_map = &nullable_column->get_null_map_data();
68
307
            const auto& nested_from_column = nullable_column->get_nested_column();
69
307
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
307
        } else {
71
43
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
43
        }
73
74
350
        return ColumnNullConstViewScalar {
75
350
                .data = *data, .null_map = null_map, .is_const = is_const};
76
350
    }
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
1.69k
    static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) {
62
1.69k
        const auto& [from_data_column, is_const] = unpack_if_const(column_ptr);
63
1.69k
        const NullMap* null_map = nullptr;
64
1.69k
        const ArrayType* data = nullptr;
65
1.69k
        if (const auto* nullable_column =
66
1.69k
                    check_and_get_column<ColumnNullable>(from_data_column.get())) {
67
1.42k
            null_map = &nullable_column->get_null_map_data();
68
1.42k
            const auto& nested_from_column = nullable_column->get_nested_column();
69
1.42k
            data = &(assert_cast<const ColumnType&>(nested_from_column).get_data());
70
1.42k
        } else {
71
277
            data = &(assert_cast<const ColumnType&>(*from_data_column).get_data());
72
277
        }
73
74
1.69k
        return ColumnNullConstViewScalar {
75
1.69k
                .data = *data, .null_map = null_map, .is_const = is_const};
76
1.69k
    }
77
};
78
79
// Used to store a mutable column along with its null_map.
80
// If the input column is not nullable, then null_map will be nullptr.
81
struct MutableColumnNullView {
82
    IColumn& column;
83
    NullMap* null_map;
84
2.92k
    static MutableColumnNullView create(const MutableColumnPtr& column_ptr) {
85
2.92k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
86
828
            return MutableColumnNullView {.column = nullable_column->get_nested_column(),
87
828
                                          .null_map = &nullable_column->get_null_map_data()};
88
2.09k
        } else {
89
2.09k
            return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr};
90
2.09k
        }
91
2.92k
    }
92
93
256k
    void insert_from(const ColumnNullConstView& from, size_t i) {
94
256k
        auto index = index_check_const(i, from.is_const);
95
256k
        column.insert_from(from.column, index);
96
256k
        if (null_map != nullptr && from.null_map != nullptr) {
97
15.9k
            null_map->push_back((*from.null_map)[index]);
98
240k
        } else if (null_map != nullptr) {
99
            // from is not nullable, so insert 0
100
6.91k
            null_map->push_back(0);
101
6.91k
        }
102
256k
    }
103
104
32
    void insert_null() {
105
32
        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
32
        column.insert_default();
111
32
        null_map->push_back(1);
112
32
    }
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
13.8k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
13.8k
        ColumnType* data_column = nullptr;
125
13.8k
        NullMap* null_map = nullptr;
126
13.8k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
3.22k
            null_map = &nullable_column->get_null_map_data();
128
3.22k
            auto& nested_column = nullable_column->get_nested_column();
129
3.22k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
10.6k
        } else {
131
10.6k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
10.6k
        }
133
134
13.8k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
13.8k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
494
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
494
        ColumnType* data_column = nullptr;
125
494
        NullMap* null_map = nullptr;
126
494
        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
492
        } else {
131
492
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
492
        }
133
134
494
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
494
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
8.99k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
8.99k
        ColumnType* data_column = nullptr;
125
8.99k
        NullMap* null_map = nullptr;
126
8.99k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
394
            null_map = &nullable_column->get_null_map_data();
128
394
            auto& nested_column = nullable_column->get_nested_column();
129
394
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
8.60k
        } else {
131
8.60k
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
8.60k
        }
133
134
8.99k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
8.99k
    }
_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.36k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.36k
        ColumnType* data_column = nullptr;
125
1.36k
        NullMap* null_map = nullptr;
126
1.36k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
1.08k
            null_map = &nullable_column->get_null_map_data();
128
1.08k
            auto& nested_column = nullable_column->get_nested_column();
129
1.08k
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
1.08k
        } else {
131
279
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
279
        }
133
134
1.36k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.36k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
1.39k
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
1.39k
        ColumnType* data_column = nullptr;
125
1.39k
        NullMap* null_map = nullptr;
126
1.39k
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
478
            null_map = &nullable_column->get_null_map_data();
128
478
            auto& nested_column = nullable_column->get_nested_column();
129
478
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
912
        } else {
131
912
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
912
        }
133
134
1.39k
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
1.39k
    }
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
165
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
165
        ColumnType* data_column = nullptr;
125
165
        NullMap* null_map = nullptr;
126
165
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
132
            null_map = &nullable_column->get_null_map_data();
128
132
            auto& nested_column = nullable_column->get_nested_column();
129
132
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
132
        } else {
131
33
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
33
        }
133
134
165
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
165
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
16
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
16
        ColumnType* data_column = nullptr;
125
16
        NullMap* null_map = nullptr;
126
16
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
16
            null_map = &nullable_column->get_null_map_data();
128
16
            auto& nested_column = nullable_column->get_nested_column();
129
16
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
16
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
16
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
16
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
85
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
85
        ColumnType* data_column = nullptr;
125
85
        NullMap* null_map = nullptr;
126
85
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
9
            null_map = &nullable_column->get_null_map_data();
128
9
            auto& nested_column = nullable_column->get_nested_column();
129
9
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
76
        } else {
131
76
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
76
        }
133
134
85
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
85
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
166
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
166
        ColumnType* data_column = nullptr;
125
166
        NullMap* null_map = nullptr;
126
166
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
57
            null_map = &nullable_column->get_null_map_data();
128
57
            auto& nested_column = nullable_column->get_nested_column();
129
57
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
109
        } else {
131
109
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
109
        }
133
134
166
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
166
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
4
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
4
        ColumnType* data_column = nullptr;
125
4
        NullMap* null_map = nullptr;
126
4
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
4
            null_map = &nullable_column->get_null_map_data();
128
4
            auto& nested_column = nullable_column->get_nested_column();
129
4
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
4
        } else {
131
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
4
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
4
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
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
35
            null_map = &nullable_column->get_null_map_data();
128
35
            auto& nested_column = nullable_column->get_nested_column();
129
35
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
35
        } else {
131
7
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
7
        }
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
18
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
18
        ColumnType* data_column = nullptr;
125
18
        NullMap* null_map = nullptr;
126
18
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
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
0
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
0
        }
133
134
18
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
18
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE
Line
Count
Source
123
189
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
189
        ColumnType* data_column = nullptr;
125
189
        NullMap* null_map = nullptr;
126
189
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
172
            null_map = &nullable_column->get_null_map_data();
128
172
            auto& nested_column = nullable_column->get_nested_column();
129
172
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
172
        } else {
131
17
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
17
        }
133
134
189
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
189
    }
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
876
    static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) {
124
876
        ColumnType* data_column = nullptr;
125
876
        NullMap* null_map = nullptr;
126
876
        if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) {
127
808
            null_map = &nullable_column->get_null_map_data();
128
808
            auto& nested_column = nullable_column->get_nested_column();
129
808
            data_column = &(assert_cast<ColumnType&>(nested_column));
130
808
        } else {
131
68
            data_column = assert_cast<ColumnType*>(column_ptr.get());
132
68
        }
133
134
876
        return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map};
135
876
    }
136
137
29.4k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
29.4k
        auto& result_data = data;
139
29.4k
        const auto& from_data = from.data;
140
141
29.4k
        auto* result_null_map_data = null_map;
142
29.4k
        const auto* from_null_map_data = from.null_map;
143
144
29.4k
        if (from.is_const) {
145
9.68k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
9.68k
                                     from_null_map_data, selector);
147
19.7k
        } else {
148
19.7k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
19.7k
                                      from_null_map_data, selector);
150
19.7k
        }
151
29.4k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
988
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
988
        auto& result_data = data;
139
988
        const auto& from_data = from.data;
140
141
988
        auto* result_null_map_data = null_map;
142
988
        const auto* from_null_map_data = from.null_map;
143
144
988
        if (from.is_const) {
145
2
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
2
                                     from_null_map_data, selector);
147
986
        } else {
148
986
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
986
                                      from_null_map_data, selector);
150
986
        }
151
988
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
20.3k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
20.3k
        auto& result_data = data;
139
20.3k
        const auto& from_data = from.data;
140
141
20.3k
        auto* result_null_map_data = null_map;
142
20.3k
        const auto* from_null_map_data = from.null_map;
143
144
20.3k
        if (from.is_const) {
145
7.57k
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
7.57k
                                     from_null_map_data, selector);
147
12.7k
        } else {
148
12.7k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
12.7k
                                      from_null_map_data, selector);
150
12.7k
        }
151
20.3k
    }
_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.70k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.70k
        auto& result_data = data;
139
2.70k
        const auto& from_data = from.data;
140
141
2.70k
        auto* result_null_map_data = null_map;
142
2.70k
        const auto* from_null_map_data = from.null_map;
143
144
2.70k
        if (from.is_const) {
145
640
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
640
                                     from_null_map_data, selector);
147
2.06k
        } else {
148
2.06k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
2.06k
                                      from_null_map_data, selector);
150
2.06k
        }
151
2.70k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
2.41k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
2.41k
        auto& result_data = data;
139
2.41k
        const auto& from_data = from.data;
140
141
2.41k
        auto* result_null_map_data = null_map;
142
2.41k
        const auto* from_null_map_data = from.null_map;
143
144
2.41k
        if (from.is_const) {
145
533
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
533
                                     from_null_map_data, selector);
147
1.88k
        } else {
148
1.88k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.88k
                                      from_null_map_data, selector);
150
1.88k
        }
151
2.41k
    }
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
345
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
345
        auto& result_data = data;
139
345
        const auto& from_data = from.data;
140
141
345
        auto* result_null_map_data = null_map;
142
345
        const auto* from_null_map_data = from.null_map;
143
144
345
        if (from.is_const) {
145
110
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
110
                                     from_null_map_data, selector);
147
235
        } else {
148
235
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
235
                                      from_null_map_data, selector);
150
235
        }
151
345
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
28
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
28
        auto& result_data = data;
139
28
        const auto& from_data = from.data;
140
141
28
        auto* result_null_map_data = null_map;
142
28
        const auto* from_null_map_data = from.null_map;
143
144
28
        if (from.is_const) {
145
1
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
1
                                     from_null_map_data, selector);
147
27
        } else {
148
27
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
27
                                      from_null_map_data, selector);
150
27
        }
151
28
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
138
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
138
        auto& result_data = data;
139
138
        const auto& from_data = from.data;
140
141
138
        auto* result_null_map_data = null_map;
142
138
        const auto* from_null_map_data = from.null_map;
143
144
138
        if (from.is_const) {
145
23
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
23
                                     from_null_map_data, selector);
147
115
        } else {
148
115
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
115
                                      from_null_map_data, selector);
150
115
        }
151
138
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
298
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
298
        auto& result_data = data;
139
298
        const auto& from_data = from.data;
140
141
298
        auto* result_null_map_data = null_map;
142
298
        const auto* from_null_map_data = from.null_map;
143
144
298
        if (from.is_const) {
145
85
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
85
                                     from_null_map_data, selector);
147
213
        } else {
148
213
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
213
                                      from_null_map_data, selector);
150
213
        }
151
298
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
6
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
6
        auto& result_data = data;
139
6
        const auto& from_data = from.data;
140
141
6
        auto* result_null_map_data = null_map;
142
6
        const auto* from_null_map_data = from.null_map;
143
144
6
        if (from.is_const) {
145
0
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
0
                                     from_null_map_data, selector);
147
6
        } else {
148
6
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
6
                                      from_null_map_data, selector);
150
6
        }
151
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
82
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
82
        auto& result_data = data;
139
82
        const auto& from_data = from.data;
140
141
82
        auto* result_null_map_data = null_map;
142
82
        const auto* from_null_map_data = from.null_map;
143
144
82
        if (from.is_const) {
145
27
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
27
                                     from_null_map_data, selector);
147
55
        } else {
148
55
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
55
                                      from_null_map_data, selector);
150
55
        }
151
82
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
32
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
32
        auto& result_data = data;
139
32
        const auto& from_data = from.data;
140
141
32
        auto* result_null_map_data = null_map;
142
32
        const auto* from_null_map_data = from.null_map;
143
144
32
        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
32
        } else {
148
32
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
32
                                      from_null_map_data, selector);
150
32
        }
151
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_43EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
137
350
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
350
        auto& result_data = data;
139
350
        const auto& from_data = from.data;
140
141
350
        auto* result_null_map_data = null_map;
142
350
        const auto* from_null_map_data = from.null_map;
143
144
350
        if (from.is_const) {
145
138
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
138
                                     from_null_map_data, selector);
147
212
        } else {
148
212
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
212
                                      from_null_map_data, selector);
150
212
        }
151
350
    }
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
1.69k
    void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) {
138
1.69k
        auto& result_data = data;
139
1.69k
        const auto& from_data = from.data;
140
141
1.69k
        auto* result_null_map_data = null_map;
142
1.69k
        const auto* from_null_map_data = from.null_map;
143
144
1.69k
        if (from.is_const) {
145
531
            insert_into_result<true>(result_data, from_data, result_null_map_data,
146
531
                                     from_null_map_data, selector);
147
1.16k
        } else {
148
1.16k
            insert_into_result<false>(result_data, from_data, result_null_map_data,
149
1.16k
                                      from_null_map_data, selector);
150
1.16k
        }
151
1.69k
    }
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
29.4k
                                   const Selector& selector) {
157
29.4k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
29.4k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
5.07k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
5.07k
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
29.4k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2
                                   const Selector& selector) {
157
2
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
2
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
2
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
986
                                   const Selector& selector) {
157
986
        insert_with_selector<is_const>(result_data, from_data, selector);
158
986
        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
986
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
7.57k
                                   const Selector& selector) {
157
7.57k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
7.57k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
7.57k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
12.7k
                                   const Selector& selector) {
157
12.7k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
12.7k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
400
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
400
        }
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.7k
    }
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
640
                                   const Selector& selector) {
157
640
        insert_with_selector<is_const>(result_data, from_data, selector);
158
640
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
413
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
413
        }
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
640
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
2.06k
                                   const Selector& selector) {
157
2.06k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
2.06k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.64k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.64k
        }
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.06k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
533
                                   const Selector& selector) {
157
533
        insert_with_selector<is_const>(result_data, from_data, selector);
158
533
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
32
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
32
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
533
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.88k
                                   const Selector& selector) {
157
1.88k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.88k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
527
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
527
        }
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.88k
    }
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
110
                                   const Selector& selector) {
157
110
        insert_with_selector<is_const>(result_data, from_data, selector);
158
110
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
10
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
10
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
110
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
235
                                   const Selector& selector) {
157
235
        insert_with_selector<is_const>(result_data, from_data, selector);
158
235
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
178
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
178
        }
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
235
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
1
                                   const Selector& selector) {
157
1
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIiEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
27
                                   const Selector& selector) {
157
27
        insert_with_selector<is_const>(result_data, from_data, selector);
158
27
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
27
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
27
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
23
                                   const Selector& selector) {
157
23
        insert_with_selector<is_const>(result_data, from_data, selector);
158
23
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
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
23
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE
Line
Count
Source
156
115
                                   const Selector& selector) {
157
115
        insert_with_selector<is_const>(result_data, from_data, selector);
158
115
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
16
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
16
        }
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
115
    }
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
85
                                   const Selector& selector) {
157
85
        insert_with_selector<is_const>(result_data, from_data, selector);
158
85
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
8
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
8
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
85
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE
Line
Count
Source
156
213
                                   const Selector& selector) {
157
213
        insert_with_selector<is_const>(result_data, from_data, selector);
158
213
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
72
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
72
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
213
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE
Line
Count
Source
156
6
                                   const Selector& selector) {
157
6
        insert_with_selector<is_const>(result_data, from_data, selector);
158
6
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
6
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
6
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
27
                                   const Selector& selector) {
157
27
        insert_with_selector<is_const>(result_data, from_data, selector);
158
27
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
24
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
24
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
55
                                   const Selector& selector) {
157
55
        insert_with_selector<is_const>(result_data, from_data, selector);
158
55
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
22
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
22
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
55
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
156
32
                                   const Selector& selector) {
157
32
        insert_with_selector<is_const>(result_data, from_data, selector);
158
32
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
32
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
32
        }
161
        // Note: When from_null_map_data is nullptr (non-nullable source),
162
        // no action needed since result null_map is already initialized to 0 (non-null)
163
        // by init_result_column's resize_fill(count, 0)
164
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
138
                                   const Selector& selector) {
157
138
        insert_with_selector<is_const>(result_data, from_data, selector);
158
138
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
115
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
115
        }
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
138
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
156
212
                                   const Selector& selector) {
157
212
        insert_with_selector<is_const>(result_data, from_data, selector);
158
212
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
174
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
174
        }
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
212
    }
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
531
                                   const Selector& selector) {
157
531
        insert_with_selector<is_const>(result_data, from_data, selector);
158
531
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
254
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
254
        }
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
531
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
156
1.16k
                                   const Selector& selector) {
157
1.16k
        insert_with_selector<is_const>(result_data, from_data, selector);
158
1.16k
        if (result_null_map_data != nullptr && from_null_map_data != nullptr) {
159
1.09k
            insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector);
160
1.09k
        }
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.16k
    }
165
166
    template <bool is_const>
167
    static void insert_with_selector(auto& result_data, const auto& data,
168
34.5k
                                     const Selector& selector) {
169
10.7M
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.6M
            auto index = selector[i];
171
10.6M
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.6M
        }
173
34.5k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
4
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
6
            auto index = selector[i];
171
6
            result_data[index] = data[index_check_const<is_const>(i)];
172
6
        }
173
4
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
988
                                     const Selector& selector) {
169
1.98k
        for (size_t i = 0; i < selector.size(); ++i) {
170
996
            auto index = selector[i];
171
996
            result_data[index] = data[index_check_const<is_const>(i)];
172
996
        }
173
988
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
7.57k
                                     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
7.57k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
2
        for (size_t i = 0; i < selector.size(); ++i) {
170
1
            auto index = selector[i];
171
1
            result_data[index] = data[index_check_const<is_const>(i)];
172
1
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
12.7k
                                     const Selector& selector) {
169
16.1k
        for (size_t i = 0; i < selector.size(); ++i) {
170
3.41k
            auto index = selector[i];
171
3.41k
            result_data[index] = data[index_check_const<is_const>(i)];
172
3.41k
        }
173
12.7k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
400
                                     const Selector& selector) {
169
2.18k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.78k
            auto index = selector[i];
171
1.78k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.78k
        }
173
400
    }
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
640
                                     const Selector& selector) {
169
23.0k
        for (size_t i = 0; i < selector.size(); ++i) {
170
22.4k
            auto index = selector[i];
171
22.4k
            result_data[index] = data[index_check_const<is_const>(i)];
172
22.4k
        }
173
640
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
413
                                     const Selector& selector) {
169
1.57k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.16k
            auto index = selector[i];
171
1.16k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.16k
        }
173
413
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
2.06k
                                     const Selector& selector) {
169
4.48k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.41k
            auto index = selector[i];
171
2.41k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.41k
        }
173
2.06k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.64k
                                     const Selector& selector) {
169
3.72k
        for (size_t i = 0; i < selector.size(); ++i) {
170
2.08k
            auto index = selector[i];
171
2.08k
            result_data[index] = data[index_check_const<is_const>(i)];
172
2.08k
        }
173
1.64k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
533
                                     const Selector& selector) {
169
4.87k
        for (size_t i = 0; i < selector.size(); ++i) {
170
4.34k
            auto index = selector[i];
171
4.34k
            result_data[index] = data[index_check_const<is_const>(i)];
172
4.34k
        }
173
533
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
32
                                     const Selector& selector) {
169
70
        for (size_t i = 0; i < selector.size(); ++i) {
170
38
            auto index = selector[i];
171
38
            result_data[index] = data[index_check_const<is_const>(i)];
172
38
        }
173
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.88k
                                     const Selector& selector) {
169
89.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
87.7k
            auto index = selector[i];
171
87.7k
            result_data[index] = data[index_check_const<is_const>(i)];
172
87.7k
        }
173
1.88k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
527
                                     const Selector& selector) {
169
91.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
91.0k
            auto index = selector[i];
171
91.0k
            result_data[index] = data[index_check_const<is_const>(i)];
172
91.0k
        }
173
527
    }
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
110
                                     const Selector& selector) {
169
10.7k
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.6k
            auto index = selector[i];
171
10.6k
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.6k
        }
173
110
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
10
                                     const Selector& selector) {
169
20
        for (size_t i = 0; i < selector.size(); ++i) {
170
10
            auto index = selector[i];
171
10
            result_data[index] = data[index_check_const<is_const>(i)];
172
10
        }
173
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
235
                                     const Selector& selector) {
169
431
        for (size_t i = 0; i < selector.size(); ++i) {
170
196
            auto index = selector[i];
171
196
            result_data[index] = data[index_check_const<is_const>(i)];
172
196
        }
173
235
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
178
                                     const Selector& selector) {
169
328
        for (size_t i = 0; i < selector.size(); ++i) {
170
150
            auto index = selector[i];
171
150
            result_data[index] = data[index_check_const<is_const>(i)];
172
150
        }
173
178
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
2
        for (size_t i = 0; i < selector.size(); ++i) {
170
1
            auto index = selector[i];
171
1
            result_data[index] = data[index_check_const<is_const>(i)];
172
1
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1
                                     const Selector& selector) {
169
2
        for (size_t i = 0; i < selector.size(); ++i) {
170
1
            auto index = selector[i];
171
1
            result_data[index] = data[index_check_const<is_const>(i)];
172
1
        }
173
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
27
                                     const Selector& selector) {
169
75
        for (size_t i = 0; i < selector.size(); ++i) {
170
48
            auto index = selector[i];
171
48
            result_data[index] = data[index_check_const<is_const>(i)];
172
48
        }
173
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
27
                                     const Selector& selector) {
169
75
        for (size_t i = 0; i < selector.size(); ++i) {
170
48
            auto index = selector[i];
171
48
            result_data[index] = data[index_check_const<is_const>(i)];
172
48
        }
173
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
23
                                     const Selector& selector) {
169
48
        for (size_t i = 0; i < selector.size(); ++i) {
170
25
            auto index = selector[i];
171
25
            result_data[index] = data[index_check_const<is_const>(i)];
172
25
        }
173
23
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
115
                                     const Selector& selector) {
169
252
        for (size_t i = 0; i < selector.size(); ++i) {
170
137
            auto index = selector[i];
171
137
            result_data[index] = data[index_check_const<is_const>(i)];
172
137
        }
173
115
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
16
                                     const Selector& selector) {
169
35
        for (size_t i = 0; i < selector.size(); ++i) {
170
19
            auto index = selector[i];
171
19
            result_data[index] = data[index_check_const<is_const>(i)];
172
19
        }
173
16
    }
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
85
                                     const Selector& selector) {
169
19.6k
        for (size_t i = 0; i < selector.size(); ++i) {
170
19.5k
            auto index = selector[i];
171
19.5k
            result_data[index] = data[index_check_const<is_const>(i)];
172
19.5k
        }
173
85
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
8
                                     const Selector& selector) {
169
22
        for (size_t i = 0; i < selector.size(); ++i) {
170
14
            auto index = selector[i];
171
14
            result_data[index] = data[index_check_const<is_const>(i)];
172
14
        }
173
8
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
213
                                     const Selector& selector) {
169
4.09k
        for (size_t i = 0; i < selector.size(); ++i) {
170
3.88k
            auto index = selector[i];
171
3.88k
            result_data[index] = data[index_check_const<is_const>(i)];
172
3.88k
        }
173
213
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
72
                                     const Selector& selector) {
169
199
        for (size_t i = 0; i < selector.size(); ++i) {
170
127
            auto index = selector[i];
171
127
            result_data[index] = data[index_check_const<is_const>(i)];
172
127
        }
173
72
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
4
            auto index = selector[i];
171
4
            result_data[index] = data[index_check_const<is_const>(i)];
172
4
        }
173
6
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
6
                                     const Selector& selector) {
169
10
        for (size_t i = 0; i < selector.size(); ++i) {
170
4
            auto index = selector[i];
171
4
            result_data[index] = data[index_check_const<is_const>(i)];
172
4
        }
173
6
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
27
                                     const Selector& selector) {
169
1.27k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.24k
            auto index = selector[i];
171
1.24k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.24k
        }
173
27
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
24
                                     const Selector& selector) {
169
1.26k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.23k
            auto index = selector[i];
171
1.23k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.23k
        }
173
24
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
55
                                     const Selector& selector) {
169
1.33k
        for (size_t i = 0; i < selector.size(); ++i) {
170
1.27k
            auto index = selector[i];
171
1.27k
            result_data[index] = data[index_check_const<is_const>(i)];
172
1.27k
        }
173
55
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
22
                                     const Selector& selector) {
169
52
        for (size_t i = 0; i < selector.size(); ++i) {
170
30
            auto index = selector[i];
171
30
            result_data[index] = data[index_check_const<is_const>(i)];
172
30
        }
173
22
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE
Line
Count
Source
168
32
                                     const Selector& selector) {
169
93
        for (size_t i = 0; i < selector.size(); ++i) {
170
61
            auto index = selector[i];
171
61
            result_data[index] = data[index_check_const<is_const>(i)];
172
61
        }
173
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
32
                                     const Selector& selector) {
169
93
        for (size_t i = 0; i < selector.size(); ++i) {
170
61
            auto index = selector[i];
171
61
            result_data[index] = data[index_check_const<is_const>(i)];
172
61
        }
173
32
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
138
                                     const Selector& selector) {
169
308
        for (size_t i = 0; i < selector.size(); ++i) {
170
170
            auto index = selector[i];
171
170
            result_data[index] = data[index_check_const<is_const>(i)];
172
170
        }
173
138
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
115
                                     const Selector& selector) {
169
243
        for (size_t i = 0; i < selector.size(); ++i) {
170
128
            auto index = selector[i];
171
128
            result_data[index] = data[index_check_const<is_const>(i)];
172
128
        }
173
115
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimeStampNsValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE
Line
Count
Source
168
212
                                     const Selector& selector) {
169
8.51k
        for (size_t i = 0; i < selector.size(); ++i) {
170
8.30k
            auto index = selector[i];
171
8.30k
            result_data[index] = data[index_check_const<is_const>(i)];
172
8.30k
        }
173
212
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
174
                                     const Selector& selector) {
169
8.45k
        for (size_t i = 0; i < selector.size(); ++i) {
170
8.28k
            auto index = selector[i];
171
8.28k
            result_data[index] = data[index_check_const<is_const>(i)];
172
8.28k
        }
173
174
    }
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
531
                                     const Selector& selector) {
169
40.8k
        for (size_t i = 0; i < selector.size(); ++i) {
170
40.3k
            auto index = selector[i];
171
40.3k
            result_data[index] = data[index_check_const<is_const>(i)];
172
40.3k
        }
173
531
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
254
                                     const Selector& selector) {
169
10.2k
        for (size_t i = 0; i < selector.size(); ++i) {
170
10.0k
            auto index = selector[i];
171
10.0k
            result_data[index] = data[index_check_const<is_const>(i)];
172
10.0k
        }
173
254
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.16k
                                     const Selector& selector) {
169
150k
        for (size_t i = 0; i < selector.size(); ++i) {
170
149k
            auto index = selector[i];
171
149k
            result_data[index] = data[index_check_const<is_const>(i)];
172
149k
        }
173
1.16k
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE
Line
Count
Source
168
1.09k
                                     const Selector& selector) {
169
149k
        for (size_t i = 0; i < selector.size(); ++i) {
170
148k
            auto index = selector[i];
171
148k
            result_data[index] = data[index_check_const<is_const>(i)];
172
148k
        }
173
1.09k
    }
174
175
78
    void insert_null(const Selector& selector) {
176
78
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
78
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
77
        auto& null_map_data = *null_map;
183
173
        for (size_t i = 0; i < selector.size(); ++i) {
184
96
            null_map_data[selector[i]] = 1;
185
96
        }
186
77
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
11
    void insert_null(const Selector& selector) {
176
11
        if (selector.empty()) {
177
1
            return;
178
1
        }
179
11
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
10
        auto& null_map_data = *null_map;
183
27
        for (size_t i = 0; i < selector.size(); ++i) {
184
17
            null_map_data[selector[i]] = 1;
185
17
        }
186
10
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
2
    void insert_null(const Selector& selector) {
176
2
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
2
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
2
        auto& null_map_data = *null_map;
183
4
        for (size_t i = 0; i < selector.size(); ++i) {
184
2
            null_map_data[selector[i]] = 1;
185
2
        }
186
2
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
1
    void insert_null(const Selector& selector) {
176
1
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
1
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
1
        auto& null_map_data = *null_map;
183
2
        for (size_t i = 0; i < selector.size(); ++i) {
184
1
            null_map_data[selector[i]] = 1;
185
1
        }
186
1
    }
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE43EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE44EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE
Line
Count
Source
175
56
    void insert_null(const Selector& selector) {
176
56
        if (selector.empty()) {
177
0
            return;
178
0
        }
179
56
        DCHECK(null_map != nullptr)
180
0
                << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr.";
181
182
56
        auto& null_map_data = *null_map;
183
124
        for (size_t i = 0; i < selector.size(); ++i) {
184
68
            null_map_data[selector[i]] = 1;
185
68
        }
186
56
    }
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
7.19k
    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
11.1k
                          const Selector& false_selector, size_t count) {
230
11.1k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
11.1k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
11.1k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
11.1k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
11.1k
        auto result_column = result_type->create_column();
236
237
11.1k
        MutableColumnNullViewScalar<PType> result_column_view =
238
11.1k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
11.1k
        init_result_column(result_column_view, count);
240
241
11.1k
        ColumnNullConstViewScalar<PType> true_column_view =
242
11.1k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
11.1k
        ColumnNullConstViewScalar<PType> false_column_view =
244
11.1k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
11.1k
        result_column_view.insert_from(true_column_view, true_selector);
247
11.1k
        result_column_view.insert_from(false_column_view, false_selector);
248
11.1k
        DCHECK_EQ(result_column->size(), count);
249
11.1k
        return result_column;
250
11.1k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
494
                          const Selector& false_selector, size_t count) {
230
494
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
494
        DCHECK_EQ(true_column->size(), true_selector.size());
232
494
        DCHECK_EQ(false_column->size(), false_selector.size());
233
494
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
494
        auto result_column = result_type->create_column();
236
237
494
        MutableColumnNullViewScalar<PType> result_column_view =
238
494
                MutableColumnNullViewScalar<PType>::create(result_column);
239
494
        init_result_column(result_column_view, count);
240
241
494
        ColumnNullConstViewScalar<PType> true_column_view =
242
494
                ColumnNullConstViewScalar<PType>::create(true_column);
243
494
        ColumnNullConstViewScalar<PType> false_column_view =
244
494
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
494
        result_column_view.insert_from(true_column_view, true_selector);
247
494
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
494
        return result_column;
250
494
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
7.46k
                          const Selector& false_selector, size_t count) {
230
7.46k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
7.46k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
7.46k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
7.46k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
7.46k
        auto result_column = result_type->create_column();
236
237
7.46k
        MutableColumnNullViewScalar<PType> result_column_view =
238
7.46k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
7.46k
        init_result_column(result_column_view, count);
240
241
7.46k
        ColumnNullConstViewScalar<PType> true_column_view =
242
7.46k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
7.46k
        ColumnNullConstViewScalar<PType> false_column_view =
244
7.46k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
7.46k
        result_column_view.insert_from(true_column_view, true_selector);
247
7.46k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
7.46k
        return result_column;
250
7.46k
    }
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.25k
                          const Selector& false_selector, size_t count) {
230
1.25k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
1.25k
        DCHECK_EQ(true_column->size(), true_selector.size());
232
1.25k
        DCHECK_EQ(false_column->size(), false_selector.size());
233
1.25k
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
1.25k
        auto result_column = result_type->create_column();
236
237
1.25k
        MutableColumnNullViewScalar<PType> result_column_view =
238
1.25k
                MutableColumnNullViewScalar<PType>::create(result_column);
239
1.25k
        init_result_column(result_column_view, count);
240
241
1.25k
        ColumnNullConstViewScalar<PType> true_column_view =
242
1.25k
                ColumnNullConstViewScalar<PType>::create(true_column);
243
1.25k
        ColumnNullConstViewScalar<PType> false_column_view =
244
1.25k
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
1.25k
        result_column_view.insert_from(true_column_view, true_selector);
247
1.25k
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
1.25k
        return result_column;
250
1.25k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
869
                          const Selector& false_selector, size_t count) {
230
869
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
869
        DCHECK_EQ(true_column->size(), true_selector.size());
232
869
        DCHECK_EQ(false_column->size(), false_selector.size());
233
869
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
869
        auto result_column = result_type->create_column();
236
237
869
        MutableColumnNullViewScalar<PType> result_column_view =
238
869
                MutableColumnNullViewScalar<PType>::create(result_column);
239
869
        init_result_column(result_column_view, count);
240
241
869
        ColumnNullConstViewScalar<PType> true_column_view =
242
869
                ColumnNullConstViewScalar<PType>::create(true_column);
243
869
        ColumnNullConstViewScalar<PType> false_column_view =
244
869
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
869
        result_column_view.insert_from(true_column_view, true_selector);
247
869
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
869
        return result_column;
250
869
    }
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
137
                          const Selector& false_selector, size_t count) {
230
137
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
137
        DCHECK_EQ(true_column->size(), true_selector.size());
232
137
        DCHECK_EQ(false_column->size(), false_selector.size());
233
137
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
137
        auto result_column = result_type->create_column();
236
237
137
        MutableColumnNullViewScalar<PType> result_column_view =
238
137
                MutableColumnNullViewScalar<PType>::create(result_column);
239
137
        init_result_column(result_column_view, count);
240
241
137
        ColumnNullConstViewScalar<PType> true_column_view =
242
137
                ColumnNullConstViewScalar<PType>::create(true_column);
243
137
        ColumnNullConstViewScalar<PType> false_column_view =
244
137
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
137
        result_column_view.insert_from(true_column_view, true_selector);
247
137
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
137
        return result_column;
250
137
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
11
                          const Selector& false_selector, size_t count) {
230
11
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
11
        DCHECK_EQ(true_column->size(), true_selector.size());
232
11
        DCHECK_EQ(false_column->size(), false_selector.size());
233
11
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
11
        auto result_column = result_type->create_column();
236
237
11
        MutableColumnNullViewScalar<PType> result_column_view =
238
11
                MutableColumnNullViewScalar<PType>::create(result_column);
239
11
        init_result_column(result_column_view, count);
240
241
11
        ColumnNullConstViewScalar<PType> true_column_view =
242
11
                ColumnNullConstViewScalar<PType>::create(true_column);
243
11
        ColumnNullConstViewScalar<PType> false_column_view =
244
11
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
11
        result_column_view.insert_from(true_column_view, true_selector);
247
11
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
11
        return result_column;
250
11
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
13
                          const Selector& false_selector, size_t count) {
230
13
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
13
        DCHECK_EQ(true_column->size(), true_selector.size());
232
13
        DCHECK_EQ(false_column->size(), false_selector.size());
233
13
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
13
        auto result_column = result_type->create_column();
236
237
13
        MutableColumnNullViewScalar<PType> result_column_view =
238
13
                MutableColumnNullViewScalar<PType>::create(result_column);
239
13
        init_result_column(result_column_view, count);
240
241
13
        ColumnNullConstViewScalar<PType> true_column_view =
242
13
                ColumnNullConstViewScalar<PType>::create(true_column);
243
13
        ColumnNullConstViewScalar<PType> false_column_view =
244
13
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
13
        result_column_view.insert_from(true_column_view, true_selector);
247
13
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
13
        return result_column;
250
13
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_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
128
                          const Selector& false_selector, size_t count) {
230
128
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
128
        DCHECK_EQ(true_column->size(), true_selector.size());
232
128
        DCHECK_EQ(false_column->size(), false_selector.size());
233
128
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
128
        auto result_column = result_type->create_column();
236
237
128
        MutableColumnNullViewScalar<PType> result_column_view =
238
128
                MutableColumnNullViewScalar<PType>::create(result_column);
239
128
        init_result_column(result_column_view, count);
240
241
128
        ColumnNullConstViewScalar<PType> true_column_view =
242
128
                ColumnNullConstViewScalar<PType>::create(true_column);
243
128
        ColumnNullConstViewScalar<PType> false_column_view =
244
128
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
128
        result_column_view.insert_from(true_column_view, true_selector);
247
128
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
128
        return result_column;
250
128
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
2
                          const Selector& false_selector, size_t count) {
230
2
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
2
        DCHECK_EQ(true_column->size(), true_selector.size());
232
2
        DCHECK_EQ(false_column->size(), false_selector.size());
233
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
2
        auto result_column = result_type->create_column();
236
237
2
        MutableColumnNullViewScalar<PType> result_column_view =
238
2
                MutableColumnNullViewScalar<PType>::create(result_column);
239
2
        init_result_column(result_column_view, count);
240
241
2
        ColumnNullConstViewScalar<PType> true_column_view =
242
2
                ColumnNullConstViewScalar<PType>::create(true_column);
243
2
        ColumnNullConstViewScalar<PType> false_column_view =
244
2
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
2
        result_column_view.insert_from(true_column_view, true_selector);
247
2
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
2
        return result_column;
250
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
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
13
                          const Selector& false_selector, size_t count) {
230
13
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
13
        DCHECK_EQ(true_column->size(), true_selector.size());
232
13
        DCHECK_EQ(false_column->size(), false_selector.size());
233
13
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
13
        auto result_column = result_type->create_column();
236
237
13
        MutableColumnNullViewScalar<PType> result_column_view =
238
13
                MutableColumnNullViewScalar<PType>::create(result_column);
239
13
        init_result_column(result_column_view, count);
240
241
13
        ColumnNullConstViewScalar<PType> true_column_view =
242
13
                ColumnNullConstViewScalar<PType>::create(true_column);
243
13
        ColumnNullConstViewScalar<PType> false_column_view =
244
13
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
13
        result_column_view.insert_from(true_column_view, true_selector);
247
13
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
13
        return result_column;
250
13
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE43EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m
Line
Count
Source
229
149
                          const Selector& false_selector, size_t count) {
230
149
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
149
        DCHECK_EQ(true_column->size(), true_selector.size());
232
149
        DCHECK_EQ(false_column->size(), false_selector.size());
233
149
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
149
        auto result_column = result_type->create_column();
236
237
149
        MutableColumnNullViewScalar<PType> result_column_view =
238
149
                MutableColumnNullViewScalar<PType>::create(result_column);
239
149
        init_result_column(result_column_view, count);
240
241
149
        ColumnNullConstViewScalar<PType> true_column_view =
242
149
                ColumnNullConstViewScalar<PType>::create(true_column);
243
149
        ColumnNullConstViewScalar<PType> false_column_view =
244
149
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
149
        result_column_view.insert_from(true_column_view, true_selector);
247
149
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
149
        return result_column;
250
149
    }
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
607
                          const Selector& false_selector, size_t count) {
230
607
        DCHECK_EQ(false_selector.size() + true_selector.size(), count);
231
607
        DCHECK_EQ(true_column->size(), true_selector.size());
232
607
        DCHECK_EQ(false_column->size(), false_selector.size());
233
607
        DCHECK_EQ(PType, result_type->get_primitive_type());
234
235
607
        auto result_column = result_type->create_column();
236
237
607
        MutableColumnNullViewScalar<PType> result_column_view =
238
607
                MutableColumnNullViewScalar<PType>::create(result_column);
239
607
        init_result_column(result_column_view, count);
240
241
607
        ColumnNullConstViewScalar<PType> true_column_view =
242
607
                ColumnNullConstViewScalar<PType>::create(true_column);
243
607
        ColumnNullConstViewScalar<PType> false_column_view =
244
607
                ColumnNullConstViewScalar<PType>::create(false_column);
245
246
607
        result_column_view.insert_from(true_column_view, true_selector);
247
607
        result_column_view.insert_from(false_column_view, false_selector);
248
        DCHECK_EQ(result_column->size(), count);
249
607
        return result_column;
250
607
    }
251
252
    static ColumnPtr fill(const DataTypePtr& result_type,
253
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
254
2.65k
                          size_t count) {
255
2.65k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2.65k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2.65k
                                             return sum + cs.selector.size();
258
2.65k
                                         }));
259
2.65k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2.65k
        auto result_column = result_type->create_column();
261
262
2.65k
        MutableColumnNullViewScalar<PType> result_column_view =
263
2.65k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2.65k
        init_result_column(result_column_view, count);
265
266
7.19k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
7.19k
            if (columns_and_selector.output_nulls()) {
268
76
                result_column_view.insert_null(columns_and_selector.selector);
269
7.11k
            } else {
270
7.11k
                ColumnNullConstViewScalar<PType> from_column_view =
271
7.11k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
7.11k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
7.11k
            }
274
7.19k
        }
275
2.65k
        DCHECK_EQ(result_column->size(), count);
276
2.65k
        return result_column;
277
2.65k
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
1.53k
                          size_t count) {
255
1.53k
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
1.53k
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
1.53k
                                             return sum + cs.selector.size();
258
1.53k
                                         }));
259
1.53k
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
1.53k
        auto result_column = result_type->create_column();
261
262
1.53k
        MutableColumnNullViewScalar<PType> result_column_view =
263
1.53k
                MutableColumnNullViewScalar<PType>::create(result_column);
264
1.53k
        init_result_column(result_column_view, count);
265
266
5.40k
        for (const auto& columns_and_selector : columns_and_selectors) {
267
5.40k
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
5.40k
            } else {
270
5.40k
                ColumnNullConstViewScalar<PType> from_column_view =
271
5.40k
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
5.40k
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
5.40k
            }
274
5.40k
        }
275
        DCHECK_EQ(result_column->size(), count);
276
1.53k
        return result_column;
277
1.53k
    }
_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
111
                          size_t count) {
255
111
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
111
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
111
                                             return sum + cs.selector.size();
258
111
                                         }));
259
111
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
111
        auto result_column = result_type->create_column();
261
262
111
        MutableColumnNullViewScalar<PType> result_column_view =
263
111
                MutableColumnNullViewScalar<PType>::create(result_column);
264
111
        init_result_column(result_column_view, count);
265
266
213
        for (const auto& columns_and_selector : columns_and_selectors) {
267
213
            if (columns_and_selector.output_nulls()) {
268
9
                result_column_view.insert_null(columns_and_selector.selector);
269
204
            } else {
270
204
                ColumnNullConstViewScalar<PType> from_column_view =
271
204
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
204
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
204
            }
274
213
        }
275
        DCHECK_EQ(result_column->size(), count);
276
111
        return result_column;
277
111
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
521
                          size_t count) {
255
521
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
521
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
521
                                             return sum + cs.selector.size();
258
521
                                         }));
259
521
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
521
        auto result_column = result_type->create_column();
261
262
521
        MutableColumnNullViewScalar<PType> result_column_view =
263
521
                MutableColumnNullViewScalar<PType>::create(result_column);
264
521
        init_result_column(result_column_view, count);
265
266
681
        for (const auto& columns_and_selector : columns_and_selectors) {
267
681
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
680
            } else {
270
680
                ColumnNullConstViewScalar<PType> from_column_view =
271
680
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
680
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
680
            }
274
681
        }
275
        DCHECK_EQ(result_column->size(), count);
276
521
        return result_column;
277
521
    }
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
28
                          size_t count) {
255
28
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
28
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
28
                                             return sum + cs.selector.size();
258
28
                                         }));
259
28
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
28
        auto result_column = result_type->create_column();
261
262
28
        MutableColumnNullViewScalar<PType> result_column_view =
263
28
                MutableColumnNullViewScalar<PType>::create(result_column);
264
28
        init_result_column(result_column_view, count);
265
266
73
        for (const auto& columns_and_selector : columns_and_selectors) {
267
73
            if (columns_and_selector.output_nulls()) {
268
2
                result_column_view.insert_null(columns_and_selector.selector);
269
71
            } else {
270
71
                ColumnNullConstViewScalar<PType> from_column_view =
271
71
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
71
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
71
            }
274
73
        }
275
        DCHECK_EQ(result_column->size(), count);
276
28
        return result_column;
277
28
    }
_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
72
                          size_t count) {
255
72
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
72
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
72
                                             return sum + cs.selector.size();
258
72
                                         }));
259
72
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
72
        auto result_column = result_type->create_column();
261
262
72
        MutableColumnNullViewScalar<PType> result_column_view =
263
72
                MutableColumnNullViewScalar<PType>::create(result_column);
264
72
        init_result_column(result_column_view, count);
265
266
112
        for (const auto& columns_and_selector : columns_and_selectors) {
267
112
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
112
            } else {
270
112
                ColumnNullConstViewScalar<PType> from_column_view =
271
112
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
112
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
112
            }
274
112
        }
275
        DCHECK_EQ(result_column->size(), count);
276
72
        return result_column;
277
72
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
38
                          size_t count) {
255
38
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
38
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
38
                                             return sum + cs.selector.size();
258
38
                                         }));
259
38
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
38
        auto result_column = result_type->create_column();
261
262
38
        MutableColumnNullViewScalar<PType> result_column_view =
263
38
                MutableColumnNullViewScalar<PType>::create(result_column);
264
38
        init_result_column(result_column_view, count);
265
266
42
        for (const auto& columns_and_selector : columns_and_selectors) {
267
42
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
42
            } else {
270
42
                ColumnNullConstViewScalar<PType> from_column_view =
271
42
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
42
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
42
            }
274
42
        }
275
        DCHECK_EQ(result_column->size(), count);
276
38
        return result_column;
277
38
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
2
                          size_t count) {
255
2
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
2
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
2
                                             return sum + cs.selector.size();
258
2
                                         }));
259
2
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
2
        auto result_column = result_type->create_column();
261
262
2
        MutableColumnNullViewScalar<PType> result_column_view =
263
2
                MutableColumnNullViewScalar<PType>::create(result_column);
264
2
        init_result_column(result_column_view, count);
265
266
2
        for (const auto& columns_and_selector : columns_and_selectors) {
267
2
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
2
            } else {
270
2
                ColumnNullConstViewScalar<PType> from_column_view =
271
2
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
2
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
2
            }
274
2
        }
275
        DCHECK_EQ(result_column->size(), count);
276
2
        return result_column;
277
2
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
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
13
        for (const auto& columns_and_selector : columns_and_selectors) {
267
13
            if (columns_and_selector.output_nulls()) {
268
1
                result_column_view.insert_null(columns_and_selector.selector);
269
12
            } else {
270
12
                ColumnNullConstViewScalar<PType> from_column_view =
271
12
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
12
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
12
            }
274
13
        }
275
        DCHECK_EQ(result_column->size(), count);
276
7
        return result_column;
277
7
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_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_13PrimitiveTypeE43EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm
Line
Count
Source
254
40
                          size_t count) {
255
40
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
40
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
40
                                             return sum + cs.selector.size();
258
40
                                         }));
259
40
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
40
        auto result_column = result_type->create_column();
261
262
40
        MutableColumnNullViewScalar<PType> result_column_view =
263
40
                MutableColumnNullViewScalar<PType>::create(result_column);
264
40
        init_result_column(result_column_view, count);
265
266
52
        for (const auto& columns_and_selector : columns_and_selectors) {
267
52
            if (columns_and_selector.output_nulls()) {
268
0
                result_column_view.insert_null(columns_and_selector.selector);
269
52
            } else {
270
52
                ColumnNullConstViewScalar<PType> from_column_view =
271
52
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
52
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
52
            }
274
52
        }
275
        DCHECK_EQ(result_column->size(), count);
276
40
        return result_column;
277
40
    }
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
269
                          size_t count) {
255
269
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
256
269
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
257
269
                                             return sum + cs.selector.size();
258
269
                                         }));
259
269
        DCHECK_EQ(PType, result_type->get_primitive_type());
260
269
        auto result_column = result_type->create_column();
261
262
269
        MutableColumnNullViewScalar<PType> result_column_view =
263
269
                MutableColumnNullViewScalar<PType>::create(result_column);
264
269
        init_result_column(result_column_view, count);
265
266
540
        for (const auto& columns_and_selector : columns_and_selectors) {
267
540
            if (columns_and_selector.output_nulls()) {
268
56
                result_column_view.insert_null(columns_and_selector.selector);
269
484
            } else {
270
484
                ColumnNullConstViewScalar<PType> from_column_view =
271
484
                        ColumnNullConstViewScalar<PType>::create(columns_and_selector.column);
272
484
                result_column_view.insert_from(from_column_view, columns_and_selector.selector);
273
484
            }
274
540
        }
275
        DCHECK_EQ(result_column->size(), count);
276
269
        return result_column;
277
269
    }
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
13.8k
                                   size_t count) {
283
13.8k
        result_column_view.data.resize(count);
284
13.8k
        if (result_column_view.null_map != nullptr) {
285
3.22k
            result_column_view.null_map->resize_fill(count, 0);
286
3.22k
        }
287
13.8k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm
Line
Count
Source
282
494
                                   size_t count) {
283
494
        result_column_view.data.resize(count);
284
494
        if (result_column_view.null_map != nullptr) {
285
2
            result_column_view.null_map->resize_fill(count, 0);
286
2
        }
287
494
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm
Line
Count
Source
282
8.99k
                                   size_t count) {
283
8.99k
        result_column_view.data.resize(count);
284
8.99k
        if (result_column_view.null_map != nullptr) {
285
394
            result_column_view.null_map->resize_fill(count, 0);
286
394
        }
287
8.99k
    }
_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.36k
                                   size_t count) {
283
1.36k
        result_column_view.data.resize(count);
284
1.36k
        if (result_column_view.null_map != nullptr) {
285
1.08k
            result_column_view.null_map->resize_fill(count, 0);
286
1.08k
        }
287
1.36k
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm
Line
Count
Source
282
1.39k
                                   size_t count) {
283
1.39k
        result_column_view.data.resize(count);
284
1.39k
        if (result_column_view.null_map != nullptr) {
285
478
            result_column_view.null_map->resize_fill(count, 0);
286
478
        }
287
1.39k
    }
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
165
                                   size_t count) {
283
165
        result_column_view.data.resize(count);
284
165
        if (result_column_view.null_map != nullptr) {
285
132
            result_column_view.null_map->resize_fill(count, 0);
286
132
        }
287
165
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm
Line
Count
Source
282
16
                                   size_t count) {
283
16
        result_column_view.data.resize(count);
284
16
        if (result_column_view.null_map != nullptr) {
285
16
            result_column_view.null_map->resize_fill(count, 0);
286
16
        }
287
16
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm
Line
Count
Source
282
85
                                   size_t count) {
283
85
        result_column_view.data.resize(count);
284
85
        if (result_column_view.null_map != nullptr) {
285
9
            result_column_view.null_map->resize_fill(count, 0);
286
9
        }
287
85
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm
Line
Count
Source
282
166
                                   size_t count) {
283
166
        result_column_view.data.resize(count);
284
166
        if (result_column_view.null_map != nullptr) {
285
57
            result_column_view.null_map->resize_fill(count, 0);
286
57
        }
287
166
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm
Line
Count
Source
282
4
                                   size_t count) {
283
4
        result_column_view.data.resize(count);
284
4
        if (result_column_view.null_map != nullptr) {
285
4
            result_column_view.null_map->resize_fill(count, 0);
286
4
        }
287
4
    }
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm
Line
Count
Source
282
42
                                   size_t count) {
283
42
        result_column_view.data.resize(count);
284
42
        if (result_column_view.null_map != nullptr) {
285
35
            result_column_view.null_map->resize_fill(count, 0);
286
35
        }
287
42
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm
Line
Count
Source
282
17
                                   size_t count) {
283
17
        result_column_view.data.resize(count);
284
18
        if (result_column_view.null_map != nullptr) {
285
18
            result_column_view.null_map->resize_fill(count, 0);
286
18
        }
287
17
    }
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE43EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_43EEEm
Line
Count
Source
282
189
                                   size_t count) {
283
189
        result_column_view.data.resize(count);
284
189
        if (result_column_view.null_map != nullptr) {
285
172
            result_column_view.null_map->resize_fill(count, 0);
286
172
        }
287
189
    }
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
876
                                   size_t count) {
283
876
        result_column_view.data.resize(count);
284
876
        if (result_column_view.null_map != nullptr) {
285
808
            result_column_view.null_map->resize_fill(count, 0);
286
808
        }
287
876
    }
288
};
289
290
// Non-scalar version of fill.
291
// For types that do not support random access, such as string, array, map, etc.
292
struct NonScalarFillWithSelector {
293
    static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column,
294
                          const Selector& true_selector, const ColumnPtr& false_column,
295
2.64k
                          const Selector& false_selector, size_t count) {
296
2.64k
        DCHECK_EQ(false_selector.size() + true_selector.size(), count)
297
0
                << "Mismatched selector sizes."
298
0
                << " false selector size: " << false_selector.size()
299
0
                << ", true selector size: " << true_selector.size() << ", count: " << count;
300
2.64k
        DCHECK_EQ(true_column->size(), true_selector.size());
301
2.64k
        DCHECK_EQ(false_column->size(), false_selector.size());
302
303
2.64k
        auto result_column = result_type->create_column();
304
305
2.64k
        MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column);
306
2.64k
        ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column);
307
2.64k
        ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column);
308
309
2.64k
        size_t true_index = 0;
310
2.64k
        size_t false_index = 0;
311
39.4k
        for (size_t i = 0; i < count; ++i) {
312
36.7k
            if (true_index < true_selector.size() && i == true_selector[true_index]) {
313
13.6k
                result_column_view.insert_from(true_column_view, true_index++);
314
23.1k
            } else {
315
23.1k
                result_column_view.insert_from(false_column_view, false_index++);
316
23.1k
            }
317
36.7k
        }
318
319
2.64k
        DCHECK_EQ(result_column->size(), count);
320
2.64k
        return result_column;
321
2.64k
    }
322
323
    static ColumnPtr fill(const DataTypePtr& result_type,
324
                          const std::vector<ColumnAndSelector>& columns_and_selectors,
325
276
                          size_t count) {
326
276
        DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(),
327
276
                                         0ULL, [](size_t sum, const ColumnAndSelector& cs) {
328
276
                                             return sum + cs.selector.size();
329
276
                                         }));
330
276
        struct FillColumnWithPos {
331
276
            std::optional<ColumnNullConstView> source_column;
332
276
            size_t pos_in_source; // position in the column
333
334
220k
            void insert_to_column(MutableColumnNullView& result_column) const {
335
220k
                if (!source_column) {
336
30
                    result_column.insert_null();
337
220k
                } else {
338
220k
                    result_column.insert_from(*source_column, pos_in_source);
339
220k
                }
340
220k
            }
341
276
        };
342
343
276
        auto mutable_result_column = result_type->create_column();
344
276
        mutable_result_column->reserve(count);
345
346
276
        MutableColumnNullView mutable_result_column_view =
347
276
                MutableColumnNullView::create(mutable_result_column);
348
349
276
        std::vector<FillColumnWithPos> fill_positions(count);
350
351
1.20k
        for (const ColumnAndSelector& column_with_selector : columns_and_selectors) {
352
1.20k
            if (column_with_selector.selector.empty()) {
353
684
                continue;
354
684
            }
355
230k
            for (size_t i = 0; i < column_with_selector.selector.size(); ++i) {
356
230k
                size_t result_index = column_with_selector.selector[i];
357
230k
                DCHECK(fill_positions[result_index].source_column.has_value() == false)
358
3.41k
                        << "Position " << result_index << " has been filled already.";
359
230k
                if (column_with_selector.column) {
360
226k
                    ColumnNullConstView column_view =
361
226k
                            ColumnNullConstView::create(column_with_selector.column);
362
226k
                    fill_positions[result_index].source_column.emplace(column_view);
363
226k
                    fill_positions[result_index].pos_in_source = i;
364
226k
                } else {
365
3.74k
                    fill_positions[result_index].source_column = std::nullopt;
366
3.74k
                }
367
230k
            }
368
518
        }
369
370
220k
        for (const FillColumnWithPos& fill_pos : fill_positions) {
371
220k
            fill_pos.insert_to_column(mutable_result_column_view);
372
220k
        }
373
374
276
        DCHECK_EQ(mutable_result_column->size(), count);
375
276
        return mutable_result_column;
376
276
    }
377
};
378
379
struct ConditionColumnViewHelper {
380
    ConditionColumnViewHelper(const Selector* selector, size_t count)
381
21.3k
            : _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
21.3k
    void for_each_with_selector(Func& f) const {
388
21.3k
        if (_selector != nullptr) {
389
6.73k
            const auto& selector_data = *_selector;
390
447k
            for (size_t i = 0; i < _count; ++i) {
391
441k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
441k
            }
393
14.6k
        } 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
14.6k
        }
398
21.3k
    }
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
85
    void for_each_with_selector(Func& f) const {
388
85
        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
83
        } else {
394
394
            for (size_t i = 0; i < _count; ++i) {
395
311
                f(index_check_const<is_const>(i), i, i);
396
311
            }
397
83
        }
398
85
    }
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
4.79k
    void for_each_with_selector(Func& f) const {
388
4.79k
        if (_selector != nullptr) {
389
1.53k
            const auto& selector_data = *_selector;
390
13.6k
            for (size_t i = 0; i < _count; ++i) {
391
12.1k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
12.1k
            }
393
3.25k
        } else {
394
173k
            for (size_t i = 0; i < _count; ++i) {
395
170k
                f(index_check_const<is_const>(i), i, i);
396
170k
            }
397
3.25k
        }
398
4.79k
    }
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
681
    void for_each_with_selector(Func& f) const {
388
681
        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
681
        } else {
394
2.12k
            for (size_t i = 0; i < _count; ++i) {
395
1.44k
                f(index_check_const<is_const>(i), i, i);
396
1.44k
            }
397
681
        }
398
681
    }
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
6.20k
    void for_each_with_selector(Func& f) const {
388
6.20k
        if (_selector != nullptr) {
389
138
            const auto& selector_data = *_selector;
390
358
            for (size_t i = 0; i < _count; ++i) {
391
220
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
220
            }
393
6.07k
        } else {
394
10.1M
            for (size_t i = 0; i < _count; ++i) {
395
10.1M
                f(index_check_const<is_const>(i), i, i);
396
10.1M
            }
397
6.07k
        }
398
6.20k
    }
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
22
    void for_each_with_selector(Func& f) const {
388
22
        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
22
        } else {
394
50
            for (size_t i = 0; i < _count; ++i) {
395
28
                f(index_check_const<is_const>(i), i, i);
396
28
            }
397
22
        }
398
22
    }
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
268
    void for_each_with_selector(Func& f) const {
388
268
        if (_selector != nullptr) {
389
17
            const auto& selector_data = *_selector;
390
131k
            for (size_t i = 0; i < _count; ++i) {
391
131k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
131k
            }
393
251
        } else {
394
226k
            for (size_t i = 0; i < _count; ++i) {
395
226k
                f(index_check_const<is_const>(i), i, i);
396
226k
            }
397
251
        }
398
268
    }
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$_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_
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
1.59k
    void for_each_with_selector(Func& f) const {
388
1.59k
        if (_selector != nullptr) {
389
18
            const auto& selector_data = *_selector;
390
58
            for (size_t i = 0; i < _count; ++i) {
391
40
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
40
            }
393
1.57k
        } else {
394
11.5k
            for (size_t i = 0; i < _count; ++i) {
395
9.94k
                f(index_check_const<is_const>(i), i, i);
396
9.94k
            }
397
1.57k
        }
398
1.59k
    }
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
20
    void for_each_with_selector(Func& f) const {
388
20
        if (_selector != nullptr) {
389
20
            const auto& selector_data = *_selector;
390
50
            for (size_t i = 0; i < _count; ++i) {
391
30
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
30
            }
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_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_
Line
Count
Source
387
2.11k
    void for_each_with_selector(Func& f) const {
388
2.11k
        if (_selector != nullptr) {
389
2.11k
            const auto& selector_data = *_selector;
390
286k
            for (size_t i = 0; i < _count; ++i) {
391
284k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
284k
            }
393
2.11k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2.11k
    }
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_
Line
Count
Source
387
5
    void for_each_with_selector(Func& f) const {
388
5
        if (_selector != nullptr) {
389
5
            const auto& selector_data = *_selector;
390
11
            for (size_t i = 0; i < _count; ++i) {
391
6
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
6
            }
393
5
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
5
    }
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
2.05k
    void for_each_with_selector(Func& f) const {
388
2.05k
        if (_selector != nullptr) {
389
2.05k
            const auto& selector_data = *_selector;
390
12.9k
            for (size_t i = 0; i < _count; ++i) {
391
10.9k
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
10.9k
            }
393
2.05k
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
2.05k
    }
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
262
    void for_each_with_selector(Func& f) const {
388
262
        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
260
        } else {
394
820
            for (size_t i = 0; i < _count; ++i) {
395
560
                f(index_check_const<is_const>(i), i, i);
396
560
            }
397
260
        }
398
262
    }
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
1.78k
    void for_each_with_selector(Func& f) const {
388
1.78k
        if (_selector != nullptr) {
389
388
            const auto& selector_data = *_selector;
390
806
            for (size_t i = 0; i < _count; ++i) {
391
418
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
418
            }
393
1.39k
        } else {
394
4.78k
            for (size_t i = 0; i < _count; ++i) {
395
3.39k
                f(index_check_const<is_const>(i), i, i);
396
3.39k
            }
397
1.39k
        }
398
1.78k
    }
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
24
    void for_each_with_selector(Func& f) const {
388
24
        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
22
        } else {
394
44
            for (size_t i = 0; i < _count; ++i) {
395
22
                f(index_check_const<is_const>(i), i, i);
396
22
            }
397
22
        }
398
24
    }
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
1.01k
    void for_each_with_selector(Func& f) const {
388
1.01k
        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
999
        } else {
394
5.87k
            for (size_t i = 0; i < _count; ++i) {
395
4.87k
                f(index_check_const<is_const>(i), i, i);
396
4.87k
            }
397
999
        }
398
1.01k
    }
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
35
    void for_each_with_selector(Func& f) const {
388
35
        if (_selector != nullptr) {
389
35
            const auto& selector_data = *_selector;
390
259
            for (size_t i = 0; i < _count; ++i) {
391
224
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
224
            }
393
35
        } 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
35
    }
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
154
    void for_each_with_selector(Func& f) const {
388
154
        if (_selector != nullptr) {
389
154
            const auto& selector_data = *_selector;
390
895
            for (size_t i = 0; i < _count; ++i) {
391
741
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
741
            }
393
154
        } 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
154
    }
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
228
    void for_each_with_selector(Func& f) const {
388
228
        if (_selector != nullptr) {
389
228
            const auto& selector_data = *_selector;
390
848
            for (size_t i = 0; i < _count; ++i) {
391
620
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
620
            }
393
228
        } 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
228
    }
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
3
    void for_each_with_selector(Func& f) const {
388
3
        if (_selector != nullptr) {
389
3
            const auto& selector_data = *_selector;
390
6
            for (size_t i = 0; i < _count; ++i) {
391
3
                f(index_check_const<is_const>(i), i, selector_data[i]);
392
3
            }
393
3
        } else {
394
0
            for (size_t i = 0; i < _count; ++i) {
395
0
                f(index_check_const<is_const>(i), i, i);
396
0
            }
397
0
        }
398
3
    }
399
400
private:
401
    const Selector* _selector;
402
    const size_t _count;
403
};
404
405
// Utility class for columns that return boolean values.
406
// We care about whether the value is null, as well as true/false values.
407
struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper {
408
    ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector,
409
                        size_t count)
410
17.8k
            : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base),
411
17.8k
              ConditionColumnViewHelper(selector, count) {}
412
413
    static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector,
414
17.8k
                                      size_t count) {
415
17.8k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
416
17.8k
        return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count};
417
17.8k
    }
418
419
    template <typename NullFunc, typename TrueFunc, typename FalseFunc>
420
17.8k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
17.8k
        if (this->null_map != nullptr) {
422
7.30k
            const auto& null_map_data = *(this->null_map);
423
824k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
824k
                if (null_map_data[i]) {
425
124k
                    null_func(self_index, executor_index);
426
699k
                } else {
427
699k
                    if (this->data[i]) {
428
323k
                        true_func(self_index, executor_index);
429
376k
                    } else {
430
376k
                        false_func(self_index, executor_index);
431
376k
                    }
432
699k
                }
433
824k
            };
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
183k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
183k
                if (null_map_data[i]) {
425
1.20k
                    null_func(self_index, executor_index);
426
181k
                } else {
427
181k
                    if (this->data[i]) {
428
14.0k
                        true_func(self_index, executor_index);
429
167k
                    } else {
430
167k
                        false_func(self_index, executor_index);
431
167k
                    }
432
181k
                }
433
183k
            };
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
356k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
356k
                if (null_map_data[i]) {
425
123k
                    null_func(self_index, executor_index);
426
233k
                } else {
427
233k
                    if (this->data[i]) {
428
118k
                        true_func(self_index, executor_index);
429
118k
                    } else {
430
115k
                        false_func(self_index, executor_index);
431
115k
                    }
432
233k
                }
433
356k
            };
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
284k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
284k
                if (null_map_data[i]) {
425
45
                    null_func(self_index, executor_index);
426
284k
                } else {
427
284k
                    if (this->data[i]) {
428
190k
                        true_func(self_index, executor_index);
429
190k
                    } else {
430
93.4k
                        false_func(self_index, executor_index);
431
93.4k
                    }
432
284k
                }
433
284k
            };
434
7.30k
            if (is_const) {
435
127
                for_each_with_selector<true>(update);
436
7.17k
            } else {
437
7.17k
                for_each_with_selector<false>(update);
438
7.17k
            }
439
10.5k
        } else {
440
            // non-nullable condition column
441
10.1M
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.1M
                if (this->data[i]) {
443
10.0M
                    true_func(self_index, executor_index);
444
10.0M
                } else {
445
112k
                    false_func(self_index, executor_index);
446
112k
                }
447
10.1M
            };
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.1M
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.1M
                if (this->data[i]) {
443
10.0M
                    true_func(self_index, executor_index);
444
10.0M
                } else {
445
91.7k
                    false_func(self_index, executor_index);
446
91.7k
                }
447
10.1M
            };
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.97k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
9.97k
                if (this->data[i]) {
443
248
                    true_func(self_index, executor_index);
444
9.73k
                } else {
445
9.73k
                    false_func(self_index, executor_index);
446
9.73k
                }
447
9.97k
            };
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
10.9k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
10.9k
                if (this->data[i]) {
443
251
                    true_func(self_index, executor_index);
444
10.6k
                } else {
445
10.6k
                    false_func(self_index, executor_index);
446
10.6k
                }
447
10.9k
            };
448
10.5k
            if (is_const) {
449
686
                for_each_with_selector<true>(update);
450
9.85k
            } else {
451
9.85k
                for_each_with_selector<false>(update);
452
9.85k
            }
453
10.5k
        }
454
17.8k
    }
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
11.7k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
11.7k
        if (this->null_map != nullptr) {
422
4.88k
            const auto& null_map_data = *(this->null_map);
423
4.88k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
4.88k
                if (null_map_data[i]) {
425
4.88k
                    null_func(self_index, executor_index);
426
4.88k
                } else {
427
4.88k
                    if (this->data[i]) {
428
4.88k
                        true_func(self_index, executor_index);
429
4.88k
                    } else {
430
4.88k
                        false_func(self_index, executor_index);
431
4.88k
                    }
432
4.88k
                }
433
4.88k
            };
434
4.88k
            if (is_const) {
435
85
                for_each_with_selector<true>(update);
436
4.79k
            } else {
437
4.79k
                for_each_with_selector<false>(update);
438
4.79k
            }
439
6.89k
        } else {
440
            // non-nullable condition column
441
6.89k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
6.89k
                if (this->data[i]) {
443
6.89k
                    true_func(self_index, executor_index);
444
6.89k
                } else {
445
6.89k
                    false_func(self_index, executor_index);
446
6.89k
                }
447
6.89k
            };
448
6.89k
            if (is_const) {
449
681
                for_each_with_selector<true>(update);
450
6.20k
            } else {
451
6.20k
                for_each_with_selector<false>(update);
452
6.20k
            }
453
6.89k
        }
454
11.7k
    }
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
1.88k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
1.88k
        if (this->null_map != nullptr) {
422
290
            const auto& null_map_data = *(this->null_map);
423
290
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
290
                if (null_map_data[i]) {
425
290
                    null_func(self_index, executor_index);
426
290
                } else {
427
290
                    if (this->data[i]) {
428
290
                        true_func(self_index, executor_index);
429
290
                    } else {
430
290
                        false_func(self_index, executor_index);
431
290
                    }
432
290
                }
433
290
            };
434
290
            if (is_const) {
435
22
                for_each_with_selector<true>(update);
436
268
            } else {
437
268
                for_each_with_selector<false>(update);
438
268
            }
439
1.59k
        } else {
440
            // non-nullable condition column
441
1.59k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
1.59k
                if (this->data[i]) {
443
1.59k
                    true_func(self_index, executor_index);
444
1.59k
                } else {
445
1.59k
                    false_func(self_index, executor_index);
446
1.59k
                }
447
1.59k
            };
448
1.59k
            if (is_const) {
449
0
                for_each_with_selector<true>(update);
450
1.59k
            } else {
451
1.59k
                for_each_with_selector<false>(update);
452
1.59k
            }
453
1.59k
        }
454
1.88k
    }
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
4.19k
    void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const {
421
4.19k
        if (this->null_map != nullptr) {
422
2.13k
            const auto& null_map_data = *(this->null_map);
423
2.13k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
424
2.13k
                if (null_map_data[i]) {
425
2.13k
                    null_func(self_index, executor_index);
426
2.13k
                } else {
427
2.13k
                    if (this->data[i]) {
428
2.13k
                        true_func(self_index, executor_index);
429
2.13k
                    } else {
430
2.13k
                        false_func(self_index, executor_index);
431
2.13k
                    }
432
2.13k
                }
433
2.13k
            };
434
2.13k
            if (is_const) {
435
20
                for_each_with_selector<true>(update);
436
2.11k
            } else {
437
2.11k
                for_each_with_selector<false>(update);
438
2.11k
            }
439
2.13k
        } else {
440
            // non-nullable condition column
441
2.06k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
442
2.06k
                if (this->data[i]) {
443
2.06k
                    true_func(self_index, executor_index);
444
2.06k
                } else {
445
2.06k
                    false_func(self_index, executor_index);
446
2.06k
                }
447
2.06k
            };
448
2.06k
            if (is_const) {
449
5
                for_each_with_selector<true>(update);
450
2.05k
            } else {
451
2.05k
                for_each_with_selector<false>(update);
452
2.05k
            }
453
2.06k
        }
454
4.19k
    }
455
};
456
457
// Utility class for columns that return nullable values.
458
// We only care about whether the value is null, not the actual value.
459
struct ConditionColumnNullView : ColumnNullConstView, ConditionColumnViewHelper {
460
    ConditionColumnNullView(ColumnNullConstView base, const Selector* selector, size_t count)
461
3.50k
            : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {}
462
463
    static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector,
464
3.50k
                                          size_t count) {
465
3.50k
        DCHECK_EQ(selector == nullptr ? count : selector->size(), count);
466
3.50k
        return {ColumnNullConstView::create(column_ptr), selector, count};
467
3.50k
    }
468
469
    template <typename NullFunc, typename NotNullFunc>
470
3.50k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
3.50k
        if (this->null_map != nullptr) {
472
3.26k
            const auto& null_map_data = *(this->null_map);
473
10.2k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
10.2k
                if (null_map_data[i]) {
475
2.16k
                    null_func(self_index, executor_index);
476
8.09k
                } else {
477
8.09k
                    not_null_func(self_index, executor_index);
478
8.09k
                }
479
10.2k
            };
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
4.37k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
4.37k
                if (null_map_data[i]) {
475
483
                    null_func(self_index, executor_index);
476
3.88k
                } else {
477
3.88k
                    not_null_func(self_index, executor_index);
478
3.88k
                }
479
4.37k
            };
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
4.91k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
4.91k
                if (null_map_data[i]) {
475
1.56k
                    null_func(self_index, executor_index);
476
3.35k
                } else {
477
3.35k
                    not_null_func(self_index, executor_index);
478
3.35k
                }
479
4.91k
            };
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
965
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
965
                if (null_map_data[i]) {
475
116
                    null_func(self_index, executor_index);
476
849
                } else {
477
849
                    not_null_func(self_index, executor_index);
478
849
                }
479
965
            };
480
3.26k
            if (is_const) {
481
321
                for_each_with_selector<true>(update);
482
2.94k
            } else {
483
2.94k
                for_each_with_selector<false>(update);
484
2.94k
            }
485
3.26k
        } else {
486
            // non-nullable condition column
487
623
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
623
                not_null_func(self_index, executor_index);
489
623
            };
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
623
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
623
                not_null_func(self_index, executor_index);
489
623
            };
490
231
            if (is_const) {
491
228
                for_each_with_selector<true>(update);
492
228
            } else {
493
3
                for_each_with_selector<false>(update);
494
3
            }
495
231
        }
496
3.50k
    }
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
2.04k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
2.04k
        if (this->null_map != nullptr) {
472
2.04k
            const auto& null_map_data = *(this->null_map);
473
2.04k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
2.04k
                if (null_map_data[i]) {
475
2.04k
                    null_func(self_index, executor_index);
476
2.04k
                } else {
477
2.04k
                    not_null_func(self_index, executor_index);
478
2.04k
                }
479
2.04k
            };
480
2.04k
            if (is_const) {
481
262
                for_each_with_selector<true>(update);
482
1.78k
            } else {
483
1.78k
                for_each_with_selector<false>(update);
484
1.78k
            }
485
2.04k
        } 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
2.04k
    }
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
1.03k
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
1.03k
        if (this->null_map != nullptr) {
472
1.03k
            const auto& null_map_data = *(this->null_map);
473
1.03k
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
1.03k
                if (null_map_data[i]) {
475
1.03k
                    null_func(self_index, executor_index);
476
1.03k
                } else {
477
1.03k
                    not_null_func(self_index, executor_index);
478
1.03k
                }
479
1.03k
            };
480
1.03k
            if (is_const) {
481
24
                for_each_with_selector<true>(update);
482
1.01k
            } else {
483
1.01k
                for_each_with_selector<false>(update);
484
1.01k
            }
485
1.03k
        } else {
486
            // non-nullable condition column
487
0
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
0
                not_null_func(self_index, executor_index);
489
0
            };
490
0
            if (is_const) {
491
0
                for_each_with_selector<true>(update);
492
0
            } else {
493
0
                for_each_with_selector<false>(update);
494
0
            }
495
0
        }
496
1.03k
    }
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
420
    void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const {
471
420
        if (this->null_map != nullptr) {
472
189
            const auto& null_map_data = *(this->null_map);
473
189
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
474
189
                if (null_map_data[i]) {
475
189
                    null_func(self_index, executor_index);
476
189
                } else {
477
189
                    not_null_func(self_index, executor_index);
478
189
                }
479
189
            };
480
189
            if (is_const) {
481
35
                for_each_with_selector<true>(update);
482
154
            } else {
483
154
                for_each_with_selector<false>(update);
484
154
            }
485
231
        } else {
486
            // non-nullable condition column
487
231
            auto update = [&](size_t i, size_t self_index, size_t executor_index) {
488
231
                not_null_func(self_index, executor_index);
489
231
            };
490
231
            if (is_const) {
491
228
                for_each_with_selector<true>(update);
492
228
            } else {
493
3
                for_each_with_selector<false>(update);
494
3
            }
495
231
        }
496
420
    }
497
};
498
499
} // namespace doris