be/src/exprs/short_circuit_util.h
Line | Count | Source |
1 | | // Licensed to the Apache Software Foundation (ASF) under one |
2 | | // or more contributor license agreements. See the NOTICE file |
3 | | // distributed with this work for additional information |
4 | | // regarding copyright ownership. The ASF licenses this file |
5 | | // to you under the Apache License, Version 2.0 (the |
6 | | // "License"); you may not use this file except in compliance |
7 | | // with the License. You may obtain a copy of the License at |
8 | | // |
9 | | // http://www.apache.org/licenses/LICENSE-2.0 |
10 | | // |
11 | | // Unless required by applicable law or agreed to in writing, |
12 | | // software distributed under the License is distributed on an |
13 | | // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
14 | | // KIND, either express or implied. See the License for the |
15 | | // specific language governing permissions and limitations |
16 | | // under the License. |
17 | | |
18 | | #pragma once |
19 | | #include "core/block/column_with_type_and_name.h" |
20 | | #include "core/column/column.h" |
21 | | #include "core/column/column_const.h" |
22 | | #include "core/column/column_nullable.h" |
23 | | #include "core/column/column_vector.h" |
24 | | #include "core/field.h" |
25 | | #include "exprs/vexpr.h" |
26 | | |
27 | | namespace doris { |
28 | | |
29 | | // Used to store a column along with its null_map and whether it is a const column. |
30 | | // If the input column is not nullable, then null_map will be nullptr. |
31 | | struct ColumnNullConstView { |
32 | | const IColumn& column; |
33 | | const NullMap* null_map; |
34 | | const bool is_const; |
35 | | |
36 | 3.64k | static ColumnNullConstView create(const ColumnPtr& column_ptr) { |
37 | 3.64k | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); |
38 | | |
39 | 3.64k | if (const auto* nullable_column = |
40 | 3.64k | check_and_get_column<ColumnNullable>(from_data_column.get())) { |
41 | 1.48k | return ColumnNullConstView {.column = nullable_column->get_nested_column(), |
42 | 1.48k | .null_map = &nullable_column->get_null_map_data(), |
43 | 1.48k | .is_const = is_const}; |
44 | 2.15k | } else { |
45 | 2.15k | return ColumnNullConstView { |
46 | 2.15k | .column = *from_data_column, .null_map = nullptr, .is_const = is_const}; |
47 | 2.15k | } |
48 | 3.64k | } |
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 | 30.0k | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { |
62 | 30.0k | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); |
63 | 30.0k | const NullMap* null_map = nullptr; |
64 | 30.0k | const ArrayType* data = nullptr; |
65 | 30.0k | if (const auto* nullable_column = |
66 | 30.0k | check_and_get_column<ColumnNullable>(from_data_column.get())) { |
67 | 6.54k | null_map = &nullable_column->get_null_map_data(); |
68 | 6.54k | const auto& nested_from_column = nullable_column->get_nested_column(); |
69 | 6.54k | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); |
70 | 23.5k | } else { |
71 | 23.5k | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); |
72 | 23.5k | } |
73 | | |
74 | 30.0k | return ColumnNullConstViewScalar { |
75 | 30.0k | .data = *data, .null_map = null_map, .is_const = is_const}; |
76 | 30.0k | } _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 12.4k | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 12.4k | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 12.4k | const NullMap* null_map = nullptr; | 64 | 12.4k | const ArrayType* data = nullptr; | 65 | 12.4k | if (const auto* nullable_column = | 66 | 12.4k | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 4.84k | null_map = &nullable_column->get_null_map_data(); | 68 | 4.84k | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 4.84k | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 7.58k | } else { | 71 | 7.58k | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 7.58k | } | 73 | | | 74 | 12.4k | return ColumnNullConstViewScalar { | 75 | 12.4k | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 12.4k | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 15.2k | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 15.2k | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 15.2k | const NullMap* null_map = nullptr; | 64 | 15.2k | const ArrayType* data = nullptr; | 65 | 15.2k | if (const auto* nullable_column = | 66 | 15.2k | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 72 | null_map = &nullable_column->get_null_map_data(); | 68 | 72 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 72 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 15.1k | } else { | 71 | 15.1k | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 15.1k | } | 73 | | | 74 | 15.2k | return ColumnNullConstViewScalar { | 75 | 15.2k | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 15.2k | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 20 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 20 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 20 | const NullMap* null_map = nullptr; | 64 | 20 | const ArrayType* data = nullptr; | 65 | 20 | if (const auto* nullable_column = | 66 | 20 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 18 | null_map = &nullable_column->get_null_map_data(); | 68 | 18 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 18 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 18 | } else { | 71 | 2 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 2 | } | 73 | | | 74 | 20 | return ColumnNullConstViewScalar { | 75 | 20 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 20 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 1.55k | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 1.55k | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 1.55k | const NullMap* null_map = nullptr; | 64 | 1.55k | const ArrayType* data = nullptr; | 65 | 1.55k | if (const auto* nullable_column = | 66 | 1.55k | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 1.16k | null_map = &nullable_column->get_null_map_data(); | 68 | 1.16k | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 1.16k | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 1.16k | } else { | 71 | 387 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 387 | } | 73 | | | 74 | 1.55k | return ColumnNullConstViewScalar { | 75 | 1.55k | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 1.55k | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 255 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 255 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 255 | const NullMap* null_map = nullptr; | 64 | 255 | const ArrayType* data = nullptr; | 65 | 255 | if (const auto* nullable_column = | 66 | 255 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 113 | null_map = &nullable_column->get_null_map_data(); | 68 | 113 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 113 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 142 | } else { | 71 | 142 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 142 | } | 73 | | | 74 | 255 | return ColumnNullConstViewScalar { | 75 | 255 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 255 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 2 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 2 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 2 | const NullMap* null_map = nullptr; | 64 | 2 | const ArrayType* data = nullptr; | 65 | 2 | if (const auto* nullable_column = | 66 | 2 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 0 | null_map = &nullable_column->get_null_map_data(); | 68 | 0 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 0 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 2 | } else { | 71 | 2 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 2 | } | 73 | | | 74 | 2 | return ColumnNullConstViewScalar { | 75 | 2 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 2 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 14 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 14 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 14 | const NullMap* null_map = nullptr; | 64 | 14 | const ArrayType* data = nullptr; | 65 | 14 | if (const auto* nullable_column = | 66 | 14 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 12 | null_map = &nullable_column->get_null_map_data(); | 68 | 12 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 12 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 12 | } else { | 71 | 2 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 2 | } | 73 | | | 74 | 14 | return ColumnNullConstViewScalar { | 75 | 14 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 14 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 61 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 61 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 61 | const NullMap* null_map = nullptr; | 64 | 61 | const ArrayType* data = nullptr; | 65 | 61 | if (const auto* nullable_column = | 66 | 61 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 50 | null_map = &nullable_column->get_null_map_data(); | 68 | 50 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 50 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 50 | } else { | 71 | 11 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 11 | } | 73 | | | 74 | 61 | return ColumnNullConstViewScalar { | 75 | 61 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 61 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 20 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 20 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 20 | const NullMap* null_map = nullptr; | 64 | 20 | const ArrayType* data = nullptr; | 65 | 20 | if (const auto* nullable_column = | 66 | 20 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 20 | null_map = &nullable_column->get_null_map_data(); | 68 | 20 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 20 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 20 | } else { | 71 | 0 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 0 | } | 73 | | | 74 | 20 | return ColumnNullConstViewScalar { | 75 | 20 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 20 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 47 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 47 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 47 | const NullMap* null_map = nullptr; | 64 | 47 | const ArrayType* data = nullptr; | 65 | 47 | if (const auto* nullable_column = | 66 | 47 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 36 | null_map = &nullable_column->get_null_map_data(); | 68 | 36 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 36 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 36 | } else { | 71 | 11 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 11 | } | 73 | | | 74 | 47 | return ColumnNullConstViewScalar { | 75 | 47 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 47 | } |
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 206 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 206 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 206 | const NullMap* null_map = nullptr; | 64 | 206 | const ArrayType* data = nullptr; | 65 | 206 | if (const auto* nullable_column = | 66 | 206 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 104 | null_map = &nullable_column->get_null_map_data(); | 68 | 104 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 104 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 104 | } else { | 71 | 102 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 102 | } | 73 | | | 74 | 206 | return ColumnNullConstViewScalar { | 75 | 206 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 206 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 11 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 11 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 11 | const NullMap* null_map = nullptr; | 64 | 11 | const ArrayType* data = nullptr; | 65 | 11 | if (const auto* nullable_column = | 66 | 11 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 11 | null_map = &nullable_column->get_null_map_data(); | 68 | 11 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 11 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 11 | } else { | 71 | 0 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 0 | } | 73 | | | 74 | 11 | return ColumnNullConstViewScalar { | 75 | 11 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 11 | } |
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 112 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 112 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 112 | const NullMap* null_map = nullptr; | 64 | 112 | const ArrayType* data = nullptr; | 65 | 112 | if (const auto* nullable_column = | 66 | 112 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 43 | null_map = &nullable_column->get_null_map_data(); | 68 | 43 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 43 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 69 | } else { | 71 | 69 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 69 | } | 73 | | | 74 | 112 | return ColumnNullConstViewScalar { | 75 | 112 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 112 | } |
_ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Line | Count | Source | 61 | 52 | static ColumnNullConstViewScalar create(const ColumnPtr& column_ptr) { | 62 | 52 | const auto& [from_data_column, is_const] = unpack_if_const(column_ptr); | 63 | 52 | const NullMap* null_map = nullptr; | 64 | 52 | const ArrayType* data = nullptr; | 65 | 52 | if (const auto* nullable_column = | 66 | 52 | check_and_get_column<ColumnNullable>(from_data_column.get())) { | 67 | 45 | null_map = &nullable_column->get_null_map_data(); | 68 | 45 | const auto& nested_from_column = nullable_column->get_nested_column(); | 69 | 45 | data = &(assert_cast<const ColumnType&>(nested_from_column).get_data()); | 70 | 45 | } else { | 71 | 7 | data = &(assert_cast<const ColumnType&>(*from_data_column).get_data()); | 72 | 7 | } | 73 | | | 74 | 52 | return ColumnNullConstViewScalar { | 75 | 52 | .data = *data, .null_map = null_map, .is_const = is_const}; | 76 | 52 | } |
Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris25ColumnNullConstViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE |
77 | | }; |
78 | | |
79 | | // Used to store a mutable column along with its null_map. |
80 | | // If the input column is not nullable, then null_map will be nullptr. |
81 | | struct MutableColumnNullView { |
82 | | IColumn& column; |
83 | | NullMap* null_map; |
84 | 1.00k | static MutableColumnNullView create(const MutableColumnPtr& column_ptr) { |
85 | 1.00k | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { |
86 | 734 | return MutableColumnNullView {.column = nullable_column->get_nested_column(), |
87 | 734 | .null_map = &nullable_column->get_null_map_data()}; |
88 | 734 | } else { |
89 | 269 | return MutableColumnNullView {.column = *column_ptr, .null_map = nullptr}; |
90 | 269 | } |
91 | 1.00k | } |
92 | | |
93 | 3.27k | void insert_from(const ColumnNullConstView& from, size_t i) { |
94 | 3.27k | auto index = index_check_const(i, from.is_const); |
95 | 3.27k | column.insert_from(from.column, index); |
96 | 3.27k | if (null_map != nullptr && from.null_map != nullptr) { |
97 | 1.35k | null_map->push_back((*from.null_map)[index]); |
98 | 1.91k | } else if (null_map != nullptr) { |
99 | | // from is not nullable, so insert 0 |
100 | 1.19k | null_map->push_back(0); |
101 | 1.19k | } |
102 | 3.27k | } |
103 | | |
104 | 37 | void insert_null() { |
105 | 37 | 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 | 37 | column.insert_default(); |
111 | 37 | null_map->push_back(1); |
112 | 37 | } |
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 | 7.56k | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { |
124 | 7.56k | ColumnType* data_column = nullptr; |
125 | 7.56k | NullMap* null_map = nullptr; |
126 | 7.56k | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { |
127 | 853 | null_map = &nullable_column->get_null_map_data(); |
128 | 853 | auto& nested_column = nullable_column->get_nested_column(); |
129 | 853 | data_column = &(assert_cast<ColumnType&>(nested_column)); |
130 | 6.71k | } else { |
131 | 6.71k | data_column = assert_cast<ColumnType*>(column_ptr.get()); |
132 | 6.71k | } |
133 | | |
134 | 7.56k | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; |
135 | 7.56k | } _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 99 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 99 | ColumnType* data_column = nullptr; | 125 | 99 | NullMap* null_map = nullptr; | 126 | 99 | 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 | 97 | } else { | 131 | 97 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 97 | } | 133 | | | 134 | 99 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 99 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 6.24k | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 6.24k | ColumnType* data_column = nullptr; | 125 | 6.24k | NullMap* null_map = nullptr; | 126 | 6.24k | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 33 | null_map = &nullable_column->get_null_map_data(); | 128 | 33 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 33 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 6.20k | } else { | 131 | 6.20k | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 6.20k | } | 133 | | | 134 | 6.24k | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 6.24k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 17 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 17 | ColumnType* data_column = nullptr; | 125 | 17 | NullMap* null_map = nullptr; | 126 | 17 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 15 | null_map = &nullable_column->get_null_map_data(); | 128 | 15 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 15 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 15 | } else { | 131 | 2 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 2 | } | 133 | | | 134 | 17 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 17 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 785 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 785 | ColumnType* data_column = nullptr; | 125 | 785 | NullMap* null_map = nullptr; | 126 | 785 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 572 | null_map = &nullable_column->get_null_map_data(); | 128 | 572 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 572 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 572 | } else { | 131 | 213 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 213 | } | 133 | | | 134 | 785 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 785 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 133 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 133 | ColumnType* data_column = nullptr; | 125 | 133 | NullMap* null_map = nullptr; | 126 | 133 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 42 | null_map = &nullable_column->get_null_map_data(); | 128 | 42 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 42 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 91 | } else { | 131 | 91 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 91 | } | 133 | | | 134 | 133 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 133 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 2 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 2 | ColumnType* data_column = nullptr; | 125 | 2 | NullMap* null_map = nullptr; | 126 | 2 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 0 | null_map = &nullable_column->get_null_map_data(); | 128 | 0 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 0 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 2 | } else { | 131 | 2 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 2 | } | 133 | | | 134 | 2 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 2 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 12 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 12 | ColumnType* data_column = nullptr; | 125 | 12 | NullMap* null_map = nullptr; | 126 | 12 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 10 | null_map = &nullable_column->get_null_map_data(); | 128 | 10 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 10 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 10 | } else { | 131 | 2 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 2 | } | 133 | | | 134 | 12 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 12 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 37 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 37 | ColumnType* data_column = nullptr; | 125 | 37 | NullMap* null_map = nullptr; | 126 | 37 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 30 | null_map = &nullable_column->get_null_map_data(); | 128 | 30 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 30 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 30 | } else { | 131 | 7 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 7 | } | 133 | | | 134 | 37 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 37 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 14 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 14 | ColumnType* data_column = nullptr; | 125 | 14 | NullMap* null_map = nullptr; | 126 | 14 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 14 | null_map = &nullable_column->get_null_map_data(); | 128 | 14 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 14 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 14 | } else { | 131 | 0 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 0 | } | 133 | | | 134 | 14 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 14 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 24 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 24 | ColumnType* data_column = nullptr; | 125 | 24 | NullMap* null_map = nullptr; | 126 | 24 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 15 | null_map = &nullable_column->get_null_map_data(); | 128 | 15 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 15 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 15 | } else { | 131 | 9 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 9 | } | 133 | | | 134 | 24 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 24 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 106 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 106 | ColumnType* data_column = nullptr; | 125 | 106 | NullMap* null_map = nullptr; | 126 | 106 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 71 | null_map = &nullable_column->get_null_map_data(); | 128 | 71 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 71 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 71 | } else { | 131 | 35 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 35 | } | 133 | | | 134 | 106 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 106 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 6 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 6 | ColumnType* data_column = nullptr; | 125 | 6 | NullMap* null_map = nullptr; | 126 | 6 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 6 | null_map = &nullable_column->get_null_map_data(); | 128 | 6 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 6 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 6 | } else { | 131 | 0 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 0 | } | 133 | | | 134 | 6 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 6 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 60 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 60 | ColumnType* data_column = nullptr; | 125 | 60 | NullMap* null_map = nullptr; | 126 | 60 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 22 | null_map = &nullable_column->get_null_map_data(); | 128 | 22 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 22 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 38 | } else { | 131 | 38 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 38 | } | 133 | | | 134 | 60 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 60 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Line | Count | Source | 123 | 34 | static MutableColumnNullViewScalar create(const MutableColumnPtr& column_ptr) { | 124 | 34 | ColumnType* data_column = nullptr; | 125 | 34 | NullMap* null_map = nullptr; | 126 | 34 | if (auto* nullable_column = check_and_get_column<ColumnNullable>(column_ptr.get())) { | 127 | 21 | null_map = &nullable_column->get_null_map_data(); | 128 | 21 | auto& nested_column = nullable_column->get_nested_column(); | 129 | 21 | data_column = &(assert_cast<ColumnType&>(nested_column)); | 130 | 21 | } else { | 131 | 13 | data_column = assert_cast<ColumnType*>(column_ptr.get()); | 132 | 13 | } | 133 | | | 134 | 34 | return MutableColumnNullViewScalar {.data = data_column->get_data(), .null_map = null_map}; | 135 | 34 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE6createERKNS_3COWINS_7IColumnEE11mutable_ptrIS4_EE |
136 | | |
137 | 17.8k | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { |
138 | 17.8k | auto& result_data = data; |
139 | 17.8k | const auto& from_data = from.data; |
140 | | |
141 | 17.8k | auto* result_null_map_data = null_map; |
142 | 17.8k | const auto* from_null_map_data = from.null_map; |
143 | | |
144 | 17.8k | if (from.is_const) { |
145 | 6.54k | insert_into_result<true>(result_data, from_data, result_null_map_data, |
146 | 6.54k | from_null_map_data, selector); |
147 | 11.2k | } else { |
148 | 11.2k | insert_into_result<false>(result_data, from_data, result_null_map_data, |
149 | 11.2k | from_null_map_data, selector); |
150 | 11.2k | } |
151 | 17.8k | } _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_2EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 196 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 196 | auto& result_data = data; | 139 | 196 | const auto& from_data = from.data; | 140 | | | 141 | 196 | auto* result_null_map_data = null_map; | 142 | 196 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 196 | 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 | 192 | } else { | 148 | 192 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 192 | from_null_map_data, selector); | 150 | 192 | } | 151 | 196 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_3EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 15.2k | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 15.2k | auto& result_data = data; | 139 | 15.2k | const auto& from_data = from.data; | 140 | | | 141 | 15.2k | auto* result_null_map_data = null_map; | 142 | 15.2k | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 15.2k | if (from.is_const) { | 145 | 5.89k | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 5.89k | from_null_map_data, selector); | 147 | 9.37k | } else { | 148 | 9.37k | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 9.37k | from_null_map_data, selector); | 150 | 9.37k | } | 151 | 15.2k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_4EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 20 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 20 | auto& result_data = data; | 139 | 20 | const auto& from_data = from.data; | 140 | | | 141 | 20 | auto* result_null_map_data = null_map; | 142 | 20 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 20 | if (from.is_const) { | 145 | 3 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 3 | from_null_map_data, selector); | 147 | 17 | } else { | 148 | 17 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 17 | from_null_map_data, selector); | 150 | 17 | } | 151 | 20 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_5EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 1.55k | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 1.55k | auto& result_data = data; | 139 | 1.55k | const auto& from_data = from.data; | 140 | | | 141 | 1.55k | auto* result_null_map_data = null_map; | 142 | 1.55k | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 1.55k | if (from.is_const) { | 145 | 483 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 483 | from_null_map_data, selector); | 147 | 1.06k | } else { | 148 | 1.06k | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 1.06k | from_null_map_data, selector); | 150 | 1.06k | } | 151 | 1.55k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_6EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 255 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 255 | auto& result_data = data; | 139 | 255 | const auto& from_data = from.data; | 140 | | | 141 | 255 | auto* result_null_map_data = null_map; | 142 | 255 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 255 | if (from.is_const) { | 145 | 46 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 46 | from_null_map_data, selector); | 147 | 209 | } else { | 148 | 209 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 209 | from_null_map_data, selector); | 150 | 209 | } | 151 | 255 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_7EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 2 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 2 | auto& result_data = data; | 139 | 2 | const auto& from_data = from.data; | 140 | | | 141 | 2 | auto* result_null_map_data = null_map; | 142 | 2 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 2 | if (from.is_const) { | 145 | 2 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 2 | from_null_map_data, selector); | 147 | 2 | } else { | 148 | 0 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 0 | from_null_map_data, selector); | 150 | 0 | } | 151 | 2 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_8EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 14 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 14 | auto& result_data = data; | 139 | 14 | const auto& from_data = from.data; | 140 | | | 141 | 14 | auto* result_null_map_data = null_map; | 142 | 14 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 14 | if (from.is_const) { | 145 | 3 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 3 | from_null_map_data, selector); | 147 | 11 | } else { | 148 | 11 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 11 | from_null_map_data, selector); | 150 | 11 | } | 151 | 14 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_9EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 61 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 61 | auto& result_data = data; | 139 | 61 | const auto& from_data = from.data; | 140 | | | 141 | 61 | auto* result_null_map_data = null_map; | 142 | 61 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 61 | if (from.is_const) { | 145 | 12 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 12 | from_null_map_data, selector); | 147 | 49 | } else { | 148 | 49 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 49 | from_null_map_data, selector); | 150 | 49 | } | 151 | 61 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_28EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 20 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 20 | auto& result_data = data; | 139 | 20 | const auto& from_data = from.data; | 140 | | | 141 | 20 | auto* result_null_map_data = null_map; | 142 | 20 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 20 | if (from.is_const) { | 145 | 1 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 1 | from_null_map_data, selector); | 147 | 19 | } else { | 148 | 19 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 19 | from_null_map_data, selector); | 150 | 19 | } | 151 | 20 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_29EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 47 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 47 | auto& result_data = data; | 139 | 47 | const auto& from_data = from.data; | 140 | | | 141 | 47 | auto* result_null_map_data = null_map; | 142 | 47 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 47 | if (from.is_const) { | 145 | 9 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 9 | from_null_map_data, selector); | 147 | 38 | } else { | 148 | 38 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 38 | from_null_map_data, selector); | 150 | 38 | } | 151 | 47 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE20EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_20EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_30EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 206 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 206 | auto& result_data = data; | 139 | 206 | const auto& from_data = from.data; | 140 | | | 141 | 206 | auto* result_null_map_data = null_map; | 142 | 206 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 206 | if (from.is_const) { | 145 | 72 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 72 | from_null_map_data, selector); | 147 | 134 | } else { | 148 | 134 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 134 | from_null_map_data, selector); | 150 | 134 | } | 151 | 206 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_35EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 11 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 11 | auto& result_data = data; | 139 | 11 | const auto& from_data = from.data; | 140 | | | 141 | 11 | auto* result_null_map_data = null_map; | 142 | 11 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 11 | if (from.is_const) { | 145 | 0 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 0 | from_null_map_data, selector); | 147 | 11 | } else { | 148 | 11 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 11 | from_null_map_data, selector); | 150 | 11 | } | 151 | 11 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_11EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_25EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 112 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 112 | auto& result_data = data; | 139 | 112 | const auto& from_data = from.data; | 140 | | | 141 | 112 | auto* result_null_map_data = null_map; | 142 | 112 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 112 | if (from.is_const) { | 145 | 13 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 13 | from_null_map_data, selector); | 147 | 99 | } else { | 148 | 99 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 99 | from_null_map_data, selector); | 150 | 99 | } | 151 | 112 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_26EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 137 | 52 | void insert_from(const ColumnNullConstViewScalar<PType>& from, const Selector& selector) { | 138 | 52 | auto& result_data = data; | 139 | 52 | const auto& from_data = from.data; | 140 | | | 141 | 52 | auto* result_null_map_data = null_map; | 142 | 52 | const auto* from_null_map_data = from.null_map; | 143 | | | 144 | 52 | if (from.is_const) { | 145 | 7 | insert_into_result<true>(result_data, from_data, result_null_map_data, | 146 | 7 | from_null_map_data, selector); | 147 | 45 | } else { | 148 | 45 | insert_into_result<false>(result_data, from_data, result_null_map_data, | 149 | 45 | from_null_map_data, selector); | 150 | 45 | } | 151 | 52 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_12EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_27EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_42EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_36EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_fromERKNS_25ColumnNullConstViewScalarILS1_37EEERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE |
152 | | |
153 | | template <bool is_const> |
154 | | static void insert_into_result(ArrayType& result_data, const ArrayType& from_data, |
155 | | NullMap* result_null_map_data, const NullMap* from_null_map_data, |
156 | 17.8k | const Selector& selector) { |
157 | 17.8k | insert_with_selector<is_const>(result_data, from_data, selector); |
158 | 17.8k | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { |
159 | 1.40k | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); |
160 | 1.40k | } |
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 | 17.8k | } _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb1EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 4 | const Selector& selector) { | 157 | 4 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 4 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 2 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 2 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 4 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE18insert_into_resultILb0EEEvRNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PS8_PSA_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 192 | const Selector& selector) { | 157 | 192 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 192 | 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 | 192 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb1EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 5.89k | const Selector& selector) { | 157 | 5.89k | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 5.89k | 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 | 5.89k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE18insert_into_resultILb0EEEvRNS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 9.37k | const Selector& selector) { | 157 | 9.37k | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 9.37k | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 33 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 33 | } | 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 | 9.37k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb1EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 3 | const Selector& selector) { | 157 | 3 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 3 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 1 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 1 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 3 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE18insert_into_resultILb0EEEvRNS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 17 | const Selector& selector) { | 157 | 17 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 17 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 17 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 17 | } | 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 | 17 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb1EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 483 | const Selector& selector) { | 157 | 483 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 483 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 442 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 442 | } | 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 | 483 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE18insert_into_resultILb0EEEvRNS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 1.06k | const Selector& selector) { | 157 | 1.06k | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 1.06k | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 572 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 572 | } | 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.06k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb1EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 46 | const Selector& selector) { | 157 | 46 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 46 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 4 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 4 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 46 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE18insert_into_resultILb0EEEvRNS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 209 | const Selector& selector) { | 157 | 209 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 209 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 45 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 45 | } | 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 | 209 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb1EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 2 | const Selector& selector) { | 157 | 2 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 2 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 0 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 0 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 2 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE18insert_into_resultILb0EEEvRNS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb1EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 3 | const Selector& selector) { | 157 | 3 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 3 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 1 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 1 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 3 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE18insert_into_resultILb0EEEvRNS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 11 | const Selector& selector) { | 157 | 11 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 11 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 11 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 11 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 11 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb1EEEvRNS_8PODArrayIdLm4096ENS_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 | 3 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 3 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 12 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE18insert_into_resultILb0EEEvRNS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 156 | 49 | const Selector& selector) { | 157 | 49 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 49 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 42 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 42 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 49 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_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 | 19 | const Selector& selector) { | 157 | 19 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 19 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 19 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 19 | } | 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 | 19 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE Line | Count | Source | 156 | 9 | const Selector& selector) { | 157 | 9 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 9 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 7 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 7 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 9 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIlEEEERKS7_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSF_RKNSB_IjLm4096ESE_Lm16ELm15EEE Line | Count | Source | 156 | 38 | const Selector& selector) { | 157 | 38 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 38 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 20 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 20 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 38 | } |
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 | 72 | const Selector& selector) { | 157 | 72 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 72 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 25 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 25 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 72 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_12Decimal128V3EEERKS6_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSE_RKNSA_IjLm4096ESD_Lm16ELm15EEE Line | Count | Source | 156 | 134 | const Selector& selector) { | 157 | 134 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 134 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 77 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 77 | } | 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 | 134 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb1EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE18insert_into_resultILb0EEEvRNS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEERKSA_PNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEPKSI_RKNSE_IjLm4096ESH_Lm16ELm15EEE Line | Count | Source | 156 | 11 | const Selector& selector) { | 157 | 11 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 11 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 11 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 11 | } | 161 | | // Note: When from_null_map_data is nullptr (non-nullable source), | 162 | | // no action needed since result null_map is already initialized to 0 (non-null) | 163 | | // by init_result_column's resize_fill(count, 0) | 164 | 11 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 156 | 13 | const Selector& selector) { | 157 | 13 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 13 | 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 | 13 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 156 | 99 | const Selector& selector) { | 157 | 99 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 99 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 31 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 31 | } | 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 | 99 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 156 | 7 | const Selector& selector) { | 157 | 7 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 7 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 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 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKSB_PNS4_IhLm4096ESA_Lm16ELm15EEEPKSF_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 156 | 45 | const Selector& selector) { | 157 | 45 | insert_with_selector<is_const>(result_data, from_data, selector); | 158 | 45 | if (result_null_map_data != nullptr && from_null_map_data != nullptr) { | 159 | 33 | insert_with_selector<is_const>(*result_null_map_data, *from_null_map_data, selector); | 160 | 33 | } | 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 | 45 | } |
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 Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb1EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE18insert_into_resultILb0EEEvRNS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS9_PNS4_IhLm4096ES8_Lm16ELm15EEEPKSD_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb1EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_ Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE18insert_into_resultILb0EEEvRNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_SB_ Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb1EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE18insert_into_resultILb0EEEvRNS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKS8_PNS4_IhLm4096ES7_Lm16ELm15EEEPKSC_RKNS4_IjLm4096ES7_Lm16ELm15EEE |
165 | | |
166 | | template <bool is_const> |
167 | | static void insert_with_selector(auto& result_data, const auto& data, |
168 | 19.2k | const Selector& selector) { |
169 | 10.2M | for (size_t i = 0; i < selector.size(); ++i) { |
170 | 10.2M | auto index = selector[i]; |
171 | 10.2M | result_data[index] = data[index_check_const<is_const>(i)]; |
172 | 10.2M | } |
173 | 19.2k | } _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 6 | const Selector& selector) { | 169 | 14 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 8 | auto index = selector[i]; | 171 | 8 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 8 | } | 173 | 6 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 194 | const Selector& selector) { | 169 | 976 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 782 | auto index = selector[i]; | 171 | 782 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 782 | } | 173 | 194 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 5.89k | const Selector& selector) { | 169 | 10.1M | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 10.1M | auto index = selector[i]; | 171 | 10.1M | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 10.1M | } | 173 | 5.89k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 1 | const Selector& selector) { | 169 | 1 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 1 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 9.37k | const Selector& selector) { | 169 | 10.2k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 840 | auto index = selector[i]; | 171 | 840 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 840 | } | 173 | 9.37k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 33 | const Selector& selector) { | 169 | 84 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 51 | auto index = selector[i]; | 171 | 51 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 51 | } | 173 | 33 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 3 | const Selector& selector) { | 169 | 5 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 2 | auto index = selector[i]; | 171 | 2 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 2 | } | 173 | 3 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 1 | const Selector& selector) { | 169 | 1 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 1 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 17 | const Selector& selector) { | 169 | 62 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 45 | auto index = selector[i]; | 171 | 45 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 45 | } | 173 | 17 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 17 | const Selector& selector) { | 169 | 62 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 45 | auto index = selector[i]; | 171 | 45 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 45 | } | 173 | 17 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 483 | const Selector& selector) { | 169 | 2.07k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 1.58k | auto index = selector[i]; | 171 | 1.58k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 1.58k | } | 173 | 483 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 442 | const Selector& selector) { | 169 | 1.96k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 1.51k | auto index = selector[i]; | 171 | 1.51k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 1.51k | } | 173 | 442 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 1.06k | const Selector& selector) { | 169 | 2.43k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 1.36k | auto index = selector[i]; | 171 | 1.36k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 1.36k | } | 173 | 1.06k | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 572 | const Selector& selector) { | 169 | 926 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 354 | auto index = selector[i]; | 171 | 354 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 354 | } | 173 | 572 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 46 | const Selector& selector) { | 169 | 203 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 157 | auto index = selector[i]; | 171 | 157 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 157 | } | 173 | 46 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 4 | const Selector& selector) { | 169 | 4 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 4 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 209 | const Selector& selector) { | 169 | 772 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 563 | auto index = selector[i]; | 171 | 563 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 563 | } | 173 | 209 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 45 | const Selector& selector) { | 169 | 134 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 89 | auto index = selector[i]; | 171 | 89 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 89 | } | 173 | 45 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 2 | const Selector& selector) { | 169 | 4 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 2 | auto index = selector[i]; | 171 | 2 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 2 | } | 173 | 2 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE7EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 3 | const Selector& selector) { | 169 | 5 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 2 | auto index = selector[i]; | 171 | 2 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 2 | } | 173 | 3 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 1 | const Selector& selector) { | 169 | 1 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 1 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 11 | const Selector& selector) { | 169 | 41 | 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 | 11 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE8EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 11 | const Selector& selector) { | 169 | 41 | 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 | 11 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 12 | const Selector& selector) { | 169 | 24 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 12 | auto index = selector[i]; | 171 | 12 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 12 | } | 173 | 12 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 3 | const Selector& selector) { | 169 | 6 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 3 | auto index = selector[i]; | 171 | 3 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 3 | } | 173 | 3 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 49 | const Selector& selector) { | 169 | 8.12k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 8.07k | auto index = selector[i]; | 171 | 8.07k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 8.07k | } | 173 | 49 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE9EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 42 | const Selector& selector) { | 169 | 8.11k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 8.06k | auto index = selector[i]; | 171 | 8.06k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 8.06k | } | 173 | 42 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 168 | 1 | const Selector& selector) { | 169 | 1 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 1 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 1 | const Selector& selector) { | 169 | 1 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 1 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIiEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 168 | 19 | const Selector& selector) { | 169 | 55 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 36 | auto index = selector[i]; | 171 | 36 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 36 | } | 173 | 19 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE28EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 19 | const Selector& selector) { | 169 | 55 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 36 | auto index = selector[i]; | 171 | 36 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 36 | } | 173 | 19 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 168 | 9 | const Selector& selector) { | 169 | 23 | 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 | 9 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 7 | const Selector& selector) { | 169 | 18 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 11 | auto index = selector[i]; | 171 | 11 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 11 | } | 173 | 7 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIlEEEES7_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 168 | 38 | const Selector& selector) { | 169 | 93 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 55 | auto index = selector[i]; | 171 | 55 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 55 | } | 173 | 38 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE29EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 20 | const Selector& selector) { | 169 | 37 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 17 | auto index = selector[i]; | 171 | 17 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 17 | } | 173 | 20 | } |
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 | 72 | const Selector& selector) { | 169 | 7.07k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 7.00k | auto index = selector[i]; | 171 | 7.00k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 7.00k | } | 173 | 72 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 25 | const Selector& selector) { | 169 | 62 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 37 | auto index = selector[i]; | 171 | 37 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 37 | } | 173 | 25 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_12Decimal128V3EEES6_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 168 | 134 | const Selector& selector) { | 169 | 1.52k | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 1.38k | auto index = selector[i]; | 171 | 1.38k | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 1.38k | } | 173 | 134 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE30EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 77 | const Selector& selector) { | 169 | 210 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 133 | auto index = selector[i]; | 171 | 133 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 133 | } | 173 | 77 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_21DecimalPaddedPODArrayINS_7DecimalIN4wide7integerILm256EiEEEEEESA_EEvRT0_RKT1_RKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 168 | 11 | const Selector& selector) { | 169 | 21 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 10 | auto index = selector[i]; | 171 | 10 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 10 | } | 173 | 11 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE35EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 11 | const Selector& selector) { | 169 | 21 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 10 | auto index = selector[i]; | 171 | 10 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 10 | } | 173 | 11 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayINS_16VecDateTimeValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE11EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 168 | 13 | const Selector& selector) { | 169 | 35 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 22 | auto index = selector[i]; | 171 | 22 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 22 | } | 173 | 13 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 2 | const Selector& selector) { | 169 | 4 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 2 | auto index = selector[i]; | 171 | 2 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 2 | } | 173 | 2 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 168 | 99 | const Selector& selector) { | 169 | 230 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 131 | auto index = selector[i]; | 171 | 131 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 131 | } | 173 | 99 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE25EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 31 | const Selector& selector) { | 169 | 82 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 51 | auto index = selector[i]; | 171 | 51 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 51 | } | 173 | 31 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 168 | 7 | const Selector& selector) { | 169 | 17 | 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 | 7 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 1 | const Selector& selector) { | 169 | 1 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 0 | auto index = selector[i]; | 171 | 0 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 0 | } | 173 | 1 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESB_EEvRT0_RKT1_RKNS4_IjLm4096ESA_Lm16ELm15EEE Line | Count | Source | 168 | 45 | const Selector& selector) { | 169 | 128 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 83 | auto index = selector[i]; | 171 | 83 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 83 | } | 173 | 45 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE26EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Line | Count | Source | 168 | 33 | const Selector& selector) { | 169 | 106 | for (size_t i = 0; i < selector.size(); ++i) { | 170 | 73 | auto index = selector[i]; | 171 | 73 | result_data[index] = data[index_check_const<is_const>(i)]; | 172 | 73 | } | 173 | 33 | } |
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 Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayINS_16TimestampTzValueELm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES9_EEvRT0_RKT1_RKNS4_IjLm4096ES8_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_ Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKS8_ Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb1ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIoLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE20insert_with_selectorILb0ENS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEES8_EEvRT0_RKT1_RKNS4_IjLm4096ES7_Lm16ELm15EEE |
174 | | |
175 | 25 | void insert_null(const Selector& selector) { |
176 | 25 | if (selector.empty()) { |
177 | 1 | return; |
178 | 1 | } |
179 | 25 | DCHECK(null_map != nullptr) |
180 | 0 | << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr."; |
181 | | |
182 | 24 | auto& null_map_data = *null_map; |
183 | 51 | for (size_t i = 0; i < selector.size(); ++i) { |
184 | 27 | null_map_data[selector[i]] = 1; |
185 | 27 | } |
186 | 24 | } Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE2EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE3EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 175 | 2 | void insert_null(const Selector& selector) { | 176 | 2 | if (selector.empty()) { | 177 | 0 | return; | 178 | 0 | } | 179 | 2 | DCHECK(null_map != nullptr) | 180 | 0 | << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr."; | 181 | | | 182 | 2 | auto& null_map_data = *null_map; | 183 | 4 | for (size_t i = 0; i < selector.size(); ++i) { | 184 | 2 | null_map_data[selector[i]] = 1; | 185 | 2 | } | 186 | 2 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE4EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 175 | 3 | void insert_null(const Selector& selector) { | 176 | 3 | if (selector.empty()) { | 177 | 0 | return; | 178 | 0 | } | 179 | 3 | DCHECK(null_map != nullptr) | 180 | 0 | << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr."; | 181 | | | 182 | 3 | auto& null_map_data = *null_map; | 183 | 6 | for (size_t i = 0; i < selector.size(); ++i) { | 184 | 3 | null_map_data[selector[i]] = 1; | 185 | 3 | } | 186 | 3 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE5EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Line | Count | Source | 175 | 8 | void insert_null(const Selector& selector) { | 176 | 8 | if (selector.empty()) { | 177 | 1 | return; | 178 | 1 | } | 179 | 8 | DCHECK(null_map != nullptr) | 180 | 0 | << "Cannot insert null value into non-nullable column in ShortCircuitCoalesceExpr."; | 181 | | | 182 | 7 | auto& null_map_data = *null_map; | 183 | 17 | for (size_t i = 0; i < selector.size(); ++i) { | 184 | 10 | null_map_data[selector[i]] = 1; | 185 | 10 | } | 186 | 7 | } |
_ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE6EE11insert_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 | } |
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 | 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 | } |
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 | 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_13PrimitiveTypeE26EE11insert_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 | } |
Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE12EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE27EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE42EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE36EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE Unexecuted instantiation: _ZN5doris27MutableColumnNullViewScalarILNS_13PrimitiveTypeE37EE11insert_nullERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEE |
187 | | }; |
188 | | |
189 | | // Used to store a column and its corresponding selector. |
190 | | // It can be understood as: the positions selected by the selector in the result column correspond to the column inside. |
191 | | // column = filter_column_with_selector(result_column, selector) |
192 | | // What we need to do is fill these positions back into the result column (in a sense, it can be seen as restoring them). |
193 | | // If the column is empty, it means these positions are all null, e.g., the last parameter of coalesce is null, or the else branch of case when is not provided. |
194 | | struct ColumnAndSelector { |
195 | | ColumnPtr column = nullptr; |
196 | | Selector selector; // positions in result column |
197 | | |
198 | 6.37k | 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 | 5.73k | const Selector& false_selector, size_t count) { |
230 | 5.73k | DCHECK_EQ(false_selector.size() + true_selector.size(), count); |
231 | 5.73k | DCHECK_EQ(true_column->size(), true_selector.size()); |
232 | 5.73k | DCHECK_EQ(false_column->size(), false_selector.size()); |
233 | 5.73k | DCHECK_EQ(PType, result_type->get_primitive_type()); |
234 | | |
235 | 5.73k | auto result_column = result_type->create_column(); |
236 | | |
237 | 5.73k | MutableColumnNullViewScalar<PType> result_column_view = |
238 | 5.73k | MutableColumnNullViewScalar<PType>::create(result_column); |
239 | 5.73k | init_result_column(result_column_view, count); |
240 | | |
241 | 5.73k | ColumnNullConstViewScalar<PType> true_column_view = |
242 | 5.73k | ColumnNullConstViewScalar<PType>::create(true_column); |
243 | 5.73k | ColumnNullConstViewScalar<PType> false_column_view = |
244 | 5.73k | ColumnNullConstViewScalar<PType>::create(false_column); |
245 | | |
246 | 5.73k | result_column_view.insert_from(true_column_view, true_selector); |
247 | 5.73k | result_column_view.insert_from(false_column_view, false_selector); |
248 | 5.73k | DCHECK_EQ(result_column->size(), count); |
249 | 5.73k | return result_column; |
250 | 5.73k | } _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Line | Count | Source | 229 | 97 | const Selector& false_selector, size_t count) { | 230 | 97 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 97 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 97 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 97 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 97 | auto result_column = result_type->create_column(); | 236 | | | 237 | 97 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 97 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 97 | init_result_column(result_column_view, count); | 240 | | | 241 | 97 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 97 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 97 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 97 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 97 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 97 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 97 | return result_column; | 250 | 97 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Line | Count | Source | 229 | 4.58k | const Selector& false_selector, size_t count) { | 230 | 4.58k | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 4.58k | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 4.58k | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 4.58k | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 4.58k | auto result_column = result_type->create_column(); | 236 | | | 237 | 4.58k | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 4.58k | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 4.58k | init_result_column(result_column_view, count); | 240 | | | 241 | 4.58k | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 4.58k | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 4.58k | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 4.58k | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 4.58k | result_column_view.insert_from(true_column_view, true_selector); | 247 | 4.58k | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 4.58k | return result_column; | 250 | 4.58k | } |
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 | 741 | const Selector& false_selector, size_t count) { | 230 | 741 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 741 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 741 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 741 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 741 | auto result_column = result_type->create_column(); | 236 | | | 237 | 741 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 741 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 741 | init_result_column(result_column_view, count); | 240 | | | 241 | 741 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 741 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 741 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 741 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 741 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 741 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 741 | return result_column; | 250 | 741 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Line | Count | Source | 229 | 113 | const Selector& false_selector, size_t count) { | 230 | 113 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 113 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 113 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 113 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 113 | auto result_column = result_type->create_column(); | 236 | | | 237 | 113 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 113 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 113 | init_result_column(result_column_view, count); | 240 | | | 241 | 113 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 113 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 113 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 113 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 113 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 113 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 113 | return result_column; | 250 | 113 | } |
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 | 17 | const Selector& false_selector, size_t count) { | 230 | 17 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 17 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 17 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 17 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 17 | auto result_column = result_type->create_column(); | 236 | | | 237 | 17 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 17 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 17 | init_result_column(result_column_view, count); | 240 | | | 241 | 17 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 17 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 17 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 17 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 17 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 17 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 17 | return result_column; | 250 | 17 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Line | Count | Source | 229 | 4 | const Selector& false_selector, size_t count) { | 230 | 4 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 4 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 4 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 4 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 4 | auto result_column = result_type->create_column(); | 236 | | | 237 | 4 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 4 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 4 | init_result_column(result_column_view, count); | 240 | | | 241 | 4 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 4 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 4 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 4 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 4 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 4 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 4 | return result_column; | 250 | 4 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Line | Count | Source | 229 | 23 | const Selector& false_selector, size_t count) { | 230 | 23 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 23 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 23 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 23 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 23 | auto result_column = result_type->create_column(); | 236 | | | 237 | 23 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 23 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 23 | init_result_column(result_column_view, count); | 240 | | | 241 | 23 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 23 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 23 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 23 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 23 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 23 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 23 | return result_column; | 250 | 23 | } |
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 | 99 | const Selector& false_selector, size_t count) { | 230 | 99 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 99 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 99 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 99 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 99 | auto result_column = result_type->create_column(); | 236 | | | 237 | 99 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 99 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 99 | init_result_column(result_column_view, count); | 240 | | | 241 | 99 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 99 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 99 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 99 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 99 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 99 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 99 | return result_column; | 250 | 99 | } |
_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 | 44 | const Selector& false_selector, size_t count) { | 230 | 44 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 44 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 44 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 44 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 44 | auto result_column = result_type->create_column(); | 236 | | | 237 | 44 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 44 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 44 | init_result_column(result_column_view, count); | 240 | | | 241 | 44 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 44 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 44 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 44 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 44 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 44 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 44 | return result_column; | 250 | 44 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Line | Count | Source | 229 | 14 | const Selector& false_selector, size_t count) { | 230 | 14 | DCHECK_EQ(false_selector.size() + true_selector.size(), count); | 231 | 14 | DCHECK_EQ(true_column->size(), true_selector.size()); | 232 | 14 | DCHECK_EQ(false_column->size(), false_selector.size()); | 233 | 14 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 234 | | | 235 | 14 | auto result_column = result_type->create_column(); | 236 | | | 237 | 14 | MutableColumnNullViewScalar<PType> result_column_view = | 238 | 14 | MutableColumnNullViewScalar<PType>::create(result_column); | 239 | 14 | init_result_column(result_column_view, count); | 240 | | | 241 | 14 | ColumnNullConstViewScalar<PType> true_column_view = | 242 | 14 | ColumnNullConstViewScalar<PType>::create(true_column); | 243 | 14 | ColumnNullConstViewScalar<PType> false_column_view = | 244 | 14 | ColumnNullConstViewScalar<PType>::create(false_column); | 245 | | | 246 | 14 | result_column_view.insert_from(true_column_view, true_selector); | 247 | 14 | result_column_view.insert_from(false_column_view, false_selector); | 248 | | DCHECK_EQ(result_column->size(), count); | 249 | 14 | return result_column; | 250 | 14 | } |
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 Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKNS_3COWINS_7IColumnEE13immutable_ptrISA_EERKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEESF_SM_m |
251 | | |
252 | | static ColumnPtr fill(const DataTypePtr& result_type, |
253 | | const std::vector<ColumnAndSelector>& columns_and_selectors, |
254 | 1.83k | size_t count) { |
255 | 1.83k | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), |
256 | 1.83k | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { |
257 | 1.83k | return sum + cs.selector.size(); |
258 | 1.83k | })); |
259 | 1.83k | DCHECK_EQ(PType, result_type->get_primitive_type()); |
260 | 1.83k | auto result_column = result_type->create_column(); |
261 | | |
262 | 1.83k | MutableColumnNullViewScalar<PType> result_column_view = |
263 | 1.83k | MutableColumnNullViewScalar<PType>::create(result_column); |
264 | 1.83k | init_result_column(result_column_view, count); |
265 | | |
266 | 6.36k | for (const auto& columns_and_selector : columns_and_selectors) { |
267 | 6.36k | if (columns_and_selector.output_nulls()) { |
268 | 23 | result_column_view.insert_null(columns_and_selector.selector); |
269 | 6.34k | } else { |
270 | 6.34k | ColumnNullConstViewScalar<PType> from_column_view = |
271 | 6.34k | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); |
272 | 6.34k | result_column_view.insert_from(from_column_view, columns_and_selector.selector); |
273 | 6.34k | } |
274 | 6.36k | } |
275 | 1.83k | DCHECK_EQ(result_column->size(), count); |
276 | 1.83k | return result_column; |
277 | 1.83k | } _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 2 | size_t count) { | 255 | 2 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 2 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 2 | return sum + cs.selector.size(); | 258 | 2 | })); | 259 | 2 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 2 | auto result_column = result_type->create_column(); | 261 | | | 262 | 2 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 2 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 2 | init_result_column(result_column_view, count); | 265 | | | 266 | 2 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 2 | if (columns_and_selector.output_nulls()) { | 268 | 0 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 2 | } else { | 270 | 2 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 2 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 2 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 2 | } | 274 | 2 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 2 | return result_column; | 277 | 2 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 1.66k | size_t count) { | 255 | 1.66k | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 1.66k | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 1.66k | return sum + cs.selector.size(); | 258 | 1.66k | })); | 259 | 1.66k | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 1.66k | auto result_column = result_type->create_column(); | 261 | | | 262 | 1.66k | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 1.66k | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 1.66k | init_result_column(result_column_view, count); | 265 | | | 266 | 6.10k | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 6.10k | if (columns_and_selector.output_nulls()) { | 268 | 2 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 6.10k | } else { | 270 | 6.10k | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 6.10k | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 6.10k | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 6.10k | } | 274 | 6.10k | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 1.66k | return result_column; | 277 | 1.66k | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 17 | size_t count) { | 255 | 17 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 17 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 17 | return sum + cs.selector.size(); | 258 | 17 | })); | 259 | 17 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 17 | auto result_column = result_type->create_column(); | 261 | | | 262 | 17 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 17 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 17 | init_result_column(result_column_view, count); | 265 | | | 266 | 23 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 23 | if (columns_and_selector.output_nulls()) { | 268 | 3 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 20 | } else { | 270 | 20 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 20 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 20 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 20 | } | 274 | 23 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 17 | return result_column; | 277 | 17 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE4fillERKSt10shared_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 | 74 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 74 | if (columns_and_selector.output_nulls()) { | 268 | 6 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 68 | } else { | 270 | 68 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 68 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 68 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 68 | } | 274 | 74 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 40 | return result_column; | 277 | 40 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 20 | size_t count) { | 255 | 20 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 20 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 20 | return sum + cs.selector.size(); | 258 | 20 | })); | 259 | 20 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 20 | auto result_column = result_type->create_column(); | 261 | | | 262 | 20 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 20 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 20 | 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 | 20 | return result_column; | 277 | 20 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 2 | size_t count) { | 255 | 2 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 2 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 2 | return sum + cs.selector.size(); | 258 | 2 | })); | 259 | 2 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 2 | auto result_column = result_type->create_column(); | 261 | | | 262 | 2 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 2 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 2 | init_result_column(result_column_view, count); | 265 | | | 266 | 2 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 2 | if (columns_and_selector.output_nulls()) { | 268 | 0 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 2 | } else { | 270 | 2 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 2 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 2 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 2 | } | 274 | 2 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 2 | return result_column; | 277 | 2 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 12 | size_t count) { | 255 | 12 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 12 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 12 | return sum + cs.selector.size(); | 258 | 12 | })); | 259 | 12 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 12 | auto result_column = result_type->create_column(); | 261 | | | 262 | 12 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 12 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 12 | init_result_column(result_column_view, count); | 265 | | | 266 | 16 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 16 | if (columns_and_selector.output_nulls()) { | 268 | 2 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 14 | } else { | 270 | 14 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 14 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 14 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 14 | } | 274 | 16 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 12 | return result_column; | 277 | 12 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 20 | size_t count) { | 255 | 20 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 20 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 20 | return sum + cs.selector.size(); | 258 | 20 | })); | 259 | 20 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 20 | auto result_column = result_type->create_column(); | 261 | | | 262 | 20 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 20 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 20 | init_result_column(result_column_view, count); | 265 | | | 266 | 29 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 29 | if (columns_and_selector.output_nulls()) { | 268 | 2 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 27 | } else { | 270 | 27 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 27 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 27 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 27 | } | 274 | 29 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 20 | return result_column; | 277 | 20 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE4fillERKSt10shared_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_13PrimitiveTypeE29EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 1 | size_t count) { | 255 | 1 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 1 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 1 | return sum + cs.selector.size(); | 258 | 1 | })); | 259 | 1 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 1 | auto result_column = result_type->create_column(); | 261 | | | 262 | 1 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 1 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 1 | init_result_column(result_column_view, count); | 265 | | | 266 | 1 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 1 | if (columns_and_selector.output_nulls()) { | 268 | 0 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 1 | } else { | 270 | 1 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 1 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 1 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 1 | } | 274 | 1 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 1 | return result_column; | 277 | 1 | } |
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE4fillERKSt10shared_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 | 8 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 8 | if (columns_and_selector.output_nulls()) { | 268 | 0 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 8 | } else { | 270 | 8 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 8 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 8 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 8 | } | 274 | 8 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 7 | return result_column; | 277 | 7 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 4 | size_t count) { | 255 | 4 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 4 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 4 | return sum + cs.selector.size(); | 258 | 4 | })); | 259 | 4 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 4 | auto result_column = result_type->create_column(); | 261 | | | 262 | 4 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 4 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 4 | init_result_column(result_column_view, count); | 265 | | | 266 | 7 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 7 | if (columns_and_selector.output_nulls()) { | 268 | 0 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 7 | } else { | 270 | 7 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 7 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 7 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 7 | } | 274 | 7 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 4 | return result_column; | 277 | 4 | } |
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 16 | size_t count) { | 255 | 16 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 16 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 16 | return sum + cs.selector.size(); | 258 | 16 | })); | 259 | 16 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 16 | auto result_column = result_type->create_column(); | 261 | | | 262 | 16 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 16 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 16 | init_result_column(result_column_view, count); | 265 | | | 266 | 26 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 26 | if (columns_and_selector.output_nulls()) { | 268 | 2 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 24 | } else { | 270 | 24 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 24 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 24 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 24 | } | 274 | 26 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 16 | return result_column; | 277 | 16 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Line | Count | Source | 254 | 20 | size_t count) { | 255 | 20 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), | 256 | 20 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { | 257 | 20 | return sum + cs.selector.size(); | 258 | 20 | })); | 259 | 20 | DCHECK_EQ(PType, result_type->get_primitive_type()); | 260 | 20 | auto result_column = result_type->create_column(); | 261 | | | 262 | 20 | MutableColumnNullViewScalar<PType> result_column_view = | 263 | 20 | MutableColumnNullViewScalar<PType>::create(result_column); | 264 | 20 | init_result_column(result_column_view, count); | 265 | | | 266 | 26 | for (const auto& columns_and_selector : columns_and_selectors) { | 267 | 26 | if (columns_and_selector.output_nulls()) { | 268 | 2 | result_column_view.insert_null(columns_and_selector.selector); | 269 | 24 | } else { | 270 | 24 | ColumnNullConstViewScalar<PType> from_column_view = | 271 | 24 | ColumnNullConstViewScalar<PType>::create(columns_and_selector.column); | 272 | 24 | result_column_view.insert_from(from_column_view, columns_and_selector.selector); | 273 | 24 | } | 274 | 26 | } | 275 | | DCHECK_EQ(result_column->size(), count); | 276 | 20 | return result_column; | 277 | 20 | } |
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE4fillERKSt10shared_ptrIKNS_9IDataTypeEERKSt6vectorINS_17ColumnAndSelectorESaISA_EEm |
278 | | |
279 | | private: |
280 | | // if result_column is nullable,nullmap will all init to false |
281 | | static void init_result_column(MutableColumnNullViewScalar<PType>& result_column_view, |
282 | 7.56k | size_t count) { |
283 | 7.56k | result_column_view.data.resize(count); |
284 | 7.56k | if (result_column_view.null_map != nullptr) { |
285 | 851 | result_column_view.null_map->resize_fill(count, 0); |
286 | 851 | } |
287 | 7.56k | } _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE2EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_2EEEm Line | Count | Source | 282 | 99 | size_t count) { | 283 | 99 | result_column_view.data.resize(count); | 284 | 99 | if (result_column_view.null_map != nullptr) { | 285 | 2 | result_column_view.null_map->resize_fill(count, 0); | 286 | 2 | } | 287 | 99 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE3EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_3EEEm Line | Count | Source | 282 | 6.24k | size_t count) { | 283 | 6.24k | result_column_view.data.resize(count); | 284 | 6.24k | if (result_column_view.null_map != nullptr) { | 285 | 33 | result_column_view.null_map->resize_fill(count, 0); | 286 | 33 | } | 287 | 6.24k | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE4EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_4EEEm Line | Count | Source | 282 | 17 | size_t count) { | 283 | 17 | result_column_view.data.resize(count); | 284 | 17 | if (result_column_view.null_map != nullptr) { | 285 | 15 | result_column_view.null_map->resize_fill(count, 0); | 286 | 15 | } | 287 | 17 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE5EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_5EEEm Line | Count | Source | 282 | 781 | size_t count) { | 283 | 781 | result_column_view.data.resize(count); | 284 | 781 | if (result_column_view.null_map != nullptr) { | 285 | 570 | result_column_view.null_map->resize_fill(count, 0); | 286 | 570 | } | 287 | 781 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE6EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_6EEEm Line | Count | Source | 282 | 133 | size_t count) { | 283 | 133 | result_column_view.data.resize(count); | 284 | 133 | if (result_column_view.null_map != nullptr) { | 285 | 42 | result_column_view.null_map->resize_fill(count, 0); | 286 | 42 | } | 287 | 133 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE7EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_7EEEm Line | Count | Source | 282 | 2 | size_t count) { | 283 | 2 | result_column_view.data.resize(count); | 284 | 2 | if (result_column_view.null_map != nullptr) { | 285 | 0 | result_column_view.null_map->resize_fill(count, 0); | 286 | 0 | } | 287 | 2 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE8EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_8EEEm Line | Count | Source | 282 | 12 | size_t count) { | 283 | 12 | result_column_view.data.resize(count); | 284 | 12 | if (result_column_view.null_map != nullptr) { | 285 | 10 | result_column_view.null_map->resize_fill(count, 0); | 286 | 10 | } | 287 | 12 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE9EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_9EEEm Line | Count | Source | 282 | 37 | size_t count) { | 283 | 37 | result_column_view.data.resize(count); | 284 | 37 | if (result_column_view.null_map != nullptr) { | 285 | 30 | result_column_view.null_map->resize_fill(count, 0); | 286 | 30 | } | 287 | 37 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE28EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_28EEEm Line | Count | Source | 282 | 14 | size_t count) { | 283 | 14 | result_column_view.data.resize(count); | 284 | 14 | if (result_column_view.null_map != nullptr) { | 285 | 14 | result_column_view.null_map->resize_fill(count, 0); | 286 | 14 | } | 287 | 14 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE29EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_29EEEm Line | Count | Source | 282 | 24 | size_t count) { | 283 | 24 | result_column_view.data.resize(count); | 284 | 24 | if (result_column_view.null_map != nullptr) { | 285 | 15 | result_column_view.null_map->resize_fill(count, 0); | 286 | 15 | } | 287 | 24 | } |
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE20EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_20EEEm _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE30EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_30EEEm Line | Count | Source | 282 | 106 | size_t count) { | 283 | 106 | result_column_view.data.resize(count); | 284 | 106 | if (result_column_view.null_map != nullptr) { | 285 | 71 | result_column_view.null_map->resize_fill(count, 0); | 286 | 71 | } | 287 | 106 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE35EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_35EEEm Line | Count | Source | 282 | 6 | size_t count) { | 283 | 6 | result_column_view.data.resize(count); | 284 | 6 | if (result_column_view.null_map != nullptr) { | 285 | 6 | result_column_view.null_map->resize_fill(count, 0); | 286 | 6 | } | 287 | 6 | } |
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE11EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_11EEEm _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE25EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_25EEEm Line | Count | Source | 282 | 60 | size_t count) { | 283 | 60 | result_column_view.data.resize(count); | 284 | 60 | if (result_column_view.null_map != nullptr) { | 285 | 22 | result_column_view.null_map->resize_fill(count, 0); | 286 | 22 | } | 287 | 60 | } |
_ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE26EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_26EEEm Line | Count | Source | 282 | 34 | size_t count) { | 283 | 34 | result_column_view.data.resize(count); | 284 | 34 | if (result_column_view.null_map != nullptr) { | 285 | 21 | result_column_view.null_map->resize_fill(count, 0); | 286 | 21 | } | 287 | 34 | } |
Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE12EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_12EEEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE27EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_27EEEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE42EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_42EEEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE36EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_36EEEm Unexecuted instantiation: _ZN5doris22ScalarFillWithSelectorILNS_13PrimitiveTypeE37EE18init_result_columnERNS_27MutableColumnNullViewScalarILS1_37EEEm |
288 | | }; |
289 | | |
290 | | // Non-scalar version of fill. |
291 | | // For types that do not support random access, such as string, array, map, etc. |
292 | | struct NonScalarFillWithSelector { |
293 | | static ColumnPtr fill(const DataTypePtr& result_type, const ColumnPtr& true_column, |
294 | | const Selector& true_selector, const ColumnPtr& false_column, |
295 | 674 | const Selector& false_selector, size_t count) { |
296 | 674 | 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 | 674 | DCHECK_EQ(true_column->size(), true_selector.size()); |
301 | 674 | DCHECK_EQ(false_column->size(), false_selector.size()); |
302 | | |
303 | 674 | auto result_column = result_type->create_column(); |
304 | | |
305 | 674 | MutableColumnNullView result_column_view = MutableColumnNullView::create(result_column); |
306 | 674 | ColumnNullConstView true_column_view = ColumnNullConstView::create(true_column); |
307 | 674 | ColumnNullConstView false_column_view = ColumnNullConstView::create(false_column); |
308 | | |
309 | 674 | size_t true_index = 0; |
310 | 674 | size_t false_index = 0; |
311 | 2.41k | for (size_t i = 0; i < count; ++i) { |
312 | 1.74k | if (true_index < true_selector.size() && i == true_selector[true_index]) { |
313 | 298 | result_column_view.insert_from(true_column_view, true_index++); |
314 | 1.44k | } else { |
315 | 1.44k | result_column_view.insert_from(false_column_view, false_index++); |
316 | 1.44k | } |
317 | 1.74k | } |
318 | | |
319 | 674 | DCHECK_EQ(result_column->size(), count); |
320 | 674 | return result_column; |
321 | 674 | } |
322 | | |
323 | | static ColumnPtr fill(const DataTypePtr& result_type, |
324 | | const std::vector<ColumnAndSelector>& columns_and_selectors, |
325 | 324 | size_t count) { |
326 | 324 | DCHECK_EQ(count, std::accumulate(columns_and_selectors.begin(), columns_and_selectors.end(), |
327 | 324 | 0ULL, [](size_t sum, const ColumnAndSelector& cs) { |
328 | 324 | return sum + cs.selector.size(); |
329 | 324 | })); |
330 | 324 | struct FillColumnWithPos { |
331 | 324 | std::optional<ColumnNullConstView> source_column; |
332 | 324 | size_t pos_in_source; // position in the column |
333 | | |
334 | 1.55k | void insert_to_column(MutableColumnNullView& result_column) const { |
335 | 1.55k | if (!source_column) { |
336 | 35 | result_column.insert_null(); |
337 | 1.51k | } else { |
338 | 1.51k | result_column.insert_from(*source_column, pos_in_source); |
339 | 1.51k | } |
340 | 1.55k | } |
341 | 324 | }; |
342 | | |
343 | 324 | auto mutable_result_column = result_type->create_column(); |
344 | 324 | mutable_result_column->reserve(count); |
345 | | |
346 | 324 | MutableColumnNullView mutable_result_column_view = |
347 | 324 | MutableColumnNullView::create(mutable_result_column); |
348 | | |
349 | 324 | std::vector<FillColumnWithPos> fill_positions(count); |
350 | | |
351 | 1.13k | for (const ColumnAndSelector& column_with_selector : columns_and_selectors) { |
352 | 1.13k | if (column_with_selector.selector.empty()) { |
353 | 692 | continue; |
354 | 692 | } |
355 | 1.99k | for (size_t i = 0; i < column_with_selector.selector.size(); ++i) { |
356 | 1.55k | size_t result_index = column_with_selector.selector[i]; |
357 | 1.55k | DCHECK(fill_positions[result_index].source_column.has_value() == false) |
358 | 0 | << "Position " << result_index << " has been filled already."; |
359 | 1.55k | if (column_with_selector.column) { |
360 | 1.51k | ColumnNullConstView column_view = |
361 | 1.51k | ColumnNullConstView::create(column_with_selector.column); |
362 | 1.51k | fill_positions[result_index].source_column.emplace(column_view); |
363 | 1.51k | fill_positions[result_index].pos_in_source = i; |
364 | 1.51k | } else { |
365 | 35 | fill_positions[result_index].source_column = std::nullopt; |
366 | 35 | } |
367 | 1.55k | } |
368 | 443 | } |
369 | | |
370 | 1.55k | for (const FillColumnWithPos& fill_pos : fill_positions) { |
371 | 1.55k | fill_pos.insert_to_column(mutable_result_column_view); |
372 | 1.55k | } |
373 | | |
374 | 324 | DCHECK_EQ(mutable_result_column->size(), count); |
375 | 324 | return mutable_result_column; |
376 | 324 | } |
377 | | }; |
378 | | |
379 | | struct ConditionColumnViewHelper { |
380 | | ConditionColumnViewHelper(const Selector* selector, size_t count) |
381 | 13.0k | : _selector(selector), _count(count) {} |
382 | | |
383 | | // Iterate over the condition column and generate true_selector and false_selector |
384 | | // based on null_map and data. |
385 | | |
386 | | template <bool is_const, typename Func> |
387 | 12.9k | void for_each_with_selector(Func& f) const { |
388 | 12.9k | if (_selector != nullptr) { |
389 | 5.26k | const auto& selector_data = *_selector; |
390 | 11.4k | for (size_t i = 0; i < _count; ++i) { |
391 | 6.19k | f(index_check_const<is_const>(i), i, selector_data[i]); |
392 | 6.19k | } |
393 | 7.73k | } else { |
394 | 10.2M | for (size_t i = 0; i < _count; ++i) { |
395 | 10.2M | f(index_check_const<is_const>(i), i, i); |
396 | 10.2M | } |
397 | 7.73k | } |
398 | 12.9k | } short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_ Line | Count | Source | 387 | 23 | void for_each_with_selector(Func& f) const { | 388 | 23 | 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 | 23 | } else { | 394 | 52 | for (size_t i = 0; i < _count; ++i) { | 395 | 29 | f(index_check_const<is_const>(i), i, i); | 396 | 29 | } | 397 | 23 | } | 398 | 23 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_ Line | Count | Source | 387 | 2.32k | void for_each_with_selector(Func& f) const { | 388 | 2.32k | if (_selector != nullptr) { | 389 | 755 | const auto& selector_data = *_selector; | 390 | 1.53k | for (size_t i = 0; i < _count; ++i) { | 391 | 781 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 781 | } | 393 | 1.56k | } else { | 394 | 10.7k | for (size_t i = 0; i < _count; ++i) { | 395 | 9.13k | f(index_check_const<is_const>(i), i, i); | 396 | 9.13k | } | 397 | 1.56k | } | 398 | 2.32k | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_ Line | Count | Source | 387 | 739 | void for_each_with_selector(Func& f) const { | 388 | 739 | 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 | 739 | } else { | 394 | 7.81k | for (size_t i = 0; i < _count; ++i) { | 395 | 7.07k | f(index_check_const<is_const>(i), i, i); | 396 | 7.07k | } | 397 | 739 | } | 398 | 739 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_SI_E3$_0ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_1ZNS_19execute_if_selectorESA_SH_mSI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_ Line | Count | Source | 387 | 2.93k | void for_each_with_selector(Func& f) const { | 388 | 2.93k | if (_selector != nullptr) { | 389 | 34 | const auto& selector_data = *_selector; | 390 | 87 | for (size_t i = 0; i < _count; ++i) { | 391 | 53 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 53 | } | 393 | 2.90k | } 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 | 2.90k | } | 398 | 2.93k | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_ Line | Count | Source | 387 | 10 | void for_each_with_selector(Func& f) const { | 388 | 10 | 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 | 10 | } else { | 394 | 32 | for (size_t i = 0; i < _count; ++i) { | 395 | 22 | f(index_check_const<is_const>(i), i, i); | 396 | 22 | } | 397 | 10 | } | 398 | 10 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE_EEvSP_ Line | Count | Source | 387 | 109 | void for_each_with_selector(Func& f) const { | 388 | 109 | if (_selector != nullptr) { | 389 | 0 | const auto& selector_data = *_selector; | 390 | 0 | for (size_t i = 0; i < _count; ++i) { | 391 | 0 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 0 | } | 393 | 109 | } else { | 394 | 446 | for (size_t i = 0; i < _count; ++i) { | 395 | 337 | f(index_check_const<is_const>(i), i, i); | 396 | 337 | } | 397 | 109 | } | 398 | 109 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_ Line | Count | Source | 387 | 116 | void for_each_with_selector(Func& f) const { | 388 | 116 | 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 | 116 | } else { | 394 | 1.08k | for (size_t i = 0; i < _count; ++i) { | 395 | 967 | f(index_check_const<is_const>(i), i, i); | 396 | 967 | } | 397 | 116 | } | 398 | 116 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_2EEvRT_RT0_RT1_EUlmmmE0_EEvSP_ Line | Count | Source | 387 | 1.63k | void for_each_with_selector(Func& f) const { | 388 | 1.63k | if (_selector != nullptr) { | 389 | 8 | const auto& selector_data = *_selector; | 390 | 24 | for (size_t i = 0; i < _count; ++i) { | 391 | 16 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 16 | } | 393 | 1.62k | } else { | 394 | 3.30k | for (size_t i = 0; i < _count; ++i) { | 395 | 1.68k | f(index_check_const<is_const>(i), i, i); | 396 | 1.68k | } | 397 | 1.62k | } | 398 | 1.63k | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_ Line | Count | Source | 387 | 26 | void for_each_with_selector(Func& f) const { | 388 | 26 | if (_selector != nullptr) { | 389 | 26 | const auto& selector_data = *_selector; | 390 | 74 | for (size_t i = 0; i < _count; ++i) { | 391 | 48 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 48 | } | 393 | 26 | } 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 | 26 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE_EEvSP_ Line | Count | Source | 387 | 2.25k | void for_each_with_selector(Func& f) const { | 388 | 2.25k | if (_selector != nullptr) { | 389 | 2.25k | const auto& selector_data = *_selector; | 390 | 4.77k | for (size_t i = 0; i < _count; ++i) { | 391 | 2.51k | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 2.51k | } | 393 | 2.25k | } 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.25k | } |
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_ short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_3ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_4ZNS_21execute_case_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_5EEvRT_RT0_RT1_EUlmmmE0_EEvSP_ Line | Count | Source | 387 | 2.06k | void for_each_with_selector(Func& f) const { | 388 | 2.06k | if (_selector != nullptr) { | 389 | 2.06k | const auto& selector_data = *_selector; | 390 | 4.65k | for (size_t i = 0; i < _count; ++i) { | 391 | 2.59k | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 2.59k | } | 393 | 2.06k | } 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.06k | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_ Line | Count | Source | 387 | 2 | void for_each_with_selector(Func& f) const { | 388 | 2 | if (_selector != nullptr) { | 389 | 2 | const auto& selector_data = *_selector; | 390 | 4 | for (size_t i = 0; i < _count; ++i) { | 391 | 2 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 2 | } | 393 | 2 | } else { | 394 | 0 | for (size_t i = 0; i < _count; ++i) { | 395 | 0 | f(index_check_const<is_const>(i), i, i); | 396 | 0 | } | 397 | 0 | } | 398 | 2 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_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 | 380 | void for_each_with_selector(Func& f) const { | 388 | 380 | if (_selector != nullptr) { | 389 | 13 | const auto& selector_data = *_selector; | 390 | 33 | for (size_t i = 0; i < _count; ++i) { | 391 | 20 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 20 | } | 393 | 367 | } else { | 394 | 2.67k | for (size_t i = 0; i < _count; ++i) { | 395 | 2.31k | f(index_check_const<is_const>(i), i, i); | 396 | 2.31k | } | 397 | 367 | } | 398 | 380 | } |
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_ Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSF_SI_SI_E3$_0ZNS_23execute_ifnull_selectorESA_SH_mSI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_ short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_ Line | Count | Source | 387 | 3 | void for_each_with_selector(Func& f) const { | 388 | 3 | 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 | 3 | } else { | 394 | 6 | for (size_t i = 0; i < _count; ++i) { | 395 | 3 | f(index_check_const<is_const>(i), i, i); | 396 | 3 | } | 397 | 3 | } | 398 | 3 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE_EEvSO_ Line | Count | Source | 387 | 247 | void for_each_with_selector(Func& f) const { | 388 | 247 | 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 | 244 | } else { | 394 | 8.91k | for (size_t i = 0; i < _count; ++i) { | 395 | 8.66k | f(index_check_const<is_const>(i), i, i); | 396 | 8.66k | } | 397 | 244 | } | 398 | 247 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_ Line | Count | Source | 387 | 24 | void for_each_with_selector(Func& f) const { | 388 | 24 | if (_selector != nullptr) { | 389 | 0 | const auto& selector_data = *_selector; | 390 | 0 | for (size_t i = 0; i < _count; ++i) { | 391 | 0 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 0 | } | 393 | 24 | } else { | 394 | 48 | for (size_t i = 0; i < _count; ++i) { | 395 | 24 | f(index_check_const<is_const>(i), i, i); | 396 | 24 | } | 397 | 24 | } | 398 | 24 | } |
Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_0ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_1EEvRT_RT0_EUlmmmE0_EEvSO_ short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_ Line | Count | Source | 387 | 19 | void for_each_with_selector(Func& f) const { | 388 | 19 | if (_selector != nullptr) { | 389 | 19 | const auto& selector_data = *_selector; | 390 | 40 | for (size_t i = 0; i < _count; ++i) { | 391 | 21 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 21 | } | 393 | 19 | } 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 | 19 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE_EEvSO_ Line | Count | Source | 387 | 36 | void for_each_with_selector(Func& f) const { | 388 | 36 | if (_selector != nullptr) { | 389 | 36 | const auto& selector_data = *_selector; | 390 | 81 | for (size_t i = 0; i < _count; ++i) { | 391 | 45 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 45 | } | 393 | 36 | } 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 | 36 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb1EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_ Line | Count | Source | 387 | 49 | void for_each_with_selector(Func& f) const { | 388 | 49 | if (_selector != nullptr) { | 389 | 49 | const auto& selector_data = *_selector; | 390 | 136 | for (size_t i = 0; i < _count; ++i) { | 391 | 87 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 87 | } | 393 | 49 | } 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 | 49 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris25ConditionColumnViewHelper22for_each_with_selectorILb0EZNKS_23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS5_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSH_RSF_SI_SI_SI_E3$_2ZNS_25execute_coalesce_selectorESA_SH_mSH_SI_SI_SI_SI_E3$_3EEvRT_RT0_EUlmmmE0_EEvSO_ Line | Count | Source | 387 | 3 | void for_each_with_selector(Func& f) const { | 388 | 3 | if (_selector != nullptr) { | 389 | 3 | const auto& selector_data = *_selector; | 390 | 6 | for (size_t i = 0; i < _count; ++i) { | 391 | 3 | f(index_check_const<is_const>(i), i, selector_data[i]); | 392 | 3 | } | 393 | 3 | } else { | 394 | 0 | for (size_t i = 0; i < _count; ++i) { | 395 | 0 | f(index_check_const<is_const>(i), i, i); | 396 | 0 | } | 397 | 0 | } | 398 | 3 | } |
|
399 | | |
400 | | private: |
401 | | const Selector* _selector; |
402 | | const size_t _count; |
403 | | }; |
404 | | |
405 | | // Utility class for columns that return boolean values. |
406 | | // We care about whether the value is null, as well as true/false values. |
407 | | struct ConditionColumnView : ColumnNullConstViewScalar<TYPE_BOOLEAN>, ConditionColumnViewHelper { |
408 | | ConditionColumnView(ColumnNullConstViewScalar<TYPE_BOOLEAN> base, const Selector* selector, |
409 | | size_t count) |
410 | 12.2k | : ColumnNullConstViewScalar<TYPE_BOOLEAN>(base), |
411 | 12.2k | ConditionColumnViewHelper(selector, count) {} |
412 | | |
413 | | static ConditionColumnView create(const ColumnPtr& column_ptr, const Selector* selector, |
414 | 12.2k | size_t count) { |
415 | 12.2k | DCHECK_EQ(selector == nullptr ? count : selector->size(), count); |
416 | 12.2k | return {ColumnNullConstViewScalar<TYPE_BOOLEAN>::create(column_ptr), selector, count}; |
417 | 12.2k | } |
418 | | |
419 | | template <typename NullFunc, typename TrueFunc, typename FalseFunc> |
420 | 12.2k | void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const { |
421 | 12.2k | if (this->null_map != nullptr) { |
422 | 4.74k | const auto& null_map_data = *(this->null_map); |
423 | 12.8k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { |
424 | 12.8k | if (null_map_data[i]) { |
425 | 207 | null_func(self_index, executor_index); |
426 | 12.6k | } else { |
427 | 12.6k | if (this->data[i]) { |
428 | 4.63k | true_func(self_index, executor_index); |
429 | 8.02k | } else { |
430 | 8.02k | false_func(self_index, executor_index); |
431 | 8.02k | } |
432 | 12.6k | } |
433 | 12.8k | }; short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm Line | Count | Source | 423 | 9.94k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 424 | 9.94k | if (null_map_data[i]) { | 425 | 89 | null_func(self_index, executor_index); | 426 | 9.86k | } else { | 427 | 9.86k | if (this->data[i]) { | 428 | 3.92k | true_func(self_index, executor_index); | 429 | 5.93k | } else { | 430 | 5.93k | false_func(self_index, executor_index); | 431 | 5.93k | } | 432 | 9.86k | } | 433 | 9.94k | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE_clEmmm Line | Count | Source | 423 | 359 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 424 | 359 | if (null_map_data[i]) { | 425 | 45 | null_func(self_index, executor_index); | 426 | 314 | } else { | 427 | 314 | if (this->data[i]) { | 428 | 78 | true_func(self_index, executor_index); | 429 | 236 | } else { | 430 | 236 | false_func(self_index, executor_index); | 431 | 236 | } | 432 | 314 | } | 433 | 359 | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE_clEmmm Line | Count | Source | 423 | 2.56k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 424 | 2.56k | if (null_map_data[i]) { | 425 | 73 | null_func(self_index, executor_index); | 426 | 2.49k | } else { | 427 | 2.49k | if (this->data[i]) { | 428 | 634 | true_func(self_index, executor_index); | 429 | 1.85k | } else { | 430 | 1.85k | false_func(self_index, executor_index); | 431 | 1.85k | } | 432 | 2.49k | } | 433 | 2.56k | }; |
|
434 | 4.74k | if (is_const) { |
435 | 59 | for_each_with_selector<true>(update); |
436 | 4.68k | } else { |
437 | 4.68k | for_each_with_selector<false>(update); |
438 | 4.68k | } |
439 | 7.48k | } 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 | 178k | false_func(self_index, executor_index); |
446 | 178k | } |
447 | 10.1M | }; short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm Line | Count | Source | 441 | 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 | 174k | false_func(self_index, executor_index); | 446 | 174k | } | 447 | 10.1M | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm Line | Count | Source | 441 | 2.66k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 442 | 2.66k | if (this->data[i]) { | 443 | 1.06k | true_func(self_index, executor_index); | 444 | 1.60k | } else { | 445 | 1.60k | false_func(self_index, executor_index); | 446 | 1.60k | } | 447 | 2.66k | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ENKUlmmmE0_clEmmm Line | Count | Source | 441 | 2.59k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 442 | 2.59k | if (this->data[i]) { | 443 | 327 | true_func(self_index, executor_index); | 444 | 2.27k | } else { | 445 | 2.27k | false_func(self_index, executor_index); | 446 | 2.27k | } | 447 | 2.59k | }; |
|
448 | 7.48k | if (is_const) { |
449 | 855 | for_each_with_selector<true>(update); |
450 | 6.63k | } else { |
451 | 6.63k | for_each_with_selector<false>(update); |
452 | 6.63k | } |
453 | 7.48k | } |
454 | 12.2k | } short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_19execute_if_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_SG_E3$_0ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_1ZNS_19execute_if_selectorES8_SF_mSG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ Line | Count | Source | 420 | 6.02k | void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const { | 421 | 6.02k | if (this->null_map != nullptr) { | 422 | 2.34k | const auto& null_map_data = *(this->null_map); | 423 | 2.34k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 424 | 2.34k | if (null_map_data[i]) { | 425 | 2.34k | null_func(self_index, executor_index); | 426 | 2.34k | } else { | 427 | 2.34k | if (this->data[i]) { | 428 | 2.34k | true_func(self_index, executor_index); | 429 | 2.34k | } else { | 430 | 2.34k | false_func(self_index, executor_index); | 431 | 2.34k | } | 432 | 2.34k | } | 433 | 2.34k | }; | 434 | 2.34k | if (is_const) { | 435 | 23 | for_each_with_selector<true>(update); | 436 | 2.32k | } else { | 437 | 2.32k | for_each_with_selector<false>(update); | 438 | 2.32k | } | 439 | 3.67k | } else { | 440 | | // non-nullable condition column | 441 | 3.67k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 442 | 3.67k | if (this->data[i]) { | 443 | 3.67k | true_func(self_index, executor_index); | 444 | 3.67k | } else { | 445 | 3.67k | false_func(self_index, executor_index); | 446 | 3.67k | } | 447 | 3.67k | }; | 448 | 3.67k | if (is_const) { | 449 | 739 | for_each_with_selector<true>(update); | 450 | 2.93k | } else { | 451 | 2.93k | for_each_with_selector<false>(update); | 452 | 2.93k | } | 453 | 3.67k | } | 454 | 6.02k | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_2EEvRT_RT0_RT1_ Line | Count | Source | 420 | 1.87k | void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const { | 421 | 1.87k | if (this->null_map != nullptr) { | 422 | 119 | const auto& null_map_data = *(this->null_map); | 423 | 119 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 424 | 119 | if (null_map_data[i]) { | 425 | 119 | null_func(self_index, executor_index); | 426 | 119 | } else { | 427 | 119 | if (this->data[i]) { | 428 | 119 | true_func(self_index, executor_index); | 429 | 119 | } else { | 430 | 119 | false_func(self_index, executor_index); | 431 | 119 | } | 432 | 119 | } | 433 | 119 | }; | 434 | 119 | if (is_const) { | 435 | 10 | for_each_with_selector<true>(update); | 436 | 109 | } else { | 437 | 109 | for_each_with_selector<false>(update); | 438 | 109 | } | 439 | 1.75k | } else { | 440 | | // non-nullable condition column | 441 | 1.75k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 442 | 1.75k | if (this->data[i]) { | 443 | 1.75k | true_func(self_index, executor_index); | 444 | 1.75k | } else { | 445 | 1.75k | false_func(self_index, executor_index); | 446 | 1.75k | } | 447 | 1.75k | }; | 448 | 1.75k | if (is_const) { | 449 | 116 | for_each_with_selector<true>(update); | 450 | 1.63k | } else { | 451 | 1.63k | for_each_with_selector<false>(update); | 452 | 1.63k | } | 453 | 1.75k | } | 454 | 1.87k | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris19ConditionColumnView8for_eachIZNS_21execute_case_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_3ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_4ZNS_21execute_case_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_5EEvRT_RT0_RT1_ Line | Count | Source | 420 | 4.34k | void for_each(NullFunc& null_func, TrueFunc& true_func, FalseFunc& false_func) const { | 421 | 4.34k | if (this->null_map != nullptr) { | 422 | 2.28k | const auto& null_map_data = *(this->null_map); | 423 | 2.28k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 424 | 2.28k | if (null_map_data[i]) { | 425 | 2.28k | null_func(self_index, executor_index); | 426 | 2.28k | } else { | 427 | 2.28k | if (this->data[i]) { | 428 | 2.28k | true_func(self_index, executor_index); | 429 | 2.28k | } else { | 430 | 2.28k | false_func(self_index, executor_index); | 431 | 2.28k | } | 432 | 2.28k | } | 433 | 2.28k | }; | 434 | 2.28k | if (is_const) { | 435 | 26 | for_each_with_selector<true>(update); | 436 | 2.25k | } else { | 437 | 2.25k | for_each_with_selector<false>(update); | 438 | 2.25k | } | 439 | 2.28k | } 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 | 0 | for_each_with_selector<true>(update); | 450 | 2.06k | } else { | 451 | 2.06k | for_each_with_selector<false>(update); | 452 | 2.06k | } | 453 | 2.06k | } | 454 | 4.34k | } |
|
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 | 769 | : ColumnNullConstView(base), ConditionColumnViewHelper(selector, count) {} |
462 | | |
463 | | static ConditionColumnNullView create(const ColumnPtr& column_ptr, const Selector* selector, |
464 | 768 | size_t count) { |
465 | 768 | DCHECK_EQ(selector == nullptr ? count : selector->size(), count); |
466 | 768 | return {ColumnNullConstView::create(column_ptr), selector, count}; |
467 | 768 | } |
468 | | |
469 | | template <typename NullFunc, typename NotNullFunc> |
470 | 763 | void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const { |
471 | 763 | if (this->null_map != nullptr) { |
472 | 687 | const auto& null_map_data = *(this->null_map); |
473 | 11.0k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { |
474 | 11.0k | if (null_map_data[i]) { |
475 | 348 | null_func(self_index, executor_index); |
476 | 10.7k | } else { |
477 | 10.7k | not_null_func(self_index, executor_index); |
478 | 10.7k | } |
479 | 11.0k | }; short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm Line | Count | Source | 473 | 2.33k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 474 | 2.33k | if (null_map_data[i]) { | 475 | 166 | null_func(self_index, executor_index); | 476 | 2.16k | } else { | 477 | 2.16k | not_null_func(self_index, executor_index); | 478 | 2.16k | } | 479 | 2.33k | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE_clEmmm Line | Count | Source | 473 | 8.67k | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 474 | 8.67k | if (null_map_data[i]) { | 475 | 142 | null_func(self_index, executor_index); | 476 | 8.53k | } else { | 477 | 8.53k | not_null_func(self_index, executor_index); | 478 | 8.53k | } | 479 | 8.67k | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE_clEmmm Line | Count | Source | 473 | 66 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 474 | 66 | if (null_map_data[i]) { | 475 | 40 | null_func(self_index, executor_index); | 476 | 40 | } else { | 477 | 26 | not_null_func(self_index, executor_index); | 478 | 26 | } | 479 | 66 | }; |
|
480 | 687 | if (is_const) { |
481 | 24 | for_each_with_selector<true>(update); |
482 | 663 | } else { |
483 | 663 | for_each_with_selector<false>(update); |
484 | 663 | } |
485 | 687 | } else { |
486 | | // non-nullable condition column |
487 | 114 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { |
488 | 114 | not_null_func(self_index, executor_index); |
489 | 114 | }; Unexecuted instantiation: short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ENKUlmmmE0_clEmmm Line | Count | Source | 487 | 24 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 488 | 24 | not_null_func(self_index, executor_index); | 489 | 24 | }; |
short_circuit_evaluation_expr.cpp:_ZZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ENKUlmmmE0_clEmmm Line | Count | Source | 487 | 90 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 488 | 90 | not_null_func(self_index, executor_index); | 489 | 90 | }; |
|
490 | 76 | if (is_const) { |
491 | 73 | for_each_with_selector<true>(update); |
492 | 73 | } else { |
493 | 3 | for_each_with_selector<false>(update); |
494 | 3 | } |
495 | 76 | } |
496 | 763 | } short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_23execute_ifnull_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmRSD_SG_SG_E3$_0ZNS_23execute_ifnull_selectorES8_SF_mSG_SG_SG_E3$_1EEvRT_RT0_ Line | Count | Source | 470 | 382 | void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const { | 471 | 382 | if (this->null_map != nullptr) { | 472 | 382 | const auto& null_map_data = *(this->null_map); | 473 | 382 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 474 | 382 | if (null_map_data[i]) { | 475 | 382 | null_func(self_index, executor_index); | 476 | 382 | } else { | 477 | 382 | not_null_func(self_index, executor_index); | 478 | 382 | } | 479 | 382 | }; | 480 | 382 | if (is_const) { | 481 | 2 | for_each_with_selector<true>(update); | 482 | 380 | } else { | 483 | 380 | for_each_with_selector<false>(update); | 484 | 380 | } | 485 | 382 | } 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 | 382 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_0ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_1EEvRT_RT0_ Line | Count | Source | 470 | 274 | void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const { | 471 | 274 | if (this->null_map != nullptr) { | 472 | 250 | const auto& null_map_data = *(this->null_map); | 473 | 250 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 474 | 250 | if (null_map_data[i]) { | 475 | 250 | null_func(self_index, executor_index); | 476 | 250 | } else { | 477 | 250 | not_null_func(self_index, executor_index); | 478 | 250 | } | 479 | 250 | }; | 480 | 250 | if (is_const) { | 481 | 3 | for_each_with_selector<true>(update); | 482 | 247 | } else { | 483 | 247 | for_each_with_selector<false>(update); | 484 | 247 | } | 485 | 250 | } else { | 486 | | // non-nullable condition column | 487 | 24 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 488 | 24 | not_null_func(self_index, executor_index); | 489 | 24 | }; | 490 | 24 | if (is_const) { | 491 | 24 | for_each_with_selector<true>(update); | 492 | 24 | } else { | 493 | 0 | for_each_with_selector<false>(update); | 494 | 0 | } | 495 | 24 | } | 496 | 274 | } |
short_circuit_evaluation_expr.cpp:_ZNK5doris23ConditionColumnNullView8for_eachIZNS_25execute_coalesce_selectorERKNS_3COWINS_7IColumnEE13immutable_ptrIS3_EEPKNS_8PODArrayIjLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEmSF_RSD_SG_SG_SG_E3$_2ZNS_25execute_coalesce_selectorES8_SF_mSF_SG_SG_SG_SG_E3$_3EEvRT_RT0_ Line | Count | Source | 470 | 107 | void for_each(NullFunc& null_func, NotNullFunc& not_null_func) const { | 471 | 107 | if (this->null_map != nullptr) { | 472 | 55 | const auto& null_map_data = *(this->null_map); | 473 | 55 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 474 | 55 | if (null_map_data[i]) { | 475 | 55 | null_func(self_index, executor_index); | 476 | 55 | } else { | 477 | 55 | not_null_func(self_index, executor_index); | 478 | 55 | } | 479 | 55 | }; | 480 | 55 | if (is_const) { | 481 | 19 | for_each_with_selector<true>(update); | 482 | 36 | } else { | 483 | 36 | for_each_with_selector<false>(update); | 484 | 36 | } | 485 | 55 | } else { | 486 | | // non-nullable condition column | 487 | 52 | auto update = [&](size_t i, size_t self_index, size_t executor_index) { | 488 | 52 | not_null_func(self_index, executor_index); | 489 | 52 | }; | 490 | 52 | if (is_const) { | 491 | 49 | for_each_with_selector<true>(update); | 492 | 49 | } else { | 493 | 3 | for_each_with_selector<false>(update); | 494 | 3 | } | 495 | 52 | } | 496 | 107 | } |
|
497 | | }; |
498 | | |
499 | | } // namespace doris |