Coverage Report

Created: 2026-06-03 16:17

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/function/multiply.cpp
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
// This file is copied from
18
// https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/Multiply.cpp
19
// and modified by Doris
20
21
#include <stddef.h>
22
23
#include "core/column/column_decimal.h"
24
#include "core/column/column_vector.h"
25
#include "core/data_type/data_type_decimal.h"
26
#include "core/data_type/data_type_number.h"
27
#include "core/data_type/number_traits.h"
28
#include "core/types.h"
29
#include "core/value/decimalv2_value.h"
30
#include "exec/common/arithmetic_overflow.h"
31
#include "exprs/function/cast_type_to_either.h"
32
#include "exprs/function/simple_function_factory.h"
33
34
namespace doris {
35
template <PrimitiveType Type>
36
struct MultiplyIntegralImpl {
37
    static constexpr bool result_is_decimal = false;
38
    using Arg = typename PrimitiveTypeTraits<Type>::CppType;
39
    using ColumnType = typename PrimitiveTypeTraits<Type>::ColumnType;
40
    static constexpr PrimitiveType ArgAPType = Type;
41
    static constexpr PrimitiveType ArgBPType = Type;
42
    using ArgA = Arg;
43
    using ArgB = Arg;
44
    using DataTypeA = typename PrimitiveTypeTraits<Type>::DataType;
45
    using DataTypeB = typename PrimitiveTypeTraits<Type>::DataType;
46
    static constexpr PrimitiveType ResultType = Type;
47
    constexpr static bool need_replace_null_data_to_default = false;
48
49
35
    static DataTypes get_variadic_argument_types() {
50
35
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
35
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
35
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE27get_variadic_argument_typesEv
Line
Count
Source
49
5
    static DataTypes get_variadic_argument_types() {
50
5
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
51
5
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
52
5
    }
53
54
    NO_SANITIZE_UNDEFINED static inline typename PrimitiveTypeTraits<Type>::CppType apply(Arg a,
55
2.47M
                                                                                          Arg b) {
56
2.47M
        return a * b;
57
2.47M
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE5applyEaa
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE5applyEss
Line
Count
Source
55
208
                                                                                          Arg b) {
56
208
        return a * b;
57
208
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE5applyEii
Line
Count
Source
55
286
                                                                                          Arg b) {
56
286
        return a * b;
57
286
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE5applyEll
Line
Count
Source
55
136k
                                                                                          Arg b) {
56
136k
        return a * b;
57
136k
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE5applyEnn
Line
Count
Source
55
940
                                                                                          Arg b) {
56
940
        return a * b;
57
940
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE5applyEff
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE5applyEdd
Line
Count
Source
55
2.34M
                                                                                          Arg b) {
56
2.34M
        return a * b;
57
2.34M
    }
58
59
15
    static ColumnPtr constant_constant(Arg a, Arg b) {
60
15
        auto column_result = ColumnType ::create(1);
61
15
        column_result->get_element(0) = apply(a, b);
62
15
        return column_result;
63
15
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE17constant_constantEaa
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE17constant_constantEss
Line
Count
Source
59
2
    static ColumnPtr constant_constant(Arg a, Arg b) {
60
2
        auto column_result = ColumnType ::create(1);
61
2
        column_result->get_element(0) = apply(a, b);
62
2
        return column_result;
63
2
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE17constant_constantEii
Line
Count
Source
59
4
    static ColumnPtr constant_constant(Arg a, Arg b) {
60
4
        auto column_result = ColumnType ::create(1);
61
4
        column_result->get_element(0) = apply(a, b);
62
4
        return column_result;
63
4
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE17constant_constantEll
Line
Count
Source
59
4
    static ColumnPtr constant_constant(Arg a, Arg b) {
60
4
        auto column_result = ColumnType ::create(1);
61
4
        column_result->get_element(0) = apply(a, b);
62
4
        return column_result;
63
4
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE17constant_constantEnn
Line
Count
Source
59
1
    static ColumnPtr constant_constant(Arg a, Arg b) {
60
1
        auto column_result = ColumnType ::create(1);
61
1
        column_result->get_element(0) = apply(a, b);
62
1
        return column_result;
63
1
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE17constant_constantEff
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE17constant_constantEdd
Line
Count
Source
59
4
    static ColumnPtr constant_constant(Arg a, Arg b) {
60
4
        auto column_result = ColumnType ::create(1);
61
4
        column_result->get_element(0) = apply(a, b);
62
4
        return column_result;
63
4
    }
64
65
9.22k
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
66
9.22k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
67
9.22k
        auto column_result = ColumnType::create(column_left->size());
68
69
9.22k
        auto& a = column_left_ptr->get_data();
70
9.22k
        auto& c = column_result->get_data();
71
9.22k
        size_t size = a.size();
72
1.18M
        for (size_t i = 0; i < size; ++i) {
73
1.17M
            c[i] = apply(a[i], b);
74
1.17M
        }
75
9.22k
        return column_result;
76
9.22k
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEa
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEs
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEi
Line
Count
Source
65
1
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
66
1
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
67
1
        auto column_result = ColumnType::create(column_left->size());
68
69
1
        auto& a = column_left_ptr->get_data();
70
1
        auto& c = column_result->get_data();
71
1
        size_t size = a.size();
72
2
        for (size_t i = 0; i < size; ++i) {
73
1
            c[i] = apply(a[i], b);
74
1
        }
75
1
        return column_result;
76
1
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEl
Line
Count
Source
65
8.99k
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
66
8.99k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
67
8.99k
        auto column_result = ColumnType::create(column_left->size());
68
69
8.99k
        auto& a = column_left_ptr->get_data();
70
8.99k
        auto& c = column_result->get_data();
71
8.99k
        size_t size = a.size();
72
134k
        for (size_t i = 0; i < size; ++i) {
73
125k
            c[i] = apply(a[i], b);
74
125k
        }
75
8.99k
        return column_result;
76
8.99k
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEn
Line
Count
Source
65
6
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
66
6
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
67
6
        auto column_result = ColumnType::create(column_left->size());
68
69
6
        auto& a = column_left_ptr->get_data();
70
6
        auto& c = column_result->get_data();
71
6
        size_t size = a.size();
72
14
        for (size_t i = 0; i < size; ++i) {
73
8
            c[i] = apply(a[i], b);
74
8
        }
75
6
        return column_result;
76
6
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEf
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEd
Line
Count
Source
65
216
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
66
216
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
67
216
        auto column_result = ColumnType::create(column_left->size());
68
69
216
        auto& a = column_left_ptr->get_data();
70
216
        auto& c = column_result->get_data();
71
216
        size_t size = a.size();
72
1.04M
        for (size_t i = 0; i < size; ++i) {
73
1.04M
            c[i] = apply(a[i], b);
74
1.04M
        }
75
216
        return column_result;
76
216
    }
77
78
0
    static ColumnPtr constant_vector(Arg a, ColumnPtr column_right) {
79
0
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
80
0
        auto column_result = ColumnType::create(column_right->size());
81
0
        DCHECK(column_right_ptr != nullptr);
82
83
0
        auto& b = column_right_ptr->get_data();
84
0
        auto& c = column_result->get_data();
85
0
        size_t size = b.size();
86
0
        for (size_t i = 0; i < size; ++i) {
87
0
            c[i] = apply(a, b[i]);
88
0
        }
89
0
        return column_result;
90
0
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE15constant_vectorEaNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE15constant_vectorEsNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE15constant_vectorEiNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE15constant_vectorElNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE15constant_vectorEnNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE15constant_vectorEfNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE15constant_vectorEdNS_3COWINS_7IColumnEE13immutable_ptrIS4_EE
91
92
3.71k
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
93
3.71k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
94
3.71k
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
95
96
3.71k
        auto column_result = ColumnType::create(column_left->size());
97
98
3.71k
        auto& a = column_left_ptr->get_data();
99
3.71k
        auto& b = column_right_ptr->get_data();
100
3.71k
        auto& c = column_result->get_data();
101
3.71k
        size_t size = a.size();
102
1.30M
        for (size_t i = 0; i < size; ++i) {
103
1.30M
            c[i] = apply(a[i], b[i]);
104
1.30M
        }
105
3.71k
        return column_result;
106
3.71k
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
92
38
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
93
38
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
94
38
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
95
96
38
        auto column_result = ColumnType::create(column_left->size());
97
98
38
        auto& a = column_left_ptr->get_data();
99
38
        auto& b = column_right_ptr->get_data();
100
38
        auto& c = column_result->get_data();
101
38
        size_t size = a.size();
102
244
        for (size_t i = 0; i < size; ++i) {
103
206
            c[i] = apply(a[i], b[i]);
104
206
        }
105
38
        return column_result;
106
38
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
92
64
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
93
64
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
94
64
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
95
96
64
        auto column_result = ColumnType::create(column_left->size());
97
98
64
        auto& a = column_left_ptr->get_data();
99
64
        auto& b = column_right_ptr->get_data();
100
64
        auto& c = column_result->get_data();
101
64
        size_t size = a.size();
102
345
        for (size_t i = 0; i < size; ++i) {
103
281
            c[i] = apply(a[i], b[i]);
104
281
        }
105
64
        return column_result;
106
64
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
92
982
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
93
982
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
94
982
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
95
96
982
        auto column_result = ColumnType::create(column_left->size());
97
98
982
        auto& a = column_left_ptr->get_data();
99
982
        auto& b = column_right_ptr->get_data();
100
982
        auto& c = column_result->get_data();
101
982
        size_t size = a.size();
102
12.3k
        for (size_t i = 0; i < size; ++i) {
103
11.3k
            c[i] = apply(a[i], b[i]);
104
11.3k
        }
105
982
        return column_result;
106
982
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
92
152
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
93
152
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
94
152
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
95
96
152
        auto column_result = ColumnType::create(column_left->size());
97
98
152
        auto& a = column_left_ptr->get_data();
99
152
        auto& b = column_right_ptr->get_data();
100
152
        auto& c = column_result->get_data();
101
152
        size_t size = a.size();
102
1.08k
        for (size_t i = 0; i < size; ++i) {
103
931
            c[i] = apply(a[i], b[i]);
104
931
        }
105
152
        return column_result;
106
152
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
92
2.48k
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
93
2.48k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
94
2.48k
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
95
96
2.48k
        auto column_result = ColumnType::create(column_left->size());
97
98
2.48k
        auto& a = column_left_ptr->get_data();
99
2.48k
        auto& b = column_right_ptr->get_data();
100
2.48k
        auto& c = column_result->get_data();
101
2.48k
        size_t size = a.size();
102
1.29M
        for (size_t i = 0; i < size; ++i) {
103
1.29M
            c[i] = apply(a[i], b[i]);
104
1.29M
        }
105
2.48k
        return column_result;
106
2.48k
    }
107
};
108
109
template <PrimitiveType TypeA, PrimitiveType TypeB>
110
struct MultiplyDecimalImpl {
111
    static constexpr bool result_is_decimal = true;
112
    static_assert(is_decimal(TypeA) && is_decimal(TypeB));
113
    static_assert((TypeA == TYPE_DECIMALV2 && TypeB == TYPE_DECIMALV2) ||
114
                  (TypeA != TYPE_DECIMALV2 && TypeB != TYPE_DECIMALV2));
115
116
    constexpr static bool need_replace_null_data_to_default = true;
117
    using ArgA = typename PrimitiveTypeTraits<TypeA>::CppType;
118
    using ArgB = typename PrimitiveTypeTraits<TypeB>::CppType;
119
    static constexpr PrimitiveType ArgAPType = TypeA;
120
    static constexpr PrimitiveType ArgBPType = TypeB;
121
    using ArgNativeTypeA = typename PrimitiveTypeTraits<TypeA>::CppType::NativeType;
122
    using ArgNativeTypeB = typename PrimitiveTypeTraits<TypeB>::CppType::NativeType;
123
    using DataTypeA = typename PrimitiveTypeTraits<TypeA>::DataType;
124
    using DataTypeB = typename PrimitiveTypeTraits<TypeB>::DataType;
125
    using ColumnTypeA = typename PrimitiveTypeTraits<TypeA>::ColumnType;
126
    using ColumnTypeB = typename PrimitiveTypeTraits<TypeB>::ColumnType;
127
128
85
    static DataTypes get_variadic_argument_types() {
129
85
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
85
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
85
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
128
5
    static DataTypes get_variadic_argument_types() {
129
5
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
130
5
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
131
5
    }
132
133
    template <PrimitiveType Result>
134
        requires(is_decimal(Result) && Result != TYPE_DECIMALV2)
135
    static inline typename PrimitiveTypeTraits<Result>::CppType::NativeType apply(
136
61
            ArgNativeTypeA a, ArgNativeTypeB b) {
137
61
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
138
61
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
139
61
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEii
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEii
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEii
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEii
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEil
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEil
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEil
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEil
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEin
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEin
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEin
Line
Count
Source
136
3
            ArgNativeTypeA a, ArgNativeTypeB b) {
137
3
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
138
3
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
139
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEin
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEiN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEiN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEiN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEiN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEli
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEli
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEli
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEli
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEll
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEll
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEll
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEll
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEln
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEln
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEln
Line
Count
Source
136
5
            ArgNativeTypeA a, ArgNativeTypeB b) {
137
5
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
138
5
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
139
5
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEln
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeElN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeElN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeElN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeElN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEni
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEni
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEni
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEni
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnl
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnl
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnl
Line
Count
Source
136
1
            ArgNativeTypeA a, ArgNativeTypeB b) {
137
1
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
138
1
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
139
1
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnl
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnn
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnn
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnn
Line
Count
Source
136
52
            ArgNativeTypeA a, ArgNativeTypeB b) {
137
52
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
138
52
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
139
52
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnn
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEnN4wide7integerILm256EiEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEi
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEi
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEi
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEi
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEl
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEl
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEl
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEl
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEn
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEn
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEn
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEEn
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_
140
141
    template <PrimitiveType Result = TYPE_DECIMALV2>
142
15
    static inline DecimalV2Value apply(const DecimalV2Value& a, const DecimalV2Value& b) {
143
15
        return a * b;
144
15
    }
145
146
    /// Apply operation and check overflow. It's used for Decimal operations. @returns true if overflowed, false otherwise.
147
    template <PrimitiveType Result>
148
        requires(is_decimal(Result))
149
    static inline bool apply(ArgNativeTypeA a, ArgNativeTypeB b,
150
5.23M
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
5.23M
        return common::mul_overflow(
152
5.23M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
5.23M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
5.23M
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbiiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
20
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
20
        return common::mul_overflow(
152
20
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
20
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
20
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbiiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
68
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
68
        return common::mul_overflow(
152
68
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
68
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
68
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbiiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbiiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbilRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbilRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
2
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
2
        return common::mul_overflow(
152
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
2
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbilRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
11
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
11
        return common::mul_overflow(
152
11
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
11
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
11
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbilRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbinRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbinRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbinRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
3.55k
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
3.55k
        return common::mul_overflow(
152
3.55k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
3.55k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
3.55k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbinRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
3
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
3
        return common::mul_overflow(
152
3
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
3
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbiN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbiN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbiN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbiN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbliRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbliRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
29.8k
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
29.8k
        return common::mul_overflow(
152
29.8k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
29.8k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
29.8k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbliRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
13
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
13
        return common::mul_overflow(
152
13
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
13
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
13
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbliRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbllRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbllRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbllRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
2.87M
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
2.87M
        return common::mul_overflow(
152
2.87M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
2.87M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
2.87M
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbllRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEblnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEblnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEblnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
12
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
12
        return common::mul_overflow(
152
12
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
12
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
12
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEblnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
2
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
2
        return common::mul_overflow(
152
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEblN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEblN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEblN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEblN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbniRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbniRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbniRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
761
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
761
        return common::mul_overflow(
152
761
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
761
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
761
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbniRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbnlRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbnlRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbnlRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
2.32M
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
2.32M
        return common::mul_overflow(
152
2.32M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
2.32M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
2.32M
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbnlRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbnnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbnnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbnnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
120
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
120
        return common::mul_overflow(
152
120
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
120
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
120
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbnnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
263
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
263
        return common::mul_overflow(
152
263
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
263
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
263
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbnN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbnN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbnN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbnN4wide7integerILm256EiEERNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
7
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
7
        return common::mul_overflow(
152
7
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
7
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
7
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEElRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEElRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEElRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEElRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEEnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
52
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
52
        return common::mul_overflow(
152
52
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
52
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
52
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEES6_RNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEES6_RNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEES6_RNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbN4wide7integerILm256EiEES6_RNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
150
16
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
151
16
        return common::mul_overflow(
152
16
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
153
16
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
154
16
    }
155
156
    template <PrimitiveType ResultType>
157
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
158
    static ColumnPtr constant_constant(
159
            ArgA a, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
160
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
161
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
162
5
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
163
5
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
164
165
5
        if (check_overflow_for_decimal) {
166
5
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
167
5
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
168
5
                                      max_result_number, scale_diff_multiplier));
169
5
        } else {
170
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
171
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
172
0
                                       max_result_number, scale_diff_multiplier));
173
0
        }
174
175
5
        return column_result;
176
5
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEESA_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEESA_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEESA_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEESA_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEESA_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEESA_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEESA_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEESA_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSC_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEENS9_IN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Line
Count
Source
162
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
163
2
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
164
165
2
        if (check_overflow_for_decimal) {
166
2
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
167
2
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
168
2
                                      max_result_number, scale_diff_multiplier));
169
2
        } else {
170
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
171
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
172
0
                                       max_result_number, scale_diff_multiplier));
173
0
        }
174
175
2
        return column_result;
176
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSC_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESN_RKNSC_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES9_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES9_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES9_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Line
Count
Source
162
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
163
2
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
164
165
2
        if (check_overflow_for_decimal) {
166
2
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
167
2
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
168
2
                                      max_result_number, scale_diff_multiplier));
169
2
        } else {
170
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
171
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
172
0
                                       max_result_number, scale_diff_multiplier));
173
0
        }
174
175
2
        return column_result;
176
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES9_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ENS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSF_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS9_IlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEENS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSF_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESQ_RKNSF_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE17constant_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEESD_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE17constant_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEESD_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE17constant_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEESD_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE17constant_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEESD_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Line
Count
Source
162
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
163
1
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
164
165
1
        if (check_overflow_for_decimal) {
166
1
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
167
1
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
168
1
                                      max_result_number, scale_diff_multiplier));
169
1
        } else {
170
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
171
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
172
0
                                       max_result_number, scale_diff_multiplier));
173
0
        }
174
175
1
        return column_result;
176
1
    }
177
178
    template <PrimitiveType ResultType>
179
        requires(ResultType == TYPE_DECIMALV2)
180
    static ColumnPtr constant_constant(
181
            ArgA a, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
182
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
183
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
184
13
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
185
13
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
186
187
13
        if (check_overflow_for_decimal) {
188
13
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
189
13
                    apply<true, true>(a.value(), b.value(), *type_left, *type_right, res_data_type,
190
13
                                      max_result_number, scale_diff_multiplier));
191
13
        } else {
192
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
193
0
                    apply<true, false>(a.value(), b.value(), *type_left, *type_right, res_data_type,
194
0
                                       max_result_number, scale_diff_multiplier));
195
0
        }
196
197
13
        return column_result;
198
13
    }
199
200
    template <PrimitiveType ResultType>
201
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
202
    static ColumnPtr vector_constant(
203
            ColumnPtr column_left, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
204
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
205
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
206
308
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
308
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
308
        auto column_result =
209
308
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
308
        DCHECK(column_left_ptr != nullptr);
211
212
308
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
308
        const auto& a = column_left_ptr->get_data();
214
308
        auto& c = column_result->get_data();
215
308
        std::visit(
216
308
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
30.6k
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
30.3k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
30.3k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
30.3k
                                        a[i], b, *type_left, *type_right, res_data_type,
221
30.3k
                                        max_result_number, scale_diff_multiplier));
222
30.3k
                    }
223
308
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Line
Count
Source
216
12
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
30
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
18
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
18
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
18
                                        a[i], b, *type_left, *type_right, res_data_type,
221
18
                                        max_result_number, scale_diff_multiplier));
222
18
                    }
223
12
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Line
Count
Source
216
20
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
50
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
30
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
30
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
30
                                        a[i], b, *type_left, *type_right, res_data_type,
221
30
                                        max_result_number, scale_diff_multiplier));
222
30
                    }
223
20
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
216
71
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
29.9k
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
29.8k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
29.8k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
29.8k
                                        a[i], b, *type_left, *type_right, res_data_type,
221
29.8k
                                        max_result_number, scale_diff_multiplier));
222
29.8k
                    }
223
71
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Line
Count
Source
216
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
4
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
2
                                        a[i], b, *type_left, *type_right, res_data_type,
221
2
                                        max_result_number, scale_diff_multiplier));
222
2
                    }
223
2
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
216
198
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
652
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
454
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
454
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
454
                                        a[i], b, *type_left, *type_right, res_data_type,
221
454
                                        max_result_number, scale_diff_multiplier));
222
454
                    }
223
198
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Line
Count
Source
216
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
1
                                        a[i], b, *type_left, *type_right, res_data_type,
221
1
                                        max_result_number, scale_diff_multiplier));
222
1
                    }
223
1
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
216
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
1
                                        a[i], b, *type_left, *type_right, res_data_type,
221
1
                                        max_result_number, scale_diff_multiplier));
222
1
                    }
223
1
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Line
Count
Source
216
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
1
                                        a[i], b, *type_left, *type_right, res_data_type,
221
1
                                        max_result_number, scale_diff_multiplier));
222
1
                    }
223
1
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Line
Count
Source
216
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
5
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
3
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
3
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
3
                                        a[i], b, *type_left, *type_right, res_data_type,
221
3
                                        max_result_number, scale_diff_multiplier));
222
3
                    }
223
2
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
224
308
                make_bool_variant(need_adjust_scale),
225
308
                make_bool_variant(check_overflow_for_decimal));
226
227
308
        return column_result;
228
308
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Line
Count
Source
206
12
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
12
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
12
        auto column_result =
209
12
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
12
        DCHECK(column_left_ptr != nullptr);
211
212
12
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
12
        const auto& a = column_left_ptr->get_data();
214
12
        auto& c = column_result->get_data();
215
12
        std::visit(
216
12
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
12
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
12
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
12
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
12
                                        a[i], b, *type_left, *type_right, res_data_type,
221
12
                                        max_result_number, scale_diff_multiplier));
222
12
                    }
223
12
                },
224
12
                make_bool_variant(need_adjust_scale),
225
12
                make_bool_variant(check_overflow_for_decimal));
226
227
12
        return column_result;
228
12
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Line
Count
Source
206
20
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
20
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
20
        auto column_result =
209
20
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
20
        DCHECK(column_left_ptr != nullptr);
211
212
20
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
20
        const auto& a = column_left_ptr->get_data();
214
20
        auto& c = column_result->get_data();
215
20
        std::visit(
216
20
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
20
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
20
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
20
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
20
                                        a[i], b, *type_left, *type_right, res_data_type,
221
20
                                        max_result_number, scale_diff_multiplier));
222
20
                    }
223
20
                },
224
20
                make_bool_variant(need_adjust_scale),
225
20
                make_bool_variant(check_overflow_for_decimal));
226
227
20
        return column_result;
228
20
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_28EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_28EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
206
71
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
71
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
71
        auto column_result =
209
71
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
71
        DCHECK(column_left_ptr != nullptr);
211
212
71
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
71
        const auto& a = column_left_ptr->get_data();
214
71
        auto& c = column_result->get_data();
215
71
        std::visit(
216
71
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
71
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
71
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
71
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
71
                                        a[i], b, *type_left, *type_right, res_data_type,
221
71
                                        max_result_number, scale_diff_multiplier));
222
71
                    }
223
71
                },
224
71
                make_bool_variant(need_adjust_scale),
225
71
                make_bool_variant(check_overflow_for_decimal));
226
227
71
        return column_result;
228
71
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Line
Count
Source
206
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
2
        auto column_result =
209
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
2
        DCHECK(column_left_ptr != nullptr);
211
212
2
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
2
        const auto& a = column_left_ptr->get_data();
214
2
        auto& c = column_result->get_data();
215
2
        std::visit(
216
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
2
                                        a[i], b, *type_left, *type_right, res_data_type,
221
2
                                        max_result_number, scale_diff_multiplier));
222
2
                    }
223
2
                },
224
2
                make_bool_variant(need_adjust_scale),
225
2
                make_bool_variant(check_overflow_for_decimal));
226
227
2
        return column_result;
228
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_29EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_29EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
206
199
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
199
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
199
        auto column_result =
209
199
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
199
        DCHECK(column_left_ptr != nullptr);
211
212
199
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
199
        const auto& a = column_left_ptr->get_data();
214
199
        auto& c = column_result->get_data();
215
199
        std::visit(
216
199
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
199
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
199
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
199
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
199
                                        a[i], b, *type_left, *type_right, res_data_type,
221
199
                                        max_result_number, scale_diff_multiplier));
222
199
                    }
223
199
                },
224
199
                make_bool_variant(need_adjust_scale),
225
199
                make_bool_variant(check_overflow_for_decimal));
226
227
199
        return column_result;
228
199
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
206
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
2
        auto column_result =
209
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
2
        DCHECK(column_left_ptr != nullptr);
211
212
2
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
2
        const auto& a = column_left_ptr->get_data();
214
2
        auto& c = column_result->get_data();
215
2
        std::visit(
216
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
2
                                        a[i], b, *type_left, *type_right, res_data_type,
221
2
                                        max_result_number, scale_diff_multiplier));
222
2
                    }
223
2
                },
224
2
                make_bool_variant(need_adjust_scale),
225
2
                make_bool_variant(check_overflow_for_decimal));
226
227
2
        return column_result;
228
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_30EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_30EEEPKNSE_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIiEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
206
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
207
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
208
2
        auto column_result =
209
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
210
2
        DCHECK(column_left_ptr != nullptr);
211
212
2
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
213
2
        const auto& a = column_left_ptr->get_data();
214
2
        auto& c = column_result->get_data();
215
2
        std::visit(
216
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
217
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
218
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
219
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
220
2
                                        a[i], b, *type_left, *type_right, res_data_type,
221
2
                                        max_result_number, scale_diff_multiplier));
222
2
                    }
223
2
                },
224
2
                make_bool_variant(need_adjust_scale),
225
2
                make_bool_variant(check_overflow_for_decimal));
226
227
2
        return column_result;
228
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIlEEPKNS_15DataTypeDecimalILS1_35EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_12Decimal128V3EPKNS_15DataTypeDecimalILS1_35EEEPKNSA_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15vector_constantILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_7DecimalIN4wide7integerILm256EiEEEEPKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
229
230
    template <PrimitiveType ResultType>
231
        requires(ResultType == TYPE_DECIMALV2)
232
    static ColumnPtr vector_constant(
233
            ColumnPtr column_left, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
234
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
235
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
236
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
237
1
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
238
1
        auto column_result =
239
1
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
240
1
        DCHECK(column_left_ptr != nullptr);
241
242
1
        bool need_adjust_scale = scale_diff_multiplier.value() > 1;
243
1
        const auto& a = column_left_ptr->get_data();
244
1
        auto& c = column_result->get_data();
245
1
        std::visit(
246
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
247
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
248
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
249
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
250
1
                                        a[i].value(), b.value(), *type_left, *type_right,
251
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
252
1
                    }
253
1
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15vector_constantILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_14DecimalV2ValueEPKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15vector_constantILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_14DecimalV2ValueEPKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15vector_constantILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_14DecimalV2ValueEPKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15vector_constantILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_NS_14DecimalV2ValueEPKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Line
Count
Source
246
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
247
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
248
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
249
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
250
1
                                        a[i].value(), b.value(), *type_left, *type_right,
251
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
252
1
                    }
253
1
                },
254
1
                make_bool_variant(need_adjust_scale),
255
1
                make_bool_variant(check_overflow_for_decimal));
256
257
1
        return column_result;
258
1
    }
259
260
    template <PrimitiveType ResultType>
261
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
262
    static ColumnPtr constant_vector(
263
            ArgA a, ColumnPtr column_right, const DataTypeA* type_left, const DataTypeB* type_right,
264
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
265
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
266
66
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
267
66
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
268
66
        auto column_result =
269
66
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
270
271
66
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
272
66
        auto& b = column_right_ptr->get_data();
273
66
        auto& c = column_result->get_data();
274
66
        std::visit(
275
66
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
3.38k
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
3.32k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
3.32k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
3.32k
                                        a, b[i], *type_left, *type_right, res_data_type,
280
3.32k
                                        max_result_number, scale_diff_multiplier));
281
3.32k
                    }
282
66
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
275
5
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
10
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
5
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
5
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
5
                                        a, b[i], *type_left, *type_right, res_data_type,
280
5
                                        max_result_number, scale_diff_multiplier));
281
5
                    }
282
5
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
275
53
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
3.36k
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
3.30k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
3.30k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
3.30k
                                        a, b[i], *type_left, *type_right, res_data_type,
280
3.30k
                                        max_result_number, scale_diff_multiplier));
281
3.30k
                    }
282
53
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
275
4
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
10
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
6
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
6
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
6
                                        a, b[i], *type_left, *type_right, res_data_type,
280
6
                                        max_result_number, scale_diff_multiplier));
281
6
                    }
282
4
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Line
Count
Source
275
3
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
6
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
3
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
3
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
3
                                        a, b[i], *type_left, *type_right, res_data_type,
280
3
                                        max_result_number, scale_diff_multiplier));
281
3
                    }
282
3
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_IbLb1EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_IbLb0EEEEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_EEDaSN_SO_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Line
Count
Source
275
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
2
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
1
                                        a, b[i], *type_left, *type_right, res_data_type,
280
1
                                        max_result_number, scale_diff_multiplier));
281
1
                    }
282
1
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_IbLb1EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_IbLb0EEEEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_EEDaSP_SQ_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESX_IbLb1EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESX_IbLb0EEEEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESY_EEDaST_SU_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESV_EEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESU_IbLb1EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESU_IbLb0EEEEDaSQ_SR_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESV_EEDaSQ_SR_
283
66
                make_bool_variant(need_adjust_scale),
284
66
                make_bool_variant(check_overflow_for_decimal));
285
66
        return column_result;
286
66
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
266
5
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
267
5
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
268
5
        auto column_result =
269
5
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
270
271
5
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
272
5
        auto& b = column_right_ptr->get_data();
273
5
        auto& c = column_result->get_data();
274
5
        std::visit(
275
5
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
5
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
5
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
5
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
5
                                        a, b[i], *type_left, *type_right, res_data_type,
280
5
                                        max_result_number, scale_diff_multiplier));
281
5
                    }
282
5
                },
283
5
                make_bool_variant(need_adjust_scale),
284
5
                make_bool_variant(check_overflow_for_decimal));
285
5
        return column_result;
286
5
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
266
53
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
267
53
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
268
53
        auto column_result =
269
53
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
270
271
53
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
272
53
        auto& b = column_right_ptr->get_data();
273
53
        auto& c = column_result->get_data();
274
53
        std::visit(
275
53
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
53
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
53
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
53
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
53
                                        a, b[i], *type_left, *type_right, res_data_type,
280
53
                                        max_result_number, scale_diff_multiplier));
281
53
                    }
282
53
                },
283
53
                make_bool_variant(need_adjust_scale),
284
53
                make_bool_variant(check_overflow_for_decimal));
285
53
        return column_result;
286
53
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIiEES8_PKNS_15DataTypeDecimalILS1_28EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
266
4
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
267
4
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
268
4
        auto column_result =
269
4
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
270
271
4
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
272
4
        auto& b = column_right_ptr->get_data();
273
4
        auto& c = column_result->get_data();
274
4
        std::visit(
275
4
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
4
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
4
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
4
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
4
                                        a, b[i], *type_left, *type_right, res_data_type,
280
4
                                        max_result_number, scale_diff_multiplier));
281
4
                    }
282
4
                },
283
4
                make_bool_variant(need_adjust_scale),
284
4
                make_bool_variant(check_overflow_for_decimal));
285
4
        return column_result;
286
4
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Line
Count
Source
266
3
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
267
3
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
268
3
        auto column_result =
269
3
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
270
271
3
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
272
3
        auto& b = column_right_ptr->get_data();
273
3
        auto& c = column_result->get_data();
274
3
        std::visit(
275
3
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
3
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
3
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
3
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
3
                                        a, b[i], *type_left, *type_right, res_data_type,
280
3
                                        max_result_number, scale_diff_multiplier));
281
3
                    }
282
3
                },
283
3
                make_bool_variant(need_adjust_scale),
284
3
                make_bool_variant(check_overflow_for_decimal));
285
3
        return column_result;
286
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEESE_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESJ_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Line
Count
Source
266
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
267
1
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
268
1
        auto column_result =
269
1
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
270
271
1
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
272
1
        auto& b = column_right_ptr->get_data();
273
1
        auto& c = column_result->get_data();
274
1
        std::visit(
275
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
276
1
                    for (size_t i = 0; i < column_right->size(); ++i) {
277
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
278
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
279
1
                                        a, b[i], *type_left, *type_right, res_data_type,
280
1
                                        max_result_number, scale_diff_multiplier));
281
1
                    }
282
1
                },
283
1
                make_bool_variant(need_adjust_scale),
284
1
                make_bool_variant(check_overflow_for_decimal));
285
1
        return column_result;
286
1
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIlEES8_PKNS_15DataTypeDecimalILS1_29EEEPKNSB_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSB_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_12Decimal128V3ES8_PKNS_15DataTypeDecimalILS1_30EEEPKNSA_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESL_RKNSA_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEEPKNSE_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESP_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_28EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_29EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_30EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE15constant_vectorILS1_35EQaaclL_ZNS_10is_decimalES1_ETL0__EneTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_7DecimalIN4wide7integerILm256EiEEEES8_PKNS_15DataTypeDecimalILS1_35EEESH_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESM_RKNSE_IXT_EEEb
287
288
    template <PrimitiveType ResultType>
289
        requires(ResultType == TYPE_DECIMALV2)
290
    static ColumnPtr constant_vector(
291
            ArgA a, ColumnPtr column_right, const DataTypeA* type_left, const DataTypeB* type_right,
292
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
293
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
294
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
295
1
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
296
1
        auto column_result =
297
1
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
298
299
1
        bool need_adjust_scale = scale_diff_multiplier.value() > 1;
300
1
        auto& b = column_right_ptr->get_data();
301
1
        auto& c = column_result->get_data();
302
1
        std::visit(
303
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
304
2
                    for (size_t i = 0; i < column_right->size(); ++i) {
305
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
306
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
307
1
                                        a.value(), b[i].value(), *type_left, *type_right,
308
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
309
1
                    }
310
1
                },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15constant_vectorILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_14DecimalV2ValueES8_PKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESR_EEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15constant_vectorILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_14DecimalV2ValueES8_PKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_IbLb1EEEEDaSM_SN_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15constant_vectorILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_14DecimalV2ValueES8_PKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_IbLb0EEEEDaSM_SN_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE15constant_vectorILS1_20EQeqTL0__LS1_20EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EENS_14DecimalV2ValueES8_PKNS_15DataTypeDecimalILS1_20EEESD_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESI_RKNSA_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESR_EEDaSM_SN_
Line
Count
Source
303
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
304
2
                    for (size_t i = 0; i < column_right->size(); ++i) {
305
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
306
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
307
1
                                        a.value(), b[i].value(), *type_left, *type_right,
308
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
309
1
                    }
310
1
                },
311
1
                make_bool_variant(need_adjust_scale),
312
1
                make_bool_variant(check_overflow_for_decimal));
313
1
        return column_result;
314
1
    }
315
316
    /*
317
    select 999999999999999999999999999 * 999999999999999999999999999;
318
    999999999999999999999999998000000000.000000000000000001 54 digits
319
    */
320
    template <bool check_overflow>
321
    NO_SANITIZE_UNDEFINED static void vector_vector(
322
            const ColumnDecimal128V2::Container::value_type* __restrict a,
323
            const ColumnDecimal128V2::Container::value_type* __restrict b,
324
154
            ColumnDecimal128V2::Container::value_type* c, size_t size) {
325
154
        auto sng_uptr = std::unique_ptr<int8_t[]>(new int8_t[size]);
326
154
        int8_t* sgn = sng_uptr.get();
327
154
        auto max = DecimalV2Value::get_max_decimal();
328
154
        auto min = DecimalV2Value::get_min_decimal();
329
330
1.08k
        for (int i = 0; i < size; i++) {
331
933
            sgn[i] = ((DecimalV2Value(a[i]).value() > 0) && (DecimalV2Value(b[i]).value() > 0)) ||
332
933
                                     ((DecimalV2Value(a[i]).value() < 0) &&
333
219
                                      (DecimalV2Value(b[i]).value() < 0))
334
933
                             ? 1
335
933
                     : ((DecimalV2Value(a[i]).value() == 0) || (DecimalV2Value(b[i]).value() == 0))
336
219
                             ? 0
337
219
                             : -1;
338
933
        }
339
340
1.08k
        for (int i = 0; i < size; i++) {
341
933
            if constexpr (check_overflow) {
342
933
                int128_t i128_mul_result;
343
933
                if (common::mul_overflow(DecimalV2Value(a[i]).value(), DecimalV2Value(b[i]).value(),
344
933
                                         i128_mul_result)) {
345
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
346
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
347
0
                                    DecimalV2Value(a[i]).to_string(), "multiply",
348
0
                                    DecimalV2Value(b[i]).to_string(),
349
0
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
350
0
                }
351
933
                c[i] = DecimalV2Value((i128_mul_result - sgn[i]) / DecimalV2Value::ONE_BILLION +
352
933
                                      sgn[i]);
353
933
                if (c[i].value() > max.value() || c[i].value() < min.value()) {
354
1
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
355
1
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
356
1
                                    DecimalV2Value(a[i]).to_string(), "multiply",
357
1
                                    DecimalV2Value(b[i]).to_string(),
358
1
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
359
1
                }
360
933
            } else {
361
0
                c[i] = DecimalV2Value(
362
0
                        (DecimalV2Value(a[i]).value() * DecimalV2Value(b[i]).value() - sgn[i]) /
363
0
                                DecimalV2Value::ONE_BILLION +
364
0
                        sgn[i]);
365
0
            }
366
933
        }
367
154
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE13vector_vectorILb1EEEvPKNS_14DecimalV2ValueES6_PS4_m
Line
Count
Source
324
154
            ColumnDecimal128V2::Container::value_type* c, size_t size) {
325
154
        auto sng_uptr = std::unique_ptr<int8_t[]>(new int8_t[size]);
326
154
        int8_t* sgn = sng_uptr.get();
327
154
        auto max = DecimalV2Value::get_max_decimal();
328
154
        auto min = DecimalV2Value::get_min_decimal();
329
330
1.08k
        for (int i = 0; i < size; i++) {
331
933
            sgn[i] = ((DecimalV2Value(a[i]).value() > 0) && (DecimalV2Value(b[i]).value() > 0)) ||
332
933
                                     ((DecimalV2Value(a[i]).value() < 0) &&
333
219
                                      (DecimalV2Value(b[i]).value() < 0))
334
933
                             ? 1
335
933
                     : ((DecimalV2Value(a[i]).value() == 0) || (DecimalV2Value(b[i]).value() == 0))
336
219
                             ? 0
337
219
                             : -1;
338
933
        }
339
340
1.08k
        for (int i = 0; i < size; i++) {
341
933
            if constexpr (check_overflow) {
342
933
                int128_t i128_mul_result;
343
933
                if (common::mul_overflow(DecimalV2Value(a[i]).value(), DecimalV2Value(b[i]).value(),
344
933
                                         i128_mul_result)) {
345
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
346
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
347
0
                                    DecimalV2Value(a[i]).to_string(), "multiply",
348
0
                                    DecimalV2Value(b[i]).to_string(),
349
0
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
350
0
                }
351
933
                c[i] = DecimalV2Value((i128_mul_result - sgn[i]) / DecimalV2Value::ONE_BILLION +
352
933
                                      sgn[i]);
353
933
                if (c[i].value() > max.value() || c[i].value() < min.value()) {
354
1
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
355
1
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
356
1
                                    DecimalV2Value(a[i]).to_string(), "multiply",
357
1
                                    DecimalV2Value(b[i]).to_string(),
358
1
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
359
1
                }
360
            } else {
361
                c[i] = DecimalV2Value(
362
                        (DecimalV2Value(a[i]).value() * DecimalV2Value(b[i]).value() - sgn[i]) /
363
                                DecimalV2Value::ONE_BILLION +
364
                        sgn[i]);
365
            }
366
933
        }
367
154
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE13vector_vectorILb0EEEvPKNS_14DecimalV2ValueES6_PS4_m
368
369
    template <typename T>
370
0
    static int8_t sgn(const T& x) {
371
0
        return (x > 0) ? 1 : ((x < 0) ? -1 : 0);
372
0
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE3sgnIN4wide7integerILm256EiEEEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE3sgnIiEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE3sgnIlEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE3sgnInEEaRKT_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE3sgnIN4wide7integerILm256EiEEEEaRKT_
373
374
    template <PrimitiveType ResultType>
375
        requires(is_decimal(ResultType))
376
    static ColumnPtr vector_vector(
377
            ColumnPtr column_left, ColumnPtr column_right, const DataTypeA* type_left,
378
            const DataTypeB* type_right,
379
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
380
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
381
3.13k
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
3.13k
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
3.13k
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
3.13k
        auto column_result =
386
3.13k
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
3.13k
        auto sz = column_left->size();
388
3.13k
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
154
            if (check_overflow_for_decimal) {
390
154
                vector_vector<true>(column_left_ptr->get_data().data(),
391
154
                                    column_right_ptr->get_data().data(),
392
154
                                    column_result->get_data().data(), sz);
393
154
            } else {
394
0
                vector_vector<false>(column_left_ptr->get_data().data(),
395
0
                                     column_right_ptr->get_data().data(),
396
0
                                     column_result->get_data().data(), sz);
397
0
            }
398
2.97k
        } else {
399
2.97k
            const auto& a = column_left_ptr->get_data().data();
400
2.97k
            const auto& b = column_right_ptr->get_data().data();
401
2.97k
            const auto& c = column_result->get_data().data();
402
2.97k
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
2.97k
            std::visit(
404
2.98k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
5.22M
                        for (size_t i = 0; i < sz; i++) {
406
5.21M
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
5.21M
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
5.21M
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
5.21M
                                            max_result_number, scale_diff_multiplier));
410
5.21M
                        }
411
2.98k
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Line
Count
Source
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
4
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Line
Count
Source
404
26
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
64
                        for (size_t i = 0; i < sz; i++) {
406
38
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
38
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
38
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
38
                                            max_result_number, scale_diff_multiplier));
410
38
                        }
411
26
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
4
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
10
                        for (size_t i = 0; i < sz; i++) {
406
6
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
6
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
6
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
6
                                            max_result_number, scale_diff_multiplier));
410
6
                        }
411
4
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
41
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
287
                        for (size_t i = 0; i < sz; i++) {
406
246
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
246
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
246
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
246
                                            max_result_number, scale_diff_multiplier));
410
246
                        }
411
41
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Line
Count
Source
404
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
8
                        for (size_t i = 0; i < sz; i++) {
406
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
4
                                            max_result_number, scale_diff_multiplier));
410
4
                        }
411
4
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
3
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
6
                        for (size_t i = 0; i < sz; i++) {
406
3
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
3
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
3
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
3
                                            max_result_number, scale_diff_multiplier));
410
3
                        }
411
3
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
1
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
6
                        for (size_t i = 0; i < sz; i++) {
406
5
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
5
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
5
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
5
                                            max_result_number, scale_diff_multiplier));
410
5
                        }
411
1
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
5
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
12
                        for (size_t i = 0; i < sz; i++) {
406
7
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
7
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
7
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
7
                                            max_result_number, scale_diff_multiplier));
410
7
                        }
411
5
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Line
Count
Source
404
2.15k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
2.88M
                        for (size_t i = 0; i < sz; i++) {
406
2.87M
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2.87M
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2.87M
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2.87M
                                            max_result_number, scale_diff_multiplier));
410
2.87M
                        }
411
2.15k
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Line
Count
Source
404
9
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
20
                        for (size_t i = 0; i < sz; i++) {
406
11
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
11
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
11
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
11
                                            max_result_number, scale_diff_multiplier));
410
11
                        }
411
9
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
4
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
56
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
362
                        for (size_t i = 0; i < sz; i++) {
406
306
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
306
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
306
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
306
                                            max_result_number, scale_diff_multiplier));
410
306
                        }
411
56
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
464
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
2.33M
                        for (size_t i = 0; i < sz; i++) {
406
2.33M
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2.33M
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2.33M
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2.33M
                                            max_result_number, scale_diff_multiplier));
410
2.33M
                        }
411
464
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Line
Count
Source
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
6
                        for (size_t i = 0; i < sz; i++) {
406
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
4
                                            max_result_number, scale_diff_multiplier));
410
4
                        }
411
2
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Line
Count
Source
404
5
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
10
                        for (size_t i = 0; i < sz; i++) {
406
5
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
5
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
5
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
5
                                            max_result_number, scale_diff_multiplier));
410
5
                        }
411
5
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Line
Count
Source
404
84
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
197
                        for (size_t i = 0; i < sz; i++) {
406
113
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
113
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
113
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
113
                                            max_result_number, scale_diff_multiplier));
410
113
                        }
411
84
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Line
Count
Source
404
61
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
324
                        for (size_t i = 0; i < sz; i++) {
406
263
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
263
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
263
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
263
                                            max_result_number, scale_diff_multiplier));
410
263
                        }
411
61
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
8
                        for (size_t i = 0; i < sz; i++) {
406
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
4
                                            max_result_number, scale_diff_multiplier));
410
4
                        }
411
4
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EEST_EEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESS_IbLb1EEEEDaSO_SP_
Line
Count
Source
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
4
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESS_IbLb0EEEEDaSO_SP_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EEST_EEDaSO_SP_
Line
Count
Source
404
40
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
90
                        for (size_t i = 0; i < sz; i++) {
406
50
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
50
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
50
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
50
                                            max_result_number, scale_diff_multiplier));
410
50
                        }
411
40
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESQ_EEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb0EESP_IbLb1EEEEDaSL_SM_
Line
Count
Source
404
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
8
                        for (size_t i = 0; i < sz; i++) {
406
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
4
                                            max_result_number, scale_diff_multiplier));
410
4
                        }
411
4
                    },
Unexecuted instantiation: _ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESP_IbLb0EEEEDaSL_SM_
_ZZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEbENKUlT_T0_E_clISt17integral_constantIbLb1EESQ_EEDaSL_SM_
Line
Count
Source
404
11
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
22
                        for (size_t i = 0; i < sz; i++) {
406
11
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
11
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
11
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
11
                                            max_result_number, scale_diff_multiplier));
410
11
                        }
411
11
                    },
412
2.97k
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
2.97k
                    make_bool_variant(check_overflow_for_decimal));
414
415
2.97k
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
2.97k
        }
426
427
3.13k
        return column_result;
428
3.13k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE13vector_vectorILS1_20EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_20EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
154
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
154
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
154
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
154
        auto column_result =
386
154
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
154
        auto sz = column_left->size();
388
154
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
154
            if (check_overflow_for_decimal) {
390
154
                vector_vector<true>(column_left_ptr->get_data().data(),
391
154
                                    column_right_ptr->get_data().data(),
392
154
                                    column_result->get_data().data(), sz);
393
154
            } else {
394
0
                vector_vector<false>(column_left_ptr->get_data().data(),
395
0
                                     column_right_ptr->get_data().data(),
396
0
                                     column_result->get_data().data(), sz);
397
0
            }
398
        } else {
399
            const auto& a = column_left_ptr->get_data().data();
400
            const auto& b = column_right_ptr->get_data().data();
401
            const auto& c = column_result->get_data().data();
402
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
            std::visit(
404
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
                        for (size_t i = 0; i < sz; i++) {
406
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
                                            max_result_number, scale_diff_multiplier));
410
                        }
411
                    },
412
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
                    make_bool_variant(check_overflow_for_decimal));
414
415
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
                int8_t* sig = sig_uptr.get();
418
                for (size_t i = 0; i < sz; i++) {
419
                    sig[i] = sgn(c[i].value);
420
                }
421
                for (size_t i = 0; i < sz; i++) {
422
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
                }
424
            }
425
        }
426
427
154
        return column_result;
428
154
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
2
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
2
        auto column_result =
386
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
2
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
2
        } else {
399
2
            const auto& a = column_left_ptr->get_data().data();
400
2
            const auto& b = column_right_ptr->get_data().data();
401
2
            const auto& c = column_result->get_data().data();
402
2
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
2
            std::visit(
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
2
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
412
2
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
2
                    make_bool_variant(check_overflow_for_decimal));
414
415
2
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
2
        }
426
427
2
        return column_result;
428
2
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
26
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
26
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
26
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
26
        auto column_result =
386
26
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
26
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
26
        } else {
399
26
            const auto& a = column_left_ptr->get_data().data();
400
26
            const auto& b = column_right_ptr->get_data().data();
401
26
            const auto& c = column_result->get_data().data();
402
26
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
26
            std::visit(
404
26
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
26
                        for (size_t i = 0; i < sz; i++) {
406
26
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
26
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
26
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
26
                                            max_result_number, scale_diff_multiplier));
410
26
                        }
411
26
                    },
412
26
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
26
                    make_bool_variant(check_overflow_for_decimal));
414
415
26
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
26
        }
426
427
26
        return column_result;
428
26
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
2
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
2
        auto column_result =
386
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
2
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
2
        } else {
399
2
            const auto& a = column_left_ptr->get_data().data();
400
2
            const auto& b = column_right_ptr->get_data().data();
401
2
            const auto& c = column_result->get_data().data();
402
2
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
2
            std::visit(
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
2
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
412
2
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
2
                    make_bool_variant(check_overflow_for_decimal));
414
415
2
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
2
        }
426
427
2
        return column_result;
428
2
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
4
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
4
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
4
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
4
        auto column_result =
386
4
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
4
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
4
        } else {
399
4
            const auto& a = column_left_ptr->get_data().data();
400
4
            const auto& b = column_right_ptr->get_data().data();
401
4
            const auto& c = column_result->get_data().data();
402
4
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
4
            std::visit(
404
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
4
                        for (size_t i = 0; i < sz; i++) {
406
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
4
                                            max_result_number, scale_diff_multiplier));
410
4
                        }
411
4
                    },
412
4
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
4
                    make_bool_variant(check_overflow_for_decimal));
414
415
4
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
4
        }
426
427
4
        return column_result;
428
4
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
44
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
44
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
44
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
44
        auto column_result =
386
44
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
44
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
44
        } else {
399
44
            const auto& a = column_left_ptr->get_data().data();
400
44
            const auto& b = column_right_ptr->get_data().data();
401
44
            const auto& c = column_result->get_data().data();
402
44
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
44
            std::visit(
404
44
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
44
                        for (size_t i = 0; i < sz; i++) {
406
44
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
44
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
44
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
44
                                            max_result_number, scale_diff_multiplier));
410
44
                        }
411
44
                    },
412
44
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
44
                    make_bool_variant(check_overflow_for_decimal));
414
415
44
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
44
        }
426
427
44
        return column_result;
428
44
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
3
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
3
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
3
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
3
        auto column_result =
386
3
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
3
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
3
        } else {
399
3
            const auto& a = column_left_ptr->get_data().data();
400
3
            const auto& b = column_right_ptr->get_data().data();
401
3
            const auto& c = column_result->get_data().data();
402
3
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
3
            std::visit(
404
3
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
3
                        for (size_t i = 0; i < sz; i++) {
406
3
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
3
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
3
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
3
                                            max_result_number, scale_diff_multiplier));
410
3
                        }
411
3
                    },
412
3
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
3
                    make_bool_variant(check_overflow_for_decimal));
414
415
3
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
3
        }
426
427
3
        return column_result;
428
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
1
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
1
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
1
        auto column_result =
386
1
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
1
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
1
        } else {
399
1
            const auto& a = column_left_ptr->get_data().data();
400
1
            const auto& b = column_right_ptr->get_data().data();
401
1
            const auto& c = column_result->get_data().data();
402
1
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
1
            std::visit(
404
1
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
1
                        for (size_t i = 0; i < sz; i++) {
406
1
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
1
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
1
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
1
                                            max_result_number, scale_diff_multiplier));
410
1
                        }
411
1
                    },
412
1
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
1
                    make_bool_variant(check_overflow_for_decimal));
414
415
1
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
1
        }
426
427
1
        return column_result;
428
1
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
5
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
5
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
5
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
5
        auto column_result =
386
5
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
5
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
5
        } else {
399
5
            const auto& a = column_left_ptr->get_data().data();
400
5
            const auto& b = column_right_ptr->get_data().data();
401
5
            const auto& c = column_result->get_data().data();
402
5
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
5
            std::visit(
404
5
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
5
                        for (size_t i = 0; i < sz; i++) {
406
5
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
5
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
5
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
5
                                            max_result_number, scale_diff_multiplier));
410
5
                        }
411
5
                    },
412
5
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
5
                    make_bool_variant(check_overflow_for_decimal));
414
415
5
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
5
        }
426
427
5
        return column_result;
428
5
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
2.14k
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
2.14k
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
2.14k
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
2.14k
        auto column_result =
386
2.14k
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
2.14k
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
2.14k
        } else {
399
2.14k
            const auto& a = column_left_ptr->get_data().data();
400
2.14k
            const auto& b = column_right_ptr->get_data().data();
401
2.14k
            const auto& c = column_result->get_data().data();
402
2.14k
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
2.14k
            std::visit(
404
2.14k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
2.14k
                        for (size_t i = 0; i < sz; i++) {
406
2.14k
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2.14k
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2.14k
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2.14k
                                            max_result_number, scale_diff_multiplier));
410
2.14k
                        }
411
2.14k
                    },
412
2.14k
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
2.14k
                    make_bool_variant(check_overflow_for_decimal));
414
415
2.14k
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
2.14k
        }
426
427
2.14k
        return column_result;
428
2.14k
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
9
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
9
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
9
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
9
        auto column_result =
386
9
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
9
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
9
        } else {
399
9
            const auto& a = column_left_ptr->get_data().data();
400
9
            const auto& b = column_right_ptr->get_data().data();
401
9
            const auto& c = column_result->get_data().data();
402
9
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
9
            std::visit(
404
9
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
9
                        for (size_t i = 0; i < sz; i++) {
406
9
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
9
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
9
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
9
                                            max_result_number, scale_diff_multiplier));
410
9
                        }
411
9
                    },
412
9
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
9
                    make_bool_variant(check_overflow_for_decimal));
414
415
9
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
9
        }
426
427
9
        return column_result;
428
9
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
2
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
2
        auto column_result =
386
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
2
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
2
        } else {
399
2
            const auto& a = column_left_ptr->get_data().data();
400
2
            const auto& b = column_right_ptr->get_data().data();
401
2
            const auto& c = column_result->get_data().data();
402
2
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
2
            std::visit(
404
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
2
                        for (size_t i = 0; i < sz; i++) {
406
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
2
                                            max_result_number, scale_diff_multiplier));
410
2
                        }
411
2
                    },
412
2
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
2
                    make_bool_variant(check_overflow_for_decimal));
414
415
2
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
2
        }
426
427
2
        return column_result;
428
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
56
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
56
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
56
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
56
        auto column_result =
386
56
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
56
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
56
        } else {
399
56
            const auto& a = column_left_ptr->get_data().data();
400
56
            const auto& b = column_right_ptr->get_data().data();
401
56
            const auto& c = column_result->get_data().data();
402
56
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
56
            std::visit(
404
56
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
56
                        for (size_t i = 0; i < sz; i++) {
406
56
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
56
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
56
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
56
                                            max_result_number, scale_diff_multiplier));
410
56
                        }
411
56
                    },
412
56
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
56
                    make_bool_variant(check_overflow_for_decimal));
414
415
56
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
56
        }
426
427
56
        return column_result;
428
56
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
465
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
465
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
465
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
465
        auto column_result =
386
465
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
465
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
465
        } else {
399
465
            const auto& a = column_left_ptr->get_data().data();
400
465
            const auto& b = column_right_ptr->get_data().data();
401
465
            const auto& c = column_result->get_data().data();
402
465
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
465
            std::visit(
404
465
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
465
                        for (size_t i = 0; i < sz; i++) {
406
465
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
465
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
465
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
465
                                            max_result_number, scale_diff_multiplier));
410
465
                        }
411
465
                    },
412
465
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
465
                    make_bool_variant(check_overflow_for_decimal));
414
415
465
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
465
        }
426
427
465
        return column_result;
428
465
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
89
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
89
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
89
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
89
        auto column_result =
386
89
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
89
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
89
        } else {
399
89
            const auto& a = column_left_ptr->get_data().data();
400
89
            const auto& b = column_right_ptr->get_data().data();
401
89
            const auto& c = column_result->get_data().data();
402
89
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
89
            std::visit(
404
89
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
89
                        for (size_t i = 0; i < sz; i++) {
406
89
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
89
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
89
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
89
                                            max_result_number, scale_diff_multiplier));
410
89
                        }
411
89
                    },
412
89
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
89
                    make_bool_variant(check_overflow_for_decimal));
414
415
89
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
89
        }
426
427
89
        return column_result;
428
89
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
61
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
61
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
61
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
61
        auto column_result =
386
61
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
61
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
61
        } else {
399
61
            const auto& a = column_left_ptr->get_data().data();
400
61
            const auto& b = column_right_ptr->get_data().data();
401
61
            const auto& c = column_result->get_data().data();
402
61
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
61
            std::visit(
404
61
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
61
                        for (size_t i = 0; i < sz; i++) {
406
61
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
61
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
61
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
61
                                            max_result_number, scale_diff_multiplier));
410
61
                        }
411
61
                    },
412
61
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
61
                    make_bool_variant(check_overflow_for_decimal));
414
415
61
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
61
        }
426
427
61
        return column_result;
428
61
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
4
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
4
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
4
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
4
        auto column_result =
386
4
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
4
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
4
        } else {
399
4
            const auto& a = column_left_ptr->get_data().data();
400
4
            const auto& b = column_right_ptr->get_data().data();
401
4
            const auto& c = column_result->get_data().data();
402
4
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
4
            std::visit(
404
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
4
                        for (size_t i = 0; i < sz; i++) {
406
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
4
                                            max_result_number, scale_diff_multiplier));
410
4
                        }
411
4
                    },
412
4
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
4
                    make_bool_variant(check_overflow_for_decimal));
414
415
4
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
4
        }
426
427
4
        return column_result;
428
4
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESK_RKNS9_IXT_EEEb
Line
Count
Source
381
42
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
42
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
42
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
42
        auto column_result =
386
42
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
42
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
42
        } else {
399
42
            const auto& a = column_left_ptr->get_data().data();
400
42
            const auto& b = column_right_ptr->get_data().data();
401
42
            const auto& c = column_result->get_data().data();
402
42
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
42
            std::visit(
404
42
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
42
                        for (size_t i = 0; i < sz; i++) {
406
42
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
42
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
42
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
42
                                            max_result_number, scale_diff_multiplier));
410
42
                        }
411
42
                    },
412
42
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
42
                    make_bool_variant(check_overflow_for_decimal));
414
415
42
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
42
        }
426
427
42
        return column_result;
428
42
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE13vector_vectorILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EES8_S8_PKNS_15DataTypeDecimalILS1_35EEESC_RKNS_19PrimitiveTypeTraitsIXT_EE7CppTypeESH_RKNS9_IXT_EEEb
Line
Count
Source
381
15
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
382
15
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
383
15
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
384
385
15
        auto column_result =
386
15
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
387
15
        auto sz = column_left->size();
388
        if constexpr (ResultType == TYPE_DECIMALV2) {
389
            if (check_overflow_for_decimal) {
390
                vector_vector<true>(column_left_ptr->get_data().data(),
391
                                    column_right_ptr->get_data().data(),
392
                                    column_result->get_data().data(), sz);
393
            } else {
394
                vector_vector<false>(column_left_ptr->get_data().data(),
395
                                     column_right_ptr->get_data().data(),
396
                                     column_result->get_data().data(), sz);
397
            }
398
15
        } else {
399
15
            const auto& a = column_left_ptr->get_data().data();
400
15
            const auto& b = column_right_ptr->get_data().data();
401
15
            const auto& c = column_result->get_data().data();
402
15
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
403
15
            std::visit(
404
15
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
405
15
                        for (size_t i = 0; i < sz; i++) {
406
15
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
407
15
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
408
15
                                            a[i], b[i], *type_left, *type_right, res_data_type,
409
15
                                            max_result_number, scale_diff_multiplier));
410
15
                        }
411
15
                    },
412
15
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
413
15
                    make_bool_variant(check_overflow_for_decimal));
414
415
15
            if (need_adjust_scale && !check_overflow_for_decimal) {
416
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
417
0
                int8_t* sig = sig_uptr.get();
418
0
                for (size_t i = 0; i < sz; i++) {
419
0
                    sig[i] = sgn(c[i].value);
420
0
                }
421
0
                for (size_t i = 0; i < sz; i++) {
422
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
423
0
                }
424
0
            }
425
15
        }
426
427
15
        return column_result;
428
15
    }
429
430
    template <bool need_adjust_scale, bool check_overflow, PrimitiveType ResultType>
431
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
432
    static ALWAYS_INLINE typename PrimitiveTypeTraits<ResultType>::CppType::NativeType apply(
433
            ArgNativeTypeA a, ArgNativeTypeB b, const DataTypeA& type_left,
434
            const DataTypeB& type_right, const DataTypeDecimal<ResultType>& type_result,
435
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
436
5.23M
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
5.23M
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
5.23M
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
5.23M
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
81
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
61
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
61
                    if constexpr (need_adjust_scale) {
445
60
                        if (res256 > 0) {
446
57
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
57
                                     scale_diff_multiplier.value;
448
449
57
                        } else {
450
3
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
3
                                     scale_diff_multiplier.value;
452
3
                        }
453
60
                    }
454
                    // check if final result is overflow
455
61
                    if (res256 > wide::Int256(max_result_number.value) ||
456
61
                        res256 < wide::Int256(-max_result_number.value)) {
457
8
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
8
                                                              type_result.get_scale()}
459
8
                                                  .to_string(Decimal256(res256));
460
8
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
8
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
8
                                        type_left.to_string(ArgA(a)), "multiply",
463
8
                                        type_right.to_string(ArgB(b)), result_str,
464
8
                                        type_result.get_name());
465
53
                    } else {
466
53
                        res = res256;
467
53
                    }
468
61
                } else {
469
20
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
20
                                                          type_result.get_scale()}
471
20
                                              .to_string(Decimal256(res));
472
20
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
20
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
20
                                    type_left.to_string(ArgA(a)), "multiply",
475
20
                                    type_right.to_string(ArgB(b)), result_str,
476
20
                                    type_result.get_name());
477
20
                }
478
5.23M
            } else {
479
                // round to final result precision
480
5.23M
                if constexpr (need_adjust_scale) {
481
123
                    if (res >= 0) {
482
120
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
120
                    } else {
484
3
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
3
                    }
486
123
                }
487
5.26M
                if (res > max_result_number.value || res < -max_result_number.value) {
488
5
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
5
                                                          type_result.get_scale()}
490
5
                                              .to_string(Decimal256(res));
491
5
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
5
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
5
                                    type_left.to_string(ArgA(a)), "multiply",
494
5
                                    type_right.to_string(ArgB(b)), result_str,
495
5
                                    type_result.get_name());
496
5
                }
497
5.23M
            }
498
5.23M
            return res;
499
5.23M
        } else {
500
0
            res = apply<ResultType>(a, b);
501
0
            if constexpr (need_adjust_scale) {
502
0
                if (res >= 0) {
503
0
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
0
                } else {
505
0
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
0
                }
507
0
            }
508
0
            return res;
509
0
        }
510
5.23M
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
436
20
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
20
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
20
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
20
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
20
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
20
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
20
            }
498
20
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
20
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
436
68
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
68
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
68
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
68
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
68
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
68
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
68
            }
498
68
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
68
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiiRKNS_15DataTypeDecimalILS1_28EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
2
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
2
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
2
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
2
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
2
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
2
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
2
            }
498
2
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
11
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
11
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
11
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
11
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
11
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
11
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
11
            }
498
11
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
11
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEilRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
4
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
4
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
4
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
4
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
3
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
3
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
3
                    if constexpr (need_adjust_scale) {
445
3
                        if (res256 > 0) {
446
2
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
2
                                     scale_diff_multiplier.value;
448
449
2
                        } else {
450
1
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
1
                                     scale_diff_multiplier.value;
452
1
                        }
453
3
                    }
454
                    // check if final result is overflow
455
3
                    if (res256 > wide::Int256(max_result_number.value) ||
456
3
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
3
                    } else {
466
3
                        res = res256;
467
3
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
3
            } else {
479
                // round to final result precision
480
1
                if constexpr (need_adjust_scale) {
481
1
                    if (res >= 0) {
482
1
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
1
                    } else {
484
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
0
                    }
486
1
                }
487
1
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
1
            }
498
4
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
4
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
3.55k
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
3.55k
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
3.55k
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
3.55k
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
3.55k
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
3.55k
                if (res > max_result_number.value || res < -max_result_number.value) {
488
1
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
1
                                                          type_result.get_scale()}
490
1
                                              .to_string(Decimal256(res));
491
1
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
1
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
1
                                    type_left.to_string(ArgA(a)), "multiply",
494
1
                                    type_right.to_string(ArgB(b)), result_str,
495
1
                                    type_result.get_name());
496
1
                }
497
3.55k
            }
498
3.55k
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
3.55k
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEinRKNS_15DataTypeDecimalILS1_28EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
3
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
3
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
3
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
3
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
3
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
3
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
3
            }
498
3
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEiN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_28EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
29.8k
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
29.8k
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
29.8k
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
29.8k
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
29.8k
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
29.8k
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
29.8k
            }
498
29.8k
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
29.8k
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
13
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
13
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
13
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
13
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
13
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
13
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
13
            }
498
13
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
13
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEliRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
436
2.87M
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
2.87M
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
2.87M
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
2.87M
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
2.87M
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
2.88M
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
2.87M
            }
498
2.87M
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
2.87M
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEllRKNS_15DataTypeDecimalILS1_29EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
11
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
11
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
11
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
11
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
5
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
5
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
5
                    if constexpr (need_adjust_scale) {
445
5
                        if (res256 > 0) {
446
5
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
5
                                     scale_diff_multiplier.value;
448
449
5
                        } else {
450
0
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
0
                                     scale_diff_multiplier.value;
452
0
                        }
453
5
                    }
454
                    // check if final result is overflow
455
5
                    if (res256 > wide::Int256(max_result_number.value) ||
456
5
                        res256 < wide::Int256(-max_result_number.value)) {
457
1
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
1
                                                              type_result.get_scale()}
459
1
                                                  .to_string(Decimal256(res256));
460
1
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
1
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
1
                                        type_left.to_string(ArgA(a)), "multiply",
463
1
                                        type_right.to_string(ArgB(b)), result_str,
464
1
                                        type_result.get_name());
465
4
                    } else {
466
4
                        res = res256;
467
4
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
6
            } else {
479
                // round to final result precision
480
6
                if constexpr (need_adjust_scale) {
481
6
                    if (res >= 0) {
482
4
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
4
                    } else {
484
2
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
2
                    }
486
6
                }
487
6
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
6
            }
498
11
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
11
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
1
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
1
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
1
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
1
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
1
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
1
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
1
            }
498
1
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
1
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElnRKNS_15DataTypeDecimalILS1_29EEERKNS8_ILS1_30EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
2
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
2
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
2
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
2
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
2
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
2
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
2
            }
498
2
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeElN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_29EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
1
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
1
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
1
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
1
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
0
                    if constexpr (need_adjust_scale) {
445
0
                        if (res256 > 0) {
446
0
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
0
                                     scale_diff_multiplier.value;
448
449
0
                        } else {
450
0
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
0
                                     scale_diff_multiplier.value;
452
0
                        }
453
0
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
1
            } else {
479
                // round to final result precision
480
1
                if constexpr (need_adjust_scale) {
481
1
                    if (res >= 0) {
482
1
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
1
                    } else {
484
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
0
                    }
486
1
                }
487
1
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
1
            }
498
1
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
1
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
760
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
760
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
760
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
760
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
760
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
760
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
760
            }
498
760
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
760
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEniRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_28EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
7
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
7
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
7
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
7
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
1
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
1
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
1
                    if constexpr (need_adjust_scale) {
445
1
                        if (res256 > 0) {
446
0
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
0
                                     scale_diff_multiplier.value;
448
449
1
                        } else {
450
1
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
1
                                     scale_diff_multiplier.value;
452
1
                        }
453
1
                    }
454
                    // check if final result is overflow
455
1
                    if (res256 > wide::Int256(max_result_number.value) ||
456
1
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
1
                    } else {
466
1
                        res = res256;
467
1
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
6
            } else {
479
                // round to final result precision
480
6
                if constexpr (need_adjust_scale) {
481
6
                    if (res >= 0) {
482
5
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
5
                    } else {
484
1
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
1
                    }
486
6
                }
487
6
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
6
            }
498
7
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
7
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
2.32M
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
2.32M
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
2.32M
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
2.32M
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
0
                    if (res256 > wide::Int256(max_result_number.value) ||
456
0
                        res256 < wide::Int256(-max_result_number.value)) {
457
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
0
                                                              type_result.get_scale()}
459
0
                                                  .to_string(Decimal256(res256));
460
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
0
                                        type_left.to_string(ArgA(a)), "multiply",
463
0
                                        type_right.to_string(ArgB(b)), result_str,
464
0
                                        type_result.get_name());
465
0
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
2.32M
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
2.34M
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
2.32M
            }
498
2.32M
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
2.32M
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnlRKNS_15DataTypeDecimalILS1_30EEERKNS8_ILS1_29EEERKNS8_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
436
115
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
115
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
115
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
115
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
51
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
51
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
51
                    if constexpr (need_adjust_scale) {
445
51
                        if (res256 > 0) {
446
50
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
50
                                     scale_diff_multiplier.value;
448
449
50
                        } else {
450
1
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
1
                                     scale_diff_multiplier.value;
452
1
                        }
453
51
                    }
454
                    // check if final result is overflow
455
51
                    if (res256 > wide::Int256(max_result_number.value) ||
456
51
                        res256 < wide::Int256(-max_result_number.value)) {
457
6
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
6
                                                              type_result.get_scale()}
459
6
                                                  .to_string(Decimal256(res256));
460
6
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
6
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
6
                                        type_left.to_string(ArgA(a)), "multiply",
463
6
                                        type_right.to_string(ArgB(b)), result_str,
464
6
                                        type_result.get_name());
465
45
                    } else {
466
45
                        res = res256;
467
45
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
64
            } else {
479
                // round to final result precision
480
64
                if constexpr (need_adjust_scale) {
481
64
                    if (res >= 0) {
482
64
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
64
                    } else {
484
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
0
                    }
486
64
                }
487
64
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
64
            }
498
115
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
115
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
436
5
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
5
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
5
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
5
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
1
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
1
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
1
                    if (res256 > wide::Int256(max_result_number.value) ||
456
1
                        res256 < wide::Int256(-max_result_number.value)) {
457
1
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
1
                                                              type_result.get_scale()}
459
1
                                                  .to_string(Decimal256(res256));
460
1
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
1
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
1
                                        type_left.to_string(ArgA(a)), "multiply",
463
1
                                        type_right.to_string(ArgB(b)), result_str,
464
1
                                        type_result.get_name());
465
1
                    } else {
466
0
                        res = res256;
467
0
                    }
468
                } else {
469
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
                                                          type_result.get_scale()}
471
                                              .to_string(Decimal256(res));
472
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
                                    type_left.to_string(ArgA(a)), "multiply",
475
                                    type_right.to_string(ArgB(b)), result_str,
476
                                    type_result.get_name());
477
                }
478
4
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
4
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
4
            }
498
5
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
5
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_30EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
436
263
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
263
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
263
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
263
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
263
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
263
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
263
            }
498
263
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
263
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnN4wide7integerILm256EiEERKNS_15DataTypeDecimalILS1_30EEERKNSB_ILS1_35EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Line
Count
Source
436
3
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
3
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
3
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
3
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
3
            } else {
479
                // round to final result precision
480
3
                if constexpr (need_adjust_scale) {
481
3
                    if (res >= 0) {
482
3
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
3
                    } else {
484
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
0
                    }
486
3
                }
487
3
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
3
            }
498
3
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEiRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_28EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Line
Count
Source
436
4
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
4
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
4
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
4
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
4
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
4
                if (res > max_result_number.value || res < -max_result_number.value) {
488
4
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
4
                                                          type_result.get_scale()}
490
4
                                              .to_string(Decimal256(res));
491
4
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
4
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
4
                                    type_left.to_string(ArgA(a)), "multiply",
494
4
                                    type_right.to_string(ArgB(b)), result_str,
495
4
                                    type_result.get_name());
496
4
                }
497
4
            }
498
0
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
4
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEElRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_29EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Line
Count
Source
436
50
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
50
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
50
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
50
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
8
                } else {
469
8
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
8
                                                          type_result.get_scale()}
471
8
                                              .to_string(Decimal256(res));
472
8
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
8
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
8
                                    type_left.to_string(ArgA(a)), "multiply",
475
8
                                    type_right.to_string(ArgB(b)), result_str,
476
8
                                    type_result.get_name());
477
8
                }
478
42
            } else {
479
                // round to final result precision
480
42
                if constexpr (need_adjust_scale) {
481
42
                    if (res >= 0) {
482
42
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
42
                    } else {
484
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
0
                    }
486
42
                }
487
42
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
42
            }
498
50
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
50
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEEnRKNS_15DataTypeDecimalILS1_35EEERKNSB_ILS1_30EEERKNSB_IXT1_EEERKNS5_7CppTypeESN_
Line
Count
Source
436
2
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
2
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
2
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
2
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
2
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
2
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
2
            }
498
2
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
12
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
12
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
12
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
12
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
12
                } else {
469
12
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
12
                                                          type_result.get_scale()}
471
12
                                              .to_string(Decimal256(res));
472
12
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
12
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
12
                                    type_left.to_string(ArgA(a)), "multiply",
475
12
                                    type_right.to_string(ArgB(b)), result_str,
476
12
                                    type_result.get_name());
477
12
                }
478
12
            } else {
479
                // round to final result precision
480
0
                if constexpr (need_adjust_scale) {
481
0
                    if (res >= 0) {
482
0
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
0
                    } else {
484
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
0
                    }
486
0
                }
487
0
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
0
            }
498
12
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
12
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb1ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb0ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb1ELS1_28EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb0ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb1ELS1_29EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb0ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb1ELS1_30EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb0ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE5applyILb0ELb1ELS1_35EQaaclL_ZNS_10is_decimalES1_ETL0_1_EneTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEN4wide7integerILm256EiEESA_RKNS_15DataTypeDecimalILS1_35EEESE_RKNSB_IXT1_EEERKNS5_7CppTypeESK_
Line
Count
Source
436
4
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
437
4
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
438
4
        if constexpr (check_overflow) {
439
            // TODO handle overflow gracefully
440
4
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
441
                // multiply
442
                if constexpr (ResultType == TYPE_DECIMAL128I) {
443
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
444
                    if constexpr (need_adjust_scale) {
445
                        if (res256 > 0) {
446
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
447
                                     scale_diff_multiplier.value;
448
449
                        } else {
450
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
451
                                     scale_diff_multiplier.value;
452
                        }
453
                    }
454
                    // check if final result is overflow
455
                    if (res256 > wide::Int256(max_result_number.value) ||
456
                        res256 < wide::Int256(-max_result_number.value)) {
457
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
458
                                                              type_result.get_scale()}
459
                                                  .to_string(Decimal256(res256));
460
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
461
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
462
                                        type_left.to_string(ArgA(a)), "multiply",
463
                                        type_right.to_string(ArgB(b)), result_str,
464
                                        type_result.get_name());
465
                    } else {
466
                        res = res256;
467
                    }
468
0
                } else {
469
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
470
0
                                                          type_result.get_scale()}
471
0
                                              .to_string(Decimal256(res));
472
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
473
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
474
0
                                    type_left.to_string(ArgA(a)), "multiply",
475
0
                                    type_right.to_string(ArgB(b)), result_str,
476
0
                                    type_result.get_name());
477
0
                }
478
4
            } else {
479
                // round to final result precision
480
                if constexpr (need_adjust_scale) {
481
                    if (res >= 0) {
482
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
483
                    } else {
484
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
485
                    }
486
                }
487
4
                if (res > max_result_number.value || res < -max_result_number.value) {
488
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
489
0
                                                          type_result.get_scale()}
490
0
                                              .to_string(Decimal256(res));
491
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
492
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
493
0
                                    type_left.to_string(ArgA(a)), "multiply",
494
0
                                    type_right.to_string(ArgB(b)), result_str,
495
0
                                    type_result.get_name());
496
0
                }
497
4
            }
498
4
            return res;
499
        } else {
500
            res = apply<ResultType>(a, b);
501
            if constexpr (need_adjust_scale) {
502
                if (res >= 0) {
503
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
504
                } else {
505
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
506
                }
507
            }
508
            return res;
509
        }
510
4
    }
511
512
    template <bool need_adjust_scale, bool check_overflow, PrimitiveType ResultType>
513
        requires(ResultType == TYPE_DECIMALV2)
514
    static ALWAYS_INLINE typename PrimitiveTypeTraits<ResultType>::CppType::NativeType apply(
515
            ArgNativeTypeA a, ArgNativeTypeB b, const DataTypeA& type_left,
516
            const DataTypeB& type_right, const DataTypeDecimal<ResultType>& type_result,
517
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
518
15
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
519
        // Now, Doris only support decimal +-*/ decimal.
520
15
        if constexpr (check_overflow) {
521
15
            auto res = apply(DecimalV2Value(a), DecimalV2Value(b)).value();
522
15
            if (res > max_result_number.value() || res < -max_result_number.value()) {
523
14
                throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
524
14
                                "Arithmetic overflow: {} {} {} = {}, result type: {}",
525
14
                                DecimalV2Value(a).to_string(), "multiply",
526
14
                                DecimalV2Value(b).to_string(), DecimalV2Value(res).to_string(),
527
14
                                type_to_string(ResultType));
528
14
            }
529
1
            return res;
530
15
        } else {
531
0
            return apply(DecimalV2Value(a), DecimalV2Value(b)).value();
532
0
        }
533
15
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE5applyILb1ELb1ELS1_20EQeqTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_20EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
518
15
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
519
        // Now, Doris only support decimal +-*/ decimal.
520
15
        if constexpr (check_overflow) {
521
15
            auto res = apply(DecimalV2Value(a), DecimalV2Value(b)).value();
522
15
            if (res > max_result_number.value() || res < -max_result_number.value()) {
523
14
                throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
524
14
                                "Arithmetic overflow: {} {} {} = {}, result type: {}",
525
14
                                DecimalV2Value(a).to_string(), "multiply",
526
14
                                DecimalV2Value(b).to_string(), DecimalV2Value(res).to_string(),
527
14
                                type_to_string(ResultType));
528
14
            }
529
1
            return res;
530
        } else {
531
            return apply(DecimalV2Value(a), DecimalV2Value(b)).value();
532
        }
533
15
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE5applyILb1ELb0ELS1_20EQeqTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_20EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE5applyILb0ELb0ELS1_20EQeqTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_20EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE5applyILb0ELb1ELS1_20EQeqTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_20EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
534
535
    template <PrimitiveType PT>
536
    static std::pair<typename PrimitiveTypeTraits<PT>::CppType,
537
                     typename PrimitiveTypeTraits<PT>::CppType>
538
    get_max_and_multiplier(const DataTypeA* type_left, const DataTypeB* type_right,
539
3.52k
                           const DataTypeDecimal<PT>& type_result) {
540
3.52k
        auto max_result_number =
541
3.52k
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
3.52k
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
3.52k
        auto result_scale = type_result.get_scale();
545
3.52k
        DCHECK(orig_result_scale >= result_scale);
546
3.52k
        auto scale_diff_multiplier =
547
3.52k
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
3.52k
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
3.52k
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
3.52k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE22get_max_and_multiplierILS1_20EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_20EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
169
                           const DataTypeDecimal<PT>& type_result) {
540
169
        auto max_result_number =
541
169
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
169
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
169
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
169
        auto scale_diff_multiplier =
547
169
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
169
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
169
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
169
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
14
                           const DataTypeDecimal<PT>& type_result) {
540
14
        auto max_result_number =
541
14
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
14
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
14
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
14
        auto scale_diff_multiplier =
547
14
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
14
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
14
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
14
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
46
                           const DataTypeDecimal<PT>& type_result) {
540
46
        auto max_result_number =
541
46
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
46
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
46
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
46
        auto scale_diff_multiplier =
547
46
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
46
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
46
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
46
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Line
Count
Source
539
2
                           const DataTypeDecimal<PT>& type_result) {
540
2
        auto max_result_number =
541
2
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
2
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
2
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
2
        auto scale_diff_multiplier =
547
2
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
2
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
2
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
2
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Line
Count
Source
539
9
                           const DataTypeDecimal<PT>& type_result) {
540
9
        auto max_result_number =
541
9
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
9
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
9
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
9
        auto scale_diff_multiplier =
547
9
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
9
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
9
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
9
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
539
98
                           const DataTypeDecimal<PT>& type_result) {
540
98
        auto max_result_number =
541
98
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
98
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
98
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
98
        auto scale_diff_multiplier =
547
98
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
98
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
98
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
98
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
539
3
                           const DataTypeDecimal<PT>& type_result) {
540
3
        auto max_result_number =
541
3
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
3
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
3
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
3
        auto scale_diff_multiplier =
547
3
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
3
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
3
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
3
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Line
Count
Source
539
72
                           const DataTypeDecimal<PT>& type_result) {
540
72
        auto max_result_number =
541
72
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
72
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
72
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
72
        auto scale_diff_multiplier =
547
72
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
72
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
72
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
72
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Line
Count
Source
539
9
                           const DataTypeDecimal<PT>& type_result) {
540
9
        auto max_result_number =
541
9
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
9
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
9
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
9
        auto scale_diff_multiplier =
547
9
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
9
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
9
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
9
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEESC_RKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
2.15k
                           const DataTypeDecimal<PT>& type_result) {
540
2.15k
        auto max_result_number =
541
2.15k
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
2.15k
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
2.15k
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
2.15k
        auto scale_diff_multiplier =
547
2.15k
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
2.15k
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
2.15k
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
2.15k
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
539
10
                           const DataTypeDecimal<PT>& type_result) {
540
10
        auto max_result_number =
541
10
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
10
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
10
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
10
        auto scale_diff_multiplier =
547
10
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
10
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
10
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
10
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
539
2
                           const DataTypeDecimal<PT>& type_result) {
540
2
        auto max_result_number =
541
2
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
2
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
2
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
2
        auto scale_diff_multiplier =
547
2
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
2
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
2
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
2
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Line
Count
Source
539
255
                           const DataTypeDecimal<PT>& type_result) {
540
255
        auto max_result_number =
541
255
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
255
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
255
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
255
        auto scale_diff_multiplier =
547
255
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
255
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
255
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
255
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Line
Count
Source
539
470
                           const DataTypeDecimal<PT>& type_result) {
540
470
        auto max_result_number =
541
470
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
470
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
470
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
470
        auto scale_diff_multiplier =
547
470
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
470
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
470
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
470
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEESC_RKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
91
                           const DataTypeDecimal<PT>& type_result) {
540
91
        auto max_result_number =
541
91
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
91
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
91
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
91
        auto scale_diff_multiplier =
547
91
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
91
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
91
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
91
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
61
                           const DataTypeDecimal<PT>& type_result) {
540
61
        auto max_result_number =
541
61
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
61
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
61
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
61
        auto scale_diff_multiplier =
547
61
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
61
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
61
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
61
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEEPKNS9_ILS1_35EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Line
Count
Source
539
6
                           const DataTypeDecimal<PT>& type_result) {
540
6
        auto max_result_number =
541
6
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
6
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
6
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
6
        auto scale_diff_multiplier =
547
6
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
6
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
6
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
6
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
539
42
                           const DataTypeDecimal<PT>& type_result) {
540
42
        auto max_result_number =
541
42
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
42
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
42
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
42
        auto scale_diff_multiplier =
547
42
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
42
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
42
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
42
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEESC_RKNS9_IXT_EEE
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEESC_RKNS9_IXT_EEE
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_35EEESC_RKNS9_IXT_EEE
Line
Count
Source
539
16
                           const DataTypeDecimal<PT>& type_result) {
540
16
        auto max_result_number =
541
16
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
542
543
16
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
544
16
        auto result_scale = type_result.get_scale();
545
        DCHECK(orig_result_scale >= result_scale);
546
16
        auto scale_diff_multiplier =
547
16
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
548
16
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
549
16
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
550
16
    }
551
};
552
553
template <typename Impl>
554
class FunctionMultiply : public IFunction {
555
    static constexpr bool result_is_decimal = Impl::result_is_decimal;
556
557
public:
558
    static constexpr auto name = "multiply";
559
560
10.6k
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE6createEv
Line
Count
Source
560
61
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE6createEv
Line
Count
Source
560
36
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE6createEv
Line
Count
Source
560
10
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE6createEv
Line
Count
Source
560
34
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE6createEv
Line
Count
Source
560
6
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE6createEv
Line
Count
Source
560
36
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE6createEv
Line
Count
Source
560
172
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE6createEv
Line
Count
Source
560
13
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE6createEv
Line
Count
Source
560
6
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE6createEv
Line
Count
Source
560
216
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE6createEv
Line
Count
Source
560
86
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE6createEv
Line
Count
Source
560
120
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE6createEv
Line
Count
Source
560
6
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE6createEv
Line
Count
Source
560
11
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE6createEv
Line
Count
Source
560
6
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE6createEv
Line
Count
Source
560
27
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE6createEv
Line
Count
Source
560
20
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE6createEv
Line
Count
Source
560
6
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE6createEv
Line
Count
Source
560
21
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE6createEv
Line
Count
Source
560
33
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE6createEv
Line
Count
Source
560
9.20k
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE6createEv
Line
Count
Source
560
47
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE6createEv
Line
Count
Source
560
6
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE6createEv
Line
Count
Source
560
495
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
561
562
10.6k
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEEC2Ev
Line
Count
Source
562
61
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEEC2Ev
Line
Count
Source
562
36
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEEC2Ev
Line
Count
Source
562
10
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEEC2Ev
Line
Count
Source
562
34
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEEC2Ev
Line
Count
Source
562
6
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEEC2Ev
Line
Count
Source
562
36
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEEC2Ev
Line
Count
Source
562
172
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEEC2Ev
Line
Count
Source
562
13
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEEC2Ev
Line
Count
Source
562
6
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEEC2Ev
Line
Count
Source
562
216
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEEC2Ev
Line
Count
Source
562
86
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEEC2Ev
Line
Count
Source
562
120
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEEC2Ev
Line
Count
Source
562
6
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEEC2Ev
Line
Count
Source
562
11
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEEC2Ev
Line
Count
Source
562
6
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEEC2Ev
Line
Count
Source
562
27
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEEC2Ev
Line
Count
Source
562
20
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEEC2Ev
Line
Count
Source
562
6
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEEC2Ev
Line
Count
Source
562
21
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEEC2Ev
Line
Count
Source
562
33
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEEC2Ev
Line
Count
Source
562
9.20k
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEEC2Ev
Line
Count
Source
562
47
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEEC2Ev
Line
Count
Source
562
6
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEEC2Ev
Line
Count
Source
562
495
    FunctionMultiply() = default;
563
564
24
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE8get_nameB5cxx11Ev
Line
Count
Source
564
1
    String get_name() const override { return name; }
565
566
3.95k
    bool need_replace_null_data_to_default() const override {
567
3.95k
        return Impl::need_replace_null_data_to_default;
568
3.95k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
120
    bool need_replace_null_data_to_default() const override {
567
120
        return Impl::need_replace_null_data_to_default;
568
120
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
60
    bool need_replace_null_data_to_default() const override {
567
60
        return Impl::need_replace_null_data_to_default;
568
60
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
11
    bool need_replace_null_data_to_default() const override {
567
11
        return Impl::need_replace_null_data_to_default;
568
11
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
33
    bool need_replace_null_data_to_default() const override {
567
33
        return Impl::need_replace_null_data_to_default;
568
33
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
25
    bool need_replace_null_data_to_default() const override {
567
25
        return Impl::need_replace_null_data_to_default;
568
25
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
21
    bool need_replace_null_data_to_default() const override {
567
21
        return Impl::need_replace_null_data_to_default;
568
21
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
12
    bool need_replace_null_data_to_default() const override {
567
12
        return Impl::need_replace_null_data_to_default;
568
12
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
109
    bool need_replace_null_data_to_default() const override {
567
109
        return Impl::need_replace_null_data_to_default;
568
109
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
3
    bool need_replace_null_data_to_default() const override {
567
3
        return Impl::need_replace_null_data_to_default;
568
3
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
148
    bool need_replace_null_data_to_default() const override {
567
148
        return Impl::need_replace_null_data_to_default;
568
148
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
6
    bool need_replace_null_data_to_default() const override {
567
6
        return Impl::need_replace_null_data_to_default;
568
6
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
40
    bool need_replace_null_data_to_default() const override {
567
40
        return Impl::need_replace_null_data_to_default;
568
40
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
14
    bool need_replace_null_data_to_default() const override {
567
14
        return Impl::need_replace_null_data_to_default;
568
14
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
23
    bool need_replace_null_data_to_default() const override {
567
23
        return Impl::need_replace_null_data_to_default;
568
23
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
44
    bool need_replace_null_data_to_default() const override {
567
44
        return Impl::need_replace_null_data_to_default;
568
44
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
737
    bool need_replace_null_data_to_default() const override {
567
737
        return Impl::need_replace_null_data_to_default;
568
737
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
82
    bool need_replace_null_data_to_default() const override {
567
82
        return Impl::need_replace_null_data_to_default;
568
82
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
566
2.46k
    bool need_replace_null_data_to_default() const override {
567
2.46k
        return Impl::need_replace_null_data_to_default;
568
2.46k
    }
569
570
51.2k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
513
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
228
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
38
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
288
    bool use_default_implementation_for_constants() const final { return false; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE40use_default_implementation_for_constantsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
262
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
4.77k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
43
    bool use_default_implementation_for_constants() const final { return false; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE40use_default_implementation_for_constantsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
1.27k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
1.04k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
689
    bool use_default_implementation_for_constants() const final { return false; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE40use_default_implementation_for_constantsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
23
    bool use_default_implementation_for_constants() const final { return false; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE40use_default_implementation_for_constantsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
167
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
76
    bool use_default_implementation_for_constants() const final { return false; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE40use_default_implementation_for_constantsEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
120
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
255
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
32.2k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
441
    bool use_default_implementation_for_constants() const final { return false; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE40use_default_implementation_for_constantsEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
570
8.78k
    bool use_default_implementation_for_constants() const final { return false; }
571
572
10.5k
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE23get_number_of_argumentsEv
Line
Count
Source
572
55
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE23get_number_of_argumentsEv
Line
Count
Source
572
30
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE23get_number_of_argumentsEv
Line
Count
Source
572
4
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
572
28
    size_t get_number_of_arguments() const override { return 2; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE23get_number_of_argumentsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE23get_number_of_argumentsEv
Line
Count
Source
572
30
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE23get_number_of_argumentsEv
Line
Count
Source
572
166
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
572
7
    size_t get_number_of_arguments() const override { return 2; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE23get_number_of_argumentsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE23get_number_of_argumentsEv
Line
Count
Source
572
210
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE23get_number_of_argumentsEv
Line
Count
Source
572
80
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
572
114
    size_t get_number_of_arguments() const override { return 2; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE23get_number_of_argumentsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE23get_number_of_argumentsEv
Line
Count
Source
572
5
    size_t get_number_of_arguments() const override { return 2; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE23get_number_of_argumentsEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
572
21
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE23get_number_of_argumentsEv
Line
Count
Source
572
14
    size_t get_number_of_arguments() const override { return 2; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE23get_number_of_argumentsEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE23get_number_of_argumentsEv
Line
Count
Source
572
15
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE23get_number_of_argumentsEv
Line
Count
Source
572
27
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE23get_number_of_argumentsEv
Line
Count
Source
572
9.18k
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE23get_number_of_argumentsEv
Line
Count
Source
572
41
    size_t get_number_of_arguments() const override { return 2; }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE23get_number_of_argumentsEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE23get_number_of_argumentsEv
Line
Count
Source
572
489
    size_t get_number_of_arguments() const override { return 2; }
573
574
120
    DataTypes get_variadic_argument_types_impl() const override {
575
120
        return Impl::get_variadic_argument_types();
576
120
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE32get_variadic_argument_types_implEv
Line
Count
Source
574
5
    DataTypes get_variadic_argument_types_impl() const override {
575
5
        return Impl::get_variadic_argument_types();
576
5
    }
577
578
10.5k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
10.5k
        return arguments[0];
580
10.5k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
55
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
55
        return arguments[0];
580
55
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
30
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
30
        return arguments[0];
580
30
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
4
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
4
        return arguments[0];
580
4
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
28
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
28
        return arguments[0];
580
28
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
30
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
30
        return arguments[0];
580
30
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
166
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
166
        return arguments[0];
580
166
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
7
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
7
        return arguments[0];
580
7
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
210
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
210
        return arguments[0];
580
210
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
80
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
80
        return arguments[0];
580
80
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
114
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
114
        return arguments[0];
580
114
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
5
        return arguments[0];
580
5
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
21
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
21
        return arguments[0];
580
21
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
14
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
14
        return arguments[0];
580
14
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
15
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
15
        return arguments[0];
580
15
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
27
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
27
        return arguments[0];
580
27
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
9.21k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
9.21k
        return arguments[0];
580
9.21k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
41
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
41
        return arguments[0];
580
41
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
578
489
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
579
489
        return arguments[0];
580
489
    }
581
582
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
583
16.4k
                        uint32_t result, size_t input_rows_count) const override {
584
16.4k
        auto& column_left = block.get_by_position(arguments[0]).column;
585
16.4k
        auto& column_right = block.get_by_position(arguments[1]).column;
586
16.4k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
16.4k
                block.get_by_position(arguments[0]).type.get());
588
16.4k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
16.4k
                block.get_by_position(arguments[1]).type.get());
590
16.4k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
16.4k
        bool is_const_left = is_column_const(*column_left);
592
16.4k
        bool is_const_right = is_column_const(*column_right);
593
594
16.4k
        ColumnPtr column_result = nullptr;
595
16.4k
        if (is_const_left && is_const_right) {
596
33
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
33
                                              res_data_type, context->check_overflow_for_decimal());
598
16.4k
        } else if (is_const_left) {
599
67
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
67
                                            res_data_type, context->check_overflow_for_decimal());
601
16.3k
        } else if (is_const_right) {
602
9.52k
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
9.52k
                                            res_data_type, context->check_overflow_for_decimal());
604
9.52k
        } else {
605
6.85k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
6.85k
                                          res_data_type, context->check_overflow_for_decimal());
607
6.85k
        }
608
16.4k
        block.replace_by_position(result, std::move(column_result));
609
16.4k
        return Status::OK();
610
16.4k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
169
                        uint32_t result, size_t input_rows_count) const override {
584
169
        auto& column_left = block.get_by_position(arguments[0]).column;
585
169
        auto& column_right = block.get_by_position(arguments[1]).column;
586
169
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
169
                block.get_by_position(arguments[0]).type.get());
588
169
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
169
                block.get_by_position(arguments[1]).type.get());
590
169
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
169
        bool is_const_left = is_column_const(*column_left);
592
169
        bool is_const_right = is_column_const(*column_right);
593
594
169
        ColumnPtr column_result = nullptr;
595
169
        if (is_const_left && is_const_right) {
596
13
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
13
                                              res_data_type, context->check_overflow_for_decimal());
598
156
        } else if (is_const_left) {
599
1
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
1
                                            res_data_type, context->check_overflow_for_decimal());
601
155
        } else if (is_const_right) {
602
1
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
1
                                            res_data_type, context->check_overflow_for_decimal());
604
154
        } else {
605
154
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
154
                                          res_data_type, context->check_overflow_for_decimal());
607
154
        }
608
169
        block.replace_by_position(result, std::move(column_result));
609
169
        return Status::OK();
610
169
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
60
                        uint32_t result, size_t input_rows_count) const override {
584
60
        auto& column_left = block.get_by_position(arguments[0]).column;
585
60
        auto& column_right = block.get_by_position(arguments[1]).column;
586
60
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
60
                block.get_by_position(arguments[0]).type.get());
588
60
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
60
                block.get_by_position(arguments[1]).type.get());
590
60
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
60
        bool is_const_left = is_column_const(*column_left);
592
60
        bool is_const_right = is_column_const(*column_right);
593
594
60
        ColumnPtr column_result = nullptr;
595
60
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
60
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
60
        } else if (is_const_right) {
602
32
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
32
                                            res_data_type, context->check_overflow_for_decimal());
604
32
        } else {
605
28
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
28
                                          res_data_type, context->check_overflow_for_decimal());
607
28
        }
608
60
        block.replace_by_position(result, std::move(column_result));
609
60
        return Status::OK();
610
60
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
11
                        uint32_t result, size_t input_rows_count) const override {
584
11
        auto& column_left = block.get_by_position(arguments[0]).column;
585
11
        auto& column_right = block.get_by_position(arguments[1]).column;
586
11
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
11
                block.get_by_position(arguments[0]).type.get());
588
11
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
11
                block.get_by_position(arguments[1]).type.get());
590
11
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
11
        bool is_const_left = is_column_const(*column_left);
592
11
        bool is_const_right = is_column_const(*column_right);
593
594
11
        ColumnPtr column_result = nullptr;
595
11
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
11
        } else if (is_const_left) {
599
5
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
5
                                            res_data_type, context->check_overflow_for_decimal());
601
6
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
6
        } else {
605
6
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
6
                                          res_data_type, context->check_overflow_for_decimal());
607
6
        }
608
11
        block.replace_by_position(result, std::move(column_result));
609
11
        return Status::OK();
610
11
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
101
                        uint32_t result, size_t input_rows_count) const override {
584
101
        auto& column_left = block.get_by_position(arguments[0]).column;
585
101
        auto& column_right = block.get_by_position(arguments[1]).column;
586
101
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
101
                block.get_by_position(arguments[0]).type.get());
588
101
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
101
                block.get_by_position(arguments[1]).type.get());
590
101
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
101
        bool is_const_left = is_column_const(*column_left);
592
101
        bool is_const_right = is_column_const(*column_right);
593
594
101
        ColumnPtr column_result = nullptr;
595
101
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
101
        } else if (is_const_left) {
599
53
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
53
                                            res_data_type, context->check_overflow_for_decimal());
601
53
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
48
        } else {
605
48
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
48
                                          res_data_type, context->check_overflow_for_decimal());
607
48
        }
608
101
        block.replace_by_position(result, std::move(column_result));
609
101
        return Status::OK();
610
101
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
81
                        uint32_t result, size_t input_rows_count) const override {
584
81
        auto& column_left = block.get_by_position(arguments[0]).column;
585
81
        auto& column_right = block.get_by_position(arguments[1]).column;
586
81
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
81
                block.get_by_position(arguments[0]).type.get());
588
81
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
81
                block.get_by_position(arguments[1]).type.get());
590
81
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
81
        bool is_const_left = is_column_const(*column_left);
592
81
        bool is_const_right = is_column_const(*column_right);
593
594
81
        ColumnPtr column_result = nullptr;
595
81
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
81
        } else if (is_const_left) {
599
4
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
4
                                            res_data_type, context->check_overflow_for_decimal());
601
77
        } else if (is_const_right) {
602
71
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
71
                                            res_data_type, context->check_overflow_for_decimal());
604
71
        } else {
605
6
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
6
                                          res_data_type, context->check_overflow_for_decimal());
607
6
        }
608
81
        block.replace_by_position(result, std::move(column_result));
609
81
        return Status::OK();
610
81
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
2.15k
                        uint32_t result, size_t input_rows_count) const override {
584
2.15k
        auto& column_left = block.get_by_position(arguments[0]).column;
585
2.15k
        auto& column_right = block.get_by_position(arguments[1]).column;
586
2.15k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
2.15k
                block.get_by_position(arguments[0]).type.get());
588
2.15k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
2.15k
                block.get_by_position(arguments[1]).type.get());
590
2.15k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
2.15k
        bool is_const_left = is_column_const(*column_left);
592
2.15k
        bool is_const_right = is_column_const(*column_right);
593
594
2.15k
        ColumnPtr column_result = nullptr;
595
2.15k
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
2.15k
        } else if (is_const_left) {
599
3
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
3
                                            res_data_type, context->check_overflow_for_decimal());
601
2.15k
        } else if (is_const_right) {
602
2
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
2
                                            res_data_type, context->check_overflow_for_decimal());
604
2.14k
        } else {
605
2.14k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
2.14k
                                          res_data_type, context->check_overflow_for_decimal());
607
2.14k
        }
608
2.15k
        block.replace_by_position(result, std::move(column_result));
609
2.15k
        return Status::OK();
610
2.15k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
12
                        uint32_t result, size_t input_rows_count) const override {
584
12
        auto& column_left = block.get_by_position(arguments[0]).column;
585
12
        auto& column_right = block.get_by_position(arguments[1]).column;
586
12
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
12
                block.get_by_position(arguments[0]).type.get());
588
12
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
12
                block.get_by_position(arguments[1]).type.get());
590
12
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
12
        bool is_const_left = is_column_const(*column_left);
592
12
        bool is_const_right = is_column_const(*column_right);
593
594
12
        ColumnPtr column_result = nullptr;
595
12
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
12
        } else if (is_const_left) {
599
1
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
1
                                            res_data_type, context->check_overflow_for_decimal());
601
11
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
11
        } else {
605
11
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
11
                                          res_data_type, context->check_overflow_for_decimal());
607
11
        }
608
12
        block.replace_by_position(result, std::move(column_result));
609
12
        return Status::OK();
610
12
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
255
                        uint32_t result, size_t input_rows_count) const override {
584
255
        auto& column_left = block.get_by_position(arguments[0]).column;
585
255
        auto& column_right = block.get_by_position(arguments[1]).column;
586
255
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
255
                block.get_by_position(arguments[0]).type.get());
588
255
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
255
                block.get_by_position(arguments[1]).type.get());
590
255
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
255
        bool is_const_left = is_column_const(*column_left);
592
255
        bool is_const_right = is_column_const(*column_right);
593
594
255
        ColumnPtr column_result = nullptr;
595
255
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
255
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
255
        } else if (is_const_right) {
602
199
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
199
                                            res_data_type, context->check_overflow_for_decimal());
604
199
        } else {
605
56
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
56
                                          res_data_type, context->check_overflow_for_decimal());
607
56
        }
608
255
        block.replace_by_position(result, std::move(column_result));
609
255
        return Status::OK();
610
255
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
470
                        uint32_t result, size_t input_rows_count) const override {
584
470
        auto& column_left = block.get_by_position(arguments[0]).column;
585
470
        auto& column_right = block.get_by_position(arguments[1]).column;
586
470
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
470
                block.get_by_position(arguments[0]).type.get());
588
470
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
470
                block.get_by_position(arguments[1]).type.get());
590
470
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
470
        bool is_const_left = is_column_const(*column_left);
592
470
        bool is_const_right = is_column_const(*column_right);
593
594
470
        ColumnPtr column_result = nullptr;
595
470
        if (is_const_left && is_const_right) {
596
2
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
2
                                              res_data_type, context->check_overflow_for_decimal());
598
468
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
468
        } else if (is_const_right) {
602
2
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
2
                                            res_data_type, context->check_overflow_for_decimal());
604
466
        } else {
605
466
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
466
                                          res_data_type, context->check_overflow_for_decimal());
607
466
        }
608
470
        block.replace_by_position(result, std::move(column_result));
609
470
        return Status::OK();
610
470
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
152
                        uint32_t result, size_t input_rows_count) const override {
584
152
        auto& column_left = block.get_by_position(arguments[0]).column;
585
152
        auto& column_right = block.get_by_position(arguments[1]).column;
586
152
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
152
                block.get_by_position(arguments[0]).type.get());
588
152
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
152
                block.get_by_position(arguments[1]).type.get());
590
152
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
152
        bool is_const_left = is_column_const(*column_left);
592
152
        bool is_const_right = is_column_const(*column_right);
593
594
152
        ColumnPtr column_result = nullptr;
595
152
        if (is_const_left && is_const_right) {
596
2
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
2
                                              res_data_type, context->check_overflow_for_decimal());
598
150
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
150
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
150
        } else {
605
150
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
150
                                          res_data_type, context->check_overflow_for_decimal());
607
150
        }
608
152
        block.replace_by_position(result, std::move(column_result));
609
152
        return Status::OK();
610
152
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
6
                        uint32_t result, size_t input_rows_count) const override {
584
6
        auto& column_left = block.get_by_position(arguments[0]).column;
585
6
        auto& column_right = block.get_by_position(arguments[1]).column;
586
6
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
6
                block.get_by_position(arguments[0]).type.get());
588
6
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
6
                block.get_by_position(arguments[1]).type.get());
590
6
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
6
        bool is_const_left = is_column_const(*column_left);
592
6
        bool is_const_right = is_column_const(*column_right);
593
594
6
        ColumnPtr column_result = nullptr;
595
6
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
6
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
6
        } else if (is_const_right) {
602
2
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
2
                                            res_data_type, context->check_overflow_for_decimal());
604
4
        } else {
605
4
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
4
                                          res_data_type, context->check_overflow_for_decimal());
607
4
        }
608
6
        block.replace_by_position(result, std::move(column_result));
609
6
        return Status::OK();
610
6
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
42
                        uint32_t result, size_t input_rows_count) const override {
584
42
        auto& column_left = block.get_by_position(arguments[0]).column;
585
42
        auto& column_right = block.get_by_position(arguments[1]).column;
586
42
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
42
                block.get_by_position(arguments[0]).type.get());
588
42
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
42
                block.get_by_position(arguments[1]).type.get());
590
42
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
42
        bool is_const_left = is_column_const(*column_left);
592
42
        bool is_const_right = is_column_const(*column_right);
593
594
42
        ColumnPtr column_result = nullptr;
595
42
        if (is_const_left && is_const_right) {
596
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
0
                                              res_data_type, context->check_overflow_for_decimal());
598
42
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
42
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
42
        } else {
605
42
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
42
                                          res_data_type, context->check_overflow_for_decimal());
607
42
        }
608
42
        block.replace_by_position(result, std::move(column_result));
609
42
        return Status::OK();
610
42
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
16
                        uint32_t result, size_t input_rows_count) const override {
584
16
        auto& column_left = block.get_by_position(arguments[0]).column;
585
16
        auto& column_right = block.get_by_position(arguments[1]).column;
586
16
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
16
                block.get_by_position(arguments[0]).type.get());
588
16
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
16
                block.get_by_position(arguments[1]).type.get());
590
16
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
16
        bool is_const_left = is_column_const(*column_left);
592
16
        bool is_const_right = is_column_const(*column_right);
593
594
16
        ColumnPtr column_result = nullptr;
595
16
        if (is_const_left && is_const_right) {
596
1
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
1
                                              res_data_type, context->check_overflow_for_decimal());
598
15
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
15
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
15
        } else {
605
15
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
15
                                          res_data_type, context->check_overflow_for_decimal());
607
15
        }
608
16
        block.replace_by_position(result, std::move(column_result));
609
16
        return Status::OK();
610
16
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
40
                        uint32_t result, size_t input_rows_count) const override {
584
40
        auto& column_left = block.get_by_position(arguments[0]).column;
585
40
        auto& column_right = block.get_by_position(arguments[1]).column;
586
40
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
40
                block.get_by_position(arguments[0]).type.get());
588
40
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
40
                block.get_by_position(arguments[1]).type.get());
590
40
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
40
        bool is_const_left = is_column_const(*column_left);
592
40
        bool is_const_right = is_column_const(*column_right);
593
594
40
        ColumnPtr column_result = nullptr;
595
40
        if (is_const_left && is_const_right) {
596
2
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
2
                                              res_data_type, context->check_overflow_for_decimal());
598
38
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
38
        } else if (is_const_right) {
602
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
0
                                            res_data_type, context->check_overflow_for_decimal());
604
38
        } else {
605
38
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
38
                                          res_data_type, context->check_overflow_for_decimal());
607
38
        }
608
40
        block.replace_by_position(result, std::move(column_result));
609
40
        return Status::OK();
610
40
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
69
                        uint32_t result, size_t input_rows_count) const override {
584
69
        auto& column_left = block.get_by_position(arguments[0]).column;
585
69
        auto& column_right = block.get_by_position(arguments[1]).column;
586
69
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
69
                block.get_by_position(arguments[0]).type.get());
588
69
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
69
                block.get_by_position(arguments[1]).type.get());
590
69
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
69
        bool is_const_left = is_column_const(*column_left);
592
69
        bool is_const_right = is_column_const(*column_right);
593
594
69
        ColumnPtr column_result = nullptr;
595
69
        if (is_const_left && is_const_right) {
596
4
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
4
                                              res_data_type, context->check_overflow_for_decimal());
598
65
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
65
        } else if (is_const_right) {
602
1
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
1
                                            res_data_type, context->check_overflow_for_decimal());
604
64
        } else {
605
64
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
64
                                          res_data_type, context->check_overflow_for_decimal());
607
64
        }
608
69
        block.replace_by_position(result, std::move(column_result));
609
69
        return Status::OK();
610
69
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
9.98k
                        uint32_t result, size_t input_rows_count) const override {
584
9.98k
        auto& column_left = block.get_by_position(arguments[0]).column;
585
9.98k
        auto& column_right = block.get_by_position(arguments[1]).column;
586
9.98k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
9.98k
                block.get_by_position(arguments[0]).type.get());
588
9.98k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
9.98k
                block.get_by_position(arguments[1]).type.get());
590
9.98k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
9.98k
        bool is_const_left = is_column_const(*column_left);
592
9.98k
        bool is_const_right = is_column_const(*column_right);
593
594
9.98k
        ColumnPtr column_result = nullptr;
595
9.98k
        if (is_const_left && is_const_right) {
596
4
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
4
                                              res_data_type, context->check_overflow_for_decimal());
598
9.97k
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
9.97k
        } else if (is_const_right) {
602
8.99k
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
8.99k
                                            res_data_type, context->check_overflow_for_decimal());
604
8.99k
        } else {
605
982
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
982
                                          res_data_type, context->check_overflow_for_decimal());
607
982
        }
608
9.98k
        block.replace_by_position(result, std::move(column_result));
609
9.98k
        return Status::OK();
610
9.98k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
159
                        uint32_t result, size_t input_rows_count) const override {
584
159
        auto& column_left = block.get_by_position(arguments[0]).column;
585
159
        auto& column_right = block.get_by_position(arguments[1]).column;
586
159
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
159
                block.get_by_position(arguments[0]).type.get());
588
159
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
159
                block.get_by_position(arguments[1]).type.get());
590
159
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
159
        bool is_const_left = is_column_const(*column_left);
592
159
        bool is_const_right = is_column_const(*column_right);
593
594
159
        ColumnPtr column_result = nullptr;
595
159
        if (is_const_left && is_const_right) {
596
1
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
1
                                              res_data_type, context->check_overflow_for_decimal());
598
158
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
158
        } else if (is_const_right) {
602
6
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
6
                                            res_data_type, context->check_overflow_for_decimal());
604
152
        } else {
605
152
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
152
                                          res_data_type, context->check_overflow_for_decimal());
607
152
        }
608
159
        block.replace_by_position(result, std::move(column_result));
609
159
        return Status::OK();
610
159
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
583
2.70k
                        uint32_t result, size_t input_rows_count) const override {
584
2.70k
        auto& column_left = block.get_by_position(arguments[0]).column;
585
2.70k
        auto& column_right = block.get_by_position(arguments[1]).column;
586
2.70k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
587
2.70k
                block.get_by_position(arguments[0]).type.get());
588
2.70k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
589
2.70k
                block.get_by_position(arguments[1]).type.get());
590
2.70k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
591
2.70k
        bool is_const_left = is_column_const(*column_left);
592
2.70k
        bool is_const_right = is_column_const(*column_right);
593
594
2.70k
        ColumnPtr column_result = nullptr;
595
2.70k
        if (is_const_left && is_const_right) {
596
4
            column_result = constant_constant(column_left, column_right, type_left, type_right,
597
4
                                              res_data_type, context->check_overflow_for_decimal());
598
2.69k
        } else if (is_const_left) {
599
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
600
0
                                            res_data_type, context->check_overflow_for_decimal());
601
2.69k
        } else if (is_const_right) {
602
216
            column_result = vector_constant(column_left, column_right, type_left, type_right,
603
216
                                            res_data_type, context->check_overflow_for_decimal());
604
2.48k
        } else {
605
2.48k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
606
2.48k
                                          res_data_type, context->check_overflow_for_decimal());
607
2.48k
        }
608
2.70k
        block.replace_by_position(result, std::move(column_result));
609
2.70k
        return Status::OK();
610
2.70k
    }
611
612
private:
613
    ColumnPtr constant_constant(ColumnPtr column_left, ColumnPtr column_right,
614
                                const typename Impl::DataTypeA* type_left,
615
                                const typename Impl::DataTypeB* type_right,
616
33
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
33
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
33
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
33
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
33
        ColumnPtr column_result = nullptr;
622
623
33
        if constexpr (result_is_decimal) {
624
18
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
13
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
13
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
13
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
13
                                        type_left, type_right, type_result);
629
13
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
13
                                        left_tmp;
631
13
                                auto left_src =
632
13
                                        column_left_ptr
633
13
                                                ->template get_value<Impl::DataTypeA::PType>();
634
13
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
13
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
13
                                        right_tmp;
637
13
                                auto right_src =
638
13
                                        column_right_ptr
639
13
                                                ->template get_value<Impl::DataTypeB::PType>();
640
13
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
13
                                column_result = Impl::constant_constant(
642
13
                                        left_tmp, right_tmp, type_left, type_right,
643
13
                                        max_and_multiplier.first, max_and_multiplier.second,
644
13
                                        type_result, check_overflow_for_decimal);
645
13
                                return true;
646
13
                            })) {
647
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
0
                                    type_to_string(res_data_type->get_primitive_type()));
650
0
                }
651
13
            } else {
652
5
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
5
                                         DataTypeDecimal256>(
654
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
5
                                        type_left, type_right, type_result);
657
5
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
5
                                        left_tmp;
659
5
                                auto left_src =
660
5
                                        column_left_ptr
661
5
                                                ->template get_value<Impl::DataTypeA::PType>();
662
5
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
5
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
5
                                        right_tmp;
665
5
                                auto right_src =
666
5
                                        column_right_ptr
667
5
                                                ->template get_value<Impl::DataTypeB::PType>();
668
5
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
5
                                column_result = Impl::constant_constant(
670
5
                                        left_tmp, right_tmp, type_left, type_right,
671
5
                                        max_and_multiplier.first, max_and_multiplier.second,
672
5
                                        type_result, check_overflow_for_decimal);
673
5
                                return true;
674
5
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
654
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
2
                                        type_left, type_right, type_result);
657
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
2
                                        left_tmp;
659
2
                                auto left_src =
660
2
                                        column_left_ptr
661
2
                                                ->template get_value<Impl::DataTypeA::PType>();
662
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
2
                                        right_tmp;
665
2
                                auto right_src =
666
2
                                        column_right_ptr
667
2
                                                ->template get_value<Impl::DataTypeB::PType>();
668
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
2
                                column_result = Impl::constant_constant(
670
2
                                        left_tmp, right_tmp, type_left, type_right,
671
2
                                        max_and_multiplier.first, max_and_multiplier.second,
672
2
                                        type_result, check_overflow_for_decimal);
673
2
                                return true;
674
2
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
654
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
2
                                        type_left, type_right, type_result);
657
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
2
                                        left_tmp;
659
2
                                auto left_src =
660
2
                                        column_left_ptr
661
2
                                                ->template get_value<Impl::DataTypeA::PType>();
662
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
2
                                        right_tmp;
665
2
                                auto right_src =
666
2
                                        column_right_ptr
667
2
                                                ->template get_value<Impl::DataTypeB::PType>();
668
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
2
                                column_result = Impl::constant_constant(
670
2
                                        left_tmp, right_tmp, type_left, type_right,
671
2
                                        max_and_multiplier.first, max_and_multiplier.second,
672
2
                                        type_result, check_overflow_for_decimal);
673
2
                                return true;
674
2
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
654
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
1
                                        type_left, type_right, type_result);
657
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
1
                                        left_tmp;
659
1
                                auto left_src =
660
1
                                        column_left_ptr
661
1
                                                ->template get_value<Impl::DataTypeA::PType>();
662
1
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
1
                                        right_tmp;
665
1
                                auto right_src =
666
1
                                        column_right_ptr
667
1
                                                ->template get_value<Impl::DataTypeB::PType>();
668
1
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
1
                                column_result = Impl::constant_constant(
670
1
                                        left_tmp, right_tmp, type_left, type_right,
671
1
                                        max_and_multiplier.first, max_and_multiplier.second,
672
1
                                        type_result, check_overflow_for_decimal);
673
1
                                return true;
674
1
                            })) {
675
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
0
                                    type_to_string(res_data_type->get_primitive_type()));
678
0
                }
679
5
            }
680
18
        } else {
681
15
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
15
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
15
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
15
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
15
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
15
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
15
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
15
        }
689
690
18
        return ColumnConst::create(std::move(column_result), column_left->size());
691
33
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
13
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
13
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
13
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
13
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
13
        ColumnPtr column_result = nullptr;
622
623
13
        if constexpr (result_is_decimal) {
624
13
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
13
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
13
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
13
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
13
                                        type_left, type_right, type_result);
629
13
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
13
                                        left_tmp;
631
13
                                auto left_src =
632
13
                                        column_left_ptr
633
13
                                                ->template get_value<Impl::DataTypeA::PType>();
634
13
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
13
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
13
                                        right_tmp;
637
13
                                auto right_src =
638
13
                                        column_right_ptr
639
13
                                                ->template get_value<Impl::DataTypeB::PType>();
640
13
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
13
                                column_result = Impl::constant_constant(
642
13
                                        left_tmp, right_tmp, type_left, type_right,
643
13
                                        max_and_multiplier.first, max_and_multiplier.second,
644
13
                                        type_result, check_overflow_for_decimal);
645
13
                                return true;
646
13
                            })) {
647
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
0
                                    type_to_string(res_data_type->get_primitive_type()));
650
0
                }
651
            } else {
652
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
                                         DataTypeDecimal256>(
654
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
                                        type_left, type_right, type_result);
657
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
                                        left_tmp;
659
                                auto left_src =
660
                                        column_left_ptr
661
                                                ->template get_value<Impl::DataTypeA::PType>();
662
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
                                        right_tmp;
665
                                auto right_src =
666
                                        column_right_ptr
667
                                                ->template get_value<Impl::DataTypeB::PType>();
668
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
                                column_result = Impl::constant_constant(
670
                                        left_tmp, right_tmp, type_left, type_right,
671
                                        max_and_multiplier.first, max_and_multiplier.second,
672
                                        type_result, check_overflow_for_decimal);
673
                                return true;
674
                            })) {
675
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
                                    type_to_string(res_data_type->get_primitive_type()));
678
                }
679
            }
680
        } else {
681
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
        }
689
690
13
        return ColumnConst::create(std::move(column_result), column_left->size());
691
13
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
2
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
2
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
2
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
2
        ColumnPtr column_result = nullptr;
622
623
2
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
2
            } else {
652
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
2
                                         DataTypeDecimal256>(
654
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
2
                                        type_left, type_right, type_result);
657
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
2
                                        left_tmp;
659
2
                                auto left_src =
660
2
                                        column_left_ptr
661
2
                                                ->template get_value<Impl::DataTypeA::PType>();
662
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
2
                                        right_tmp;
665
2
                                auto right_src =
666
2
                                        column_right_ptr
667
2
                                                ->template get_value<Impl::DataTypeB::PType>();
668
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
2
                                column_result = Impl::constant_constant(
670
2
                                        left_tmp, right_tmp, type_left, type_right,
671
2
                                        max_and_multiplier.first, max_and_multiplier.second,
672
2
                                        type_result, check_overflow_for_decimal);
673
2
                                return true;
674
2
                            })) {
675
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
0
                                    type_to_string(res_data_type->get_primitive_type()));
678
0
                }
679
2
            }
680
        } else {
681
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
        }
689
690
2
        return ColumnConst::create(std::move(column_result), column_left->size());
691
2
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
2
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
2
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
2
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
2
        ColumnPtr column_result = nullptr;
622
623
2
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
2
            } else {
652
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
2
                                         DataTypeDecimal256>(
654
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
2
                                        type_left, type_right, type_result);
657
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
2
                                        left_tmp;
659
2
                                auto left_src =
660
2
                                        column_left_ptr
661
2
                                                ->template get_value<Impl::DataTypeA::PType>();
662
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
2
                                        right_tmp;
665
2
                                auto right_src =
666
2
                                        column_right_ptr
667
2
                                                ->template get_value<Impl::DataTypeB::PType>();
668
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
2
                                column_result = Impl::constant_constant(
670
2
                                        left_tmp, right_tmp, type_left, type_right,
671
2
                                        max_and_multiplier.first, max_and_multiplier.second,
672
2
                                        type_result, check_overflow_for_decimal);
673
2
                                return true;
674
2
                            })) {
675
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
0
                                    type_to_string(res_data_type->get_primitive_type()));
678
0
                }
679
2
            }
680
        } else {
681
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
        }
689
690
2
        return ColumnConst::create(std::move(column_result), column_left->size());
691
2
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
1
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
1
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
1
        ColumnPtr column_result = nullptr;
622
623
1
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
1
            } else {
652
1
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
1
                                         DataTypeDecimal256>(
654
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
1
                                        type_left, type_right, type_result);
657
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
1
                                        left_tmp;
659
1
                                auto left_src =
660
1
                                        column_left_ptr
661
1
                                                ->template get_value<Impl::DataTypeA::PType>();
662
1
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
1
                                        right_tmp;
665
1
                                auto right_src =
666
1
                                        column_right_ptr
667
1
                                                ->template get_value<Impl::DataTypeB::PType>();
668
1
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
1
                                column_result = Impl::constant_constant(
670
1
                                        left_tmp, right_tmp, type_left, type_right,
671
1
                                        max_and_multiplier.first, max_and_multiplier.second,
672
1
                                        type_result, check_overflow_for_decimal);
673
1
                                return true;
674
1
                            })) {
675
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
0
                                    type_to_string(res_data_type->get_primitive_type()));
678
0
                }
679
1
            }
680
        } else {
681
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
        }
689
690
1
        return ColumnConst::create(std::move(column_result), column_left->size());
691
1
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_3EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_4EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
2
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
2
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
2
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
2
        ColumnPtr column_result = nullptr;
622
623
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
            } else {
652
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
                                         DataTypeDecimal256>(
654
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
                                        type_left, type_right, type_result);
657
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
                                        left_tmp;
659
                                auto left_src =
660
                                        column_left_ptr
661
                                                ->template get_value<Impl::DataTypeA::PType>();
662
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
                                        right_tmp;
665
                                auto right_src =
666
                                        column_right_ptr
667
                                                ->template get_value<Impl::DataTypeB::PType>();
668
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
                                column_result = Impl::constant_constant(
670
                                        left_tmp, right_tmp, type_left, type_right,
671
                                        max_and_multiplier.first, max_and_multiplier.second,
672
                                        type_result, check_overflow_for_decimal);
673
                                return true;
674
                            })) {
675
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
                                    type_to_string(res_data_type->get_primitive_type()));
678
                }
679
            }
680
2
        } else {
681
2
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
2
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
2
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
2
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
2
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
2
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
2
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
2
        }
689
690
2
        return ColumnConst::create(std::move(column_result), column_left->size());
691
2
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
4
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
4
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
4
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
4
        ColumnPtr column_result = nullptr;
622
623
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
            } else {
652
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
                                         DataTypeDecimal256>(
654
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
                                        type_left, type_right, type_result);
657
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
                                        left_tmp;
659
                                auto left_src =
660
                                        column_left_ptr
661
                                                ->template get_value<Impl::DataTypeA::PType>();
662
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
                                        right_tmp;
665
                                auto right_src =
666
                                        column_right_ptr
667
                                                ->template get_value<Impl::DataTypeB::PType>();
668
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
                                column_result = Impl::constant_constant(
670
                                        left_tmp, right_tmp, type_left, type_right,
671
                                        max_and_multiplier.first, max_and_multiplier.second,
672
                                        type_result, check_overflow_for_decimal);
673
                                return true;
674
                            })) {
675
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
                                    type_to_string(res_data_type->get_primitive_type()));
678
                }
679
            }
680
4
        } else {
681
4
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
4
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
4
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
4
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
4
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
4
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
4
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
4
        }
689
690
4
        return ColumnConst::create(std::move(column_result), column_left->size());
691
4
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
4
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
4
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
4
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
4
        ColumnPtr column_result = nullptr;
622
623
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
            } else {
652
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
                                         DataTypeDecimal256>(
654
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
                                        type_left, type_right, type_result);
657
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
                                        left_tmp;
659
                                auto left_src =
660
                                        column_left_ptr
661
                                                ->template get_value<Impl::DataTypeA::PType>();
662
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
                                        right_tmp;
665
                                auto right_src =
666
                                        column_right_ptr
667
                                                ->template get_value<Impl::DataTypeB::PType>();
668
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
                                column_result = Impl::constant_constant(
670
                                        left_tmp, right_tmp, type_left, type_right,
671
                                        max_and_multiplier.first, max_and_multiplier.second,
672
                                        type_result, check_overflow_for_decimal);
673
                                return true;
674
                            })) {
675
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
                                    type_to_string(res_data_type->get_primitive_type()));
678
                }
679
            }
680
4
        } else {
681
4
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
4
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
4
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
4
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
4
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
4
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
4
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
4
        }
689
690
4
        return ColumnConst::create(std::move(column_result), column_left->size());
691
4
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
1
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
1
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
1
        ColumnPtr column_result = nullptr;
622
623
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
            } else {
652
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
                                         DataTypeDecimal256>(
654
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
                                        type_left, type_right, type_result);
657
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
                                        left_tmp;
659
                                auto left_src =
660
                                        column_left_ptr
661
                                                ->template get_value<Impl::DataTypeA::PType>();
662
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
                                        right_tmp;
665
                                auto right_src =
666
                                        column_right_ptr
667
                                                ->template get_value<Impl::DataTypeB::PType>();
668
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
                                column_result = Impl::constant_constant(
670
                                        left_tmp, right_tmp, type_left, type_right,
671
                                        max_and_multiplier.first, max_and_multiplier.second,
672
                                        type_result, check_overflow_for_decimal);
673
                                return true;
674
                            })) {
675
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
                                    type_to_string(res_data_type->get_primitive_type()));
678
                }
679
            }
680
1
        } else {
681
1
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
1
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
1
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
1
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
1
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
1
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
1
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
1
        }
689
690
1
        return ColumnConst::create(std::move(column_result), column_left->size());
691
1
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_8EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_9EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
616
4
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
617
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
618
4
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
619
4
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
620
621
4
        ColumnPtr column_result = nullptr;
622
623
        if constexpr (result_is_decimal) {
624
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
625
                if (!cast_type_to_either<DataTypeDecimalV2>(
626
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
627
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
628
                                        type_left, type_right, type_result);
629
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
630
                                        left_tmp;
631
                                auto left_src =
632
                                        column_left_ptr
633
                                                ->template get_value<Impl::DataTypeA::PType>();
634
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
635
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
636
                                        right_tmp;
637
                                auto right_src =
638
                                        column_right_ptr
639
                                                ->template get_value<Impl::DataTypeB::PType>();
640
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
641
                                column_result = Impl::constant_constant(
642
                                        left_tmp, right_tmp, type_left, type_right,
643
                                        max_and_multiplier.first, max_and_multiplier.second,
644
                                        type_result, check_overflow_for_decimal);
645
                                return true;
646
                            })) {
647
                    throw Exception(ErrorCode::INTERNAL_ERROR,
648
                                    "Wrong type. Expected: Decimal, Actually: {}",
649
                                    type_to_string(res_data_type->get_primitive_type()));
650
                }
651
            } else {
652
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
653
                                         DataTypeDecimal256>(
654
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
655
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
656
                                        type_left, type_right, type_result);
657
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
658
                                        left_tmp;
659
                                auto left_src =
660
                                        column_left_ptr
661
                                                ->template get_value<Impl::DataTypeA::PType>();
662
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
663
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
664
                                        right_tmp;
665
                                auto right_src =
666
                                        column_right_ptr
667
                                                ->template get_value<Impl::DataTypeB::PType>();
668
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
669
                                column_result = Impl::constant_constant(
670
                                        left_tmp, right_tmp, type_left, type_right,
671
                                        max_and_multiplier.first, max_and_multiplier.second,
672
                                        type_result, check_overflow_for_decimal);
673
                                return true;
674
                            })) {
675
                    throw Exception(ErrorCode::INTERNAL_ERROR,
676
                                    "Wrong type. Expected: Decimal, Actually: {}",
677
                                    type_to_string(res_data_type->get_primitive_type()));
678
                }
679
            }
680
4
        } else {
681
4
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
682
4
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
683
4
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
684
4
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
685
4
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
686
4
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
687
4
            column_result = Impl::constant_constant(left_tmp, right_tmp);
688
4
        }
689
690
4
        return ColumnConst::create(std::move(column_result), column_left->size());
691
4
    }
692
693
    ColumnPtr vector_constant(ColumnPtr column_left, ColumnPtr column_right,
694
                              const typename Impl::DataTypeA* type_left,
695
                              const typename Impl::DataTypeB* type_right, DataTypePtr res_data_type,
696
9.52k
                              bool check_overflow_for_decimal) const {
697
9.52k
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
9.52k
        DCHECK(column_right_ptr != nullptr);
699
700
9.52k
        ColumnPtr res = nullptr;
701
9.52k
        if constexpr (result_is_decimal) {
702
309
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
1
                                        type_left, type_right, type_result);
707
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
1
                                auto src = column_right_ptr
709
1
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
1
                                std::memcpy(&tmp, &src, sizeof(src));
711
1
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
1
                                                            type_right, max_and_multiplier.first,
713
1
                                                            max_and_multiplier.second, type_result,
714
1
                                                            check_overflow_for_decimal);
715
1
                                return true;
716
1
                            })) {
717
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
0
                                    type_to_string(res_data_type->get_primitive_type()));
720
0
                }
721
308
            } else {
722
308
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
308
                                         DataTypeDecimal256>(
724
308
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
308
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
308
                                        type_left, type_right, type_result);
727
308
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
308
                                auto src = column_right_ptr
729
308
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
308
                                std::memcpy(&tmp, &src, sizeof(src));
731
308
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
308
                                                            type_right, max_and_multiplier.first,
733
308
                                                            max_and_multiplier.second, type_result,
734
308
                                                            check_overflow_for_decimal);
735
308
                                return true;
736
308
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
724
12
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
12
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
12
                                        type_left, type_right, type_result);
727
12
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
12
                                auto src = column_right_ptr
729
12
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
12
                                std::memcpy(&tmp, &src, sizeof(src));
731
12
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
12
                                                            type_right, max_and_multiplier.first,
733
12
                                                            max_and_multiplier.second, type_result,
734
12
                                                            check_overflow_for_decimal);
735
12
                                return true;
736
12
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Line
Count
Source
724
20
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
20
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
20
                                        type_left, type_right, type_result);
727
20
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
20
                                auto src = column_right_ptr
729
20
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
20
                                std::memcpy(&tmp, &src, sizeof(src));
731
20
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
20
                                                            type_right, max_and_multiplier.first,
733
20
                                                            max_and_multiplier.second, type_result,
734
20
                                                            check_overflow_for_decimal);
735
20
                                return true;
736
20
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
724
71
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
71
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
71
                                        type_left, type_right, type_result);
727
71
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
71
                                auto src = column_right_ptr
729
71
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
71
                                std::memcpy(&tmp, &src, sizeof(src));
731
71
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
71
                                                            type_right, max_and_multiplier.first,
733
71
                                                            max_and_multiplier.second, type_result,
734
71
                                                            check_overflow_for_decimal);
735
71
                                return true;
736
71
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Line
Count
Source
724
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
2
                                        type_left, type_right, type_result);
727
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
2
                                auto src = column_right_ptr
729
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
2
                                std::memcpy(&tmp, &src, sizeof(src));
731
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
2
                                                            type_right, max_and_multiplier.first,
733
2
                                                            max_and_multiplier.second, type_result,
734
2
                                                            check_overflow_for_decimal);
735
2
                                return true;
736
2
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
724
199
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
199
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
199
                                        type_left, type_right, type_result);
727
199
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
199
                                auto src = column_right_ptr
729
199
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
199
                                std::memcpy(&tmp, &src, sizeof(src));
731
199
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
199
                                                            type_right, max_and_multiplier.first,
733
199
                                                            max_and_multiplier.second, type_result,
734
199
                                                            check_overflow_for_decimal);
735
199
                                return true;
736
199
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
724
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
2
                                        type_left, type_right, type_result);
727
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
2
                                auto src = column_right_ptr
729
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
2
                                std::memcpy(&tmp, &src, sizeof(src));
731
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
2
                                                            type_right, max_and_multiplier.first,
733
2
                                                            max_and_multiplier.second, type_result,
734
2
                                                            check_overflow_for_decimal);
735
2
                                return true;
736
2
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
724
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
2
                                        type_left, type_right, type_result);
727
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
2
                                auto src = column_right_ptr
729
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
2
                                std::memcpy(&tmp, &src, sizeof(src));
731
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
2
                                                            type_right, max_and_multiplier.first,
733
2
                                                            max_and_multiplier.second, type_result,
734
2
                                                            check_overflow_for_decimal);
735
2
                                return true;
736
2
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
308
            }
742
9.22k
        } else {
743
9.22k
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
9.22k
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
9.22k
            std::memcpy(&tmp, &src, sizeof(src));
746
9.22k
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
9.22k
        }
748
309
        return res;
749
9.52k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
1
                              bool check_overflow_for_decimal) const {
697
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
1
        DCHECK(column_right_ptr != nullptr);
699
700
1
        ColumnPtr res = nullptr;
701
1
        if constexpr (result_is_decimal) {
702
1
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
1
                                        type_left, type_right, type_result);
707
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
1
                                auto src = column_right_ptr
709
1
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
1
                                std::memcpy(&tmp, &src, sizeof(src));
711
1
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
1
                                                            type_right, max_and_multiplier.first,
713
1
                                                            max_and_multiplier.second, type_result,
714
1
                                                            check_overflow_for_decimal);
715
1
                                return true;
716
1
                            })) {
717
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
0
                                    type_to_string(res_data_type->get_primitive_type()));
720
0
                }
721
            } else {
722
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
                                         DataTypeDecimal256>(
724
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
                                        type_left, type_right, type_result);
727
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
                                auto src = column_right_ptr
729
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
                                std::memcpy(&tmp, &src, sizeof(src));
731
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
                                                            type_right, max_and_multiplier.first,
733
                                                            max_and_multiplier.second, type_result,
734
                                                            check_overflow_for_decimal);
735
                                return true;
736
                            })) {
737
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
                                    type_to_string(res_data_type->get_primitive_type()));
740
                }
741
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
1
        return res;
749
1
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
32
                              bool check_overflow_for_decimal) const {
697
32
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
32
        DCHECK(column_right_ptr != nullptr);
699
700
32
        ColumnPtr res = nullptr;
701
32
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
32
            } else {
722
32
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
32
                                         DataTypeDecimal256>(
724
32
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
32
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
32
                                        type_left, type_right, type_result);
727
32
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
32
                                auto src = column_right_ptr
729
32
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
32
                                std::memcpy(&tmp, &src, sizeof(src));
731
32
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
32
                                                            type_right, max_and_multiplier.first,
733
32
                                                            max_and_multiplier.second, type_result,
734
32
                                                            check_overflow_for_decimal);
735
32
                                return true;
736
32
                            })) {
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
32
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
32
        return res;
749
32
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
71
                              bool check_overflow_for_decimal) const {
697
71
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
71
        DCHECK(column_right_ptr != nullptr);
699
700
71
        ColumnPtr res = nullptr;
701
71
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
71
            } else {
722
71
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
71
                                         DataTypeDecimal256>(
724
71
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
71
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
71
                                        type_left, type_right, type_result);
727
71
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
71
                                auto src = column_right_ptr
729
71
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
71
                                std::memcpy(&tmp, &src, sizeof(src));
731
71
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
71
                                                            type_right, max_and_multiplier.first,
733
71
                                                            max_and_multiplier.second, type_result,
734
71
                                                            check_overflow_for_decimal);
735
71
                                return true;
736
71
                            })) {
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
71
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
71
        return res;
749
71
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
2
                              bool check_overflow_for_decimal) const {
697
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
2
        DCHECK(column_right_ptr != nullptr);
699
700
2
        ColumnPtr res = nullptr;
701
2
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
2
            } else {
722
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
2
                                         DataTypeDecimal256>(
724
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
2
                                        type_left, type_right, type_result);
727
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
2
                                auto src = column_right_ptr
729
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
2
                                std::memcpy(&tmp, &src, sizeof(src));
731
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
2
                                                            type_right, max_and_multiplier.first,
733
2
                                                            max_and_multiplier.second, type_result,
734
2
                                                            check_overflow_for_decimal);
735
2
                                return true;
736
2
                            })) {
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
2
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
2
        return res;
749
2
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
199
                              bool check_overflow_for_decimal) const {
697
199
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
199
        DCHECK(column_right_ptr != nullptr);
699
700
199
        ColumnPtr res = nullptr;
701
199
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
199
            } else {
722
199
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
199
                                         DataTypeDecimal256>(
724
199
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
199
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
199
                                        type_left, type_right, type_result);
727
199
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
199
                                auto src = column_right_ptr
729
199
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
199
                                std::memcpy(&tmp, &src, sizeof(src));
731
199
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
199
                                                            type_right, max_and_multiplier.first,
733
199
                                                            max_and_multiplier.second, type_result,
734
199
                                                            check_overflow_for_decimal);
735
199
                                return true;
736
199
                            })) {
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
199
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
199
        return res;
749
199
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
2
                              bool check_overflow_for_decimal) const {
697
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
2
        DCHECK(column_right_ptr != nullptr);
699
700
2
        ColumnPtr res = nullptr;
701
2
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
2
            } else {
722
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
2
                                         DataTypeDecimal256>(
724
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
2
                                        type_left, type_right, type_result);
727
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
2
                                auto src = column_right_ptr
729
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
2
                                std::memcpy(&tmp, &src, sizeof(src));
731
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
2
                                                            type_right, max_and_multiplier.first,
733
2
                                                            max_and_multiplier.second, type_result,
734
2
                                                            check_overflow_for_decimal);
735
2
                                return true;
736
2
                            })) {
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
2
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
2
        return res;
749
2
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
2
                              bool check_overflow_for_decimal) const {
697
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
2
        DCHECK(column_right_ptr != nullptr);
699
700
2
        ColumnPtr res = nullptr;
701
2
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
2
            } else {
722
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
2
                                         DataTypeDecimal256>(
724
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
2
                                        type_left, type_right, type_result);
727
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
2
                                auto src = column_right_ptr
729
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
2
                                std::memcpy(&tmp, &src, sizeof(src));
731
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
2
                                                            type_right, max_and_multiplier.first,
733
2
                                                            max_and_multiplier.second, type_result,
734
2
                                                            check_overflow_for_decimal);
735
2
                                return true;
736
2
                            })) {
737
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
0
                                    type_to_string(res_data_type->get_primitive_type()));
740
0
                }
741
2
            }
742
        } else {
743
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
            std::memcpy(&tmp, &src, sizeof(src));
746
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
        }
748
2
        return res;
749
2
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_3EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_4EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
1
                              bool check_overflow_for_decimal) const {
697
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
1
        DCHECK(column_right_ptr != nullptr);
699
700
1
        ColumnPtr res = nullptr;
701
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
            } else {
722
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
                                         DataTypeDecimal256>(
724
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
                                        type_left, type_right, type_result);
727
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
                                auto src = column_right_ptr
729
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
                                std::memcpy(&tmp, &src, sizeof(src));
731
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
                                                            type_right, max_and_multiplier.first,
733
                                                            max_and_multiplier.second, type_result,
734
                                                            check_overflow_for_decimal);
735
                                return true;
736
                            })) {
737
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
                                    type_to_string(res_data_type->get_primitive_type()));
740
                }
741
            }
742
1
        } else {
743
1
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
1
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
1
            std::memcpy(&tmp, &src, sizeof(src));
746
1
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
1
        }
748
1
        return res;
749
1
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
8.99k
                              bool check_overflow_for_decimal) const {
697
8.99k
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
8.99k
        DCHECK(column_right_ptr != nullptr);
699
700
8.99k
        ColumnPtr res = nullptr;
701
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
            } else {
722
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
                                         DataTypeDecimal256>(
724
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
                                        type_left, type_right, type_result);
727
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
                                auto src = column_right_ptr
729
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
                                std::memcpy(&tmp, &src, sizeof(src));
731
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
                                                            type_right, max_and_multiplier.first,
733
                                                            max_and_multiplier.second, type_result,
734
                                                            check_overflow_for_decimal);
735
                                return true;
736
                            })) {
737
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
                                    type_to_string(res_data_type->get_primitive_type()));
740
                }
741
            }
742
8.99k
        } else {
743
8.99k
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
8.99k
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
8.99k
            std::memcpy(&tmp, &src, sizeof(src));
746
8.99k
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
8.99k
        }
748
8.99k
        return res;
749
8.99k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
6
                              bool check_overflow_for_decimal) const {
697
6
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
6
        DCHECK(column_right_ptr != nullptr);
699
700
6
        ColumnPtr res = nullptr;
701
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
            } else {
722
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
                                         DataTypeDecimal256>(
724
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
                                        type_left, type_right, type_result);
727
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
                                auto src = column_right_ptr
729
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
                                std::memcpy(&tmp, &src, sizeof(src));
731
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
                                                            type_right, max_and_multiplier.first,
733
                                                            max_and_multiplier.second, type_result,
734
                                                            check_overflow_for_decimal);
735
                                return true;
736
                            })) {
737
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
                                    type_to_string(res_data_type->get_primitive_type()));
740
                }
741
            }
742
6
        } else {
743
6
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
6
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
6
            std::memcpy(&tmp, &src, sizeof(src));
746
6
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
6
        }
748
6
        return res;
749
6
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_8EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_9EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
696
216
                              bool check_overflow_for_decimal) const {
697
216
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
698
216
        DCHECK(column_right_ptr != nullptr);
699
700
216
        ColumnPtr res = nullptr;
701
        if constexpr (result_is_decimal) {
702
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
703
                if (!cast_type_to_either<DataTypeDecimalV2>(
704
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
705
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
706
                                        type_left, type_right, type_result);
707
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
708
                                auto src = column_right_ptr
709
                                                   ->template get_value<Impl::DataTypeB::PType>();
710
                                std::memcpy(&tmp, &src, sizeof(src));
711
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
712
                                                            type_right, max_and_multiplier.first,
713
                                                            max_and_multiplier.second, type_result,
714
                                                            check_overflow_for_decimal);
715
                                return true;
716
                            })) {
717
                    throw Exception(ErrorCode::INTERNAL_ERROR,
718
                                    "Wrong type. Expected: Decimal, Actually: {}",
719
                                    type_to_string(res_data_type->get_primitive_type()));
720
                }
721
            } else {
722
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
723
                                         DataTypeDecimal256>(
724
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
725
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
726
                                        type_left, type_right, type_result);
727
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
728
                                auto src = column_right_ptr
729
                                                   ->template get_value<Impl::DataTypeB::PType>();
730
                                std::memcpy(&tmp, &src, sizeof(src));
731
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
732
                                                            type_right, max_and_multiplier.first,
733
                                                            max_and_multiplier.second, type_result,
734
                                                            check_overflow_for_decimal);
735
                                return true;
736
                            })) {
737
                    throw Exception(ErrorCode::INTERNAL_ERROR,
738
                                    "Wrong type. Expected: Decimal, Actually: {}",
739
                                    type_to_string(res_data_type->get_primitive_type()));
740
                }
741
            }
742
216
        } else {
743
216
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
744
216
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
745
216
            std::memcpy(&tmp, &src, sizeof(src));
746
216
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
747
216
        }
748
216
        return res;
749
216
    }
750
751
    ColumnPtr constant_vector(ColumnPtr column_left, ColumnPtr column_right,
752
                              const typename Impl::DataTypeA* type_left,
753
                              const typename Impl::DataTypeB* type_right, DataTypePtr res_data_type,
754
67
                              bool check_overflow_for_decimal) const {
755
67
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
67
        DCHECK(column_left_ptr != nullptr);
757
758
67
        ColumnPtr res = nullptr;
759
67
        if constexpr (result_is_decimal) {
760
67
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
1
                                        type_left, type_right, type_result);
765
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
1
                                auto src = column_left_ptr
767
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
1
                                std::memcpy(&tmp, &src, sizeof(src));
769
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
1
                                                            type_right, max_and_multiplier.first,
771
1
                                                            max_and_multiplier.second, type_result,
772
1
                                                            check_overflow_for_decimal);
773
1
                                return true;
774
1
                            })) {
775
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
0
                                    type_to_string(res_data_type->get_primitive_type()));
778
0
                }
779
66
            } else {
780
66
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
66
                                         DataTypeDecimal256>(
782
66
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
66
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
66
                                        type_left, type_right, type_result);
785
66
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
66
                                auto src = column_left_ptr
787
66
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
66
                                std::memcpy(&tmp, &src, sizeof(src));
789
66
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
66
                                                            type_right, max_and_multiplier.first,
791
66
                                                            max_and_multiplier.second, type_result,
792
66
                                                            check_overflow_for_decimal);
793
66
                                return true;
794
66
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Line
Count
Source
782
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
5
                                        type_left, type_right, type_result);
785
5
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
5
                                auto src = column_left_ptr
787
5
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
5
                                std::memcpy(&tmp, &src, sizeof(src));
789
5
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
5
                                                            type_right, max_and_multiplier.first,
791
5
                                                            max_and_multiplier.second, type_result,
792
5
                                                            check_overflow_for_decimal);
793
5
                                return true;
794
5
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Line
Count
Source
782
53
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
53
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
53
                                        type_left, type_right, type_result);
785
53
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
53
                                auto src = column_left_ptr
787
53
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
53
                                std::memcpy(&tmp, &src, sizeof(src));
789
53
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
53
                                                            type_right, max_and_multiplier.first,
791
53
                                                            max_and_multiplier.second, type_result,
792
53
                                                            check_overflow_for_decimal);
793
53
                                return true;
794
53
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Line
Count
Source
782
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
4
                                        type_left, type_right, type_result);
785
4
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
4
                                auto src = column_left_ptr
787
4
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
4
                                std::memcpy(&tmp, &src, sizeof(src));
789
4
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
4
                                                            type_right, max_and_multiplier.first,
791
4
                                                            max_and_multiplier.second, type_result,
792
4
                                                            check_overflow_for_decimal);
793
4
                                return true;
794
4
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Line
Count
Source
782
3
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
3
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
3
                                        type_left, type_right, type_result);
785
3
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
3
                                auto src = column_left_ptr
787
3
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
3
                                std::memcpy(&tmp, &src, sizeof(src));
789
3
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
3
                                                            type_right, max_and_multiplier.first,
791
3
                                                            max_and_multiplier.second, type_result,
792
3
                                                            check_overflow_for_decimal);
793
3
                                return true;
794
3
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Line
Count
Source
782
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
1
                                        type_left, type_right, type_result);
785
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
1
                                auto src = column_left_ptr
787
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
1
                                std::memcpy(&tmp, &src, sizeof(src));
789
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
1
                                                            type_right, max_and_multiplier.first,
791
1
                                                            max_and_multiplier.second, type_result,
792
1
                                                            check_overflow_for_decimal);
793
1
                                return true;
794
1
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
795
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
0
                                    type_to_string(res_data_type->get_primitive_type()));
798
0
                }
799
66
            }
800
67
        } else {
801
0
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
0
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
0
            std::memcpy(&tmp, &src, sizeof(src));
804
0
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
0
        }
806
67
        return res;
807
67
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
754
1
                              bool check_overflow_for_decimal) const {
755
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
1
        DCHECK(column_left_ptr != nullptr);
757
758
1
        ColumnPtr res = nullptr;
759
1
        if constexpr (result_is_decimal) {
760
1
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
1
                                        type_left, type_right, type_result);
765
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
1
                                auto src = column_left_ptr
767
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
1
                                std::memcpy(&tmp, &src, sizeof(src));
769
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
1
                                                            type_right, max_and_multiplier.first,
771
1
                                                            max_and_multiplier.second, type_result,
772
1
                                                            check_overflow_for_decimal);
773
1
                                return true;
774
1
                            })) {
775
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
0
                                    type_to_string(res_data_type->get_primitive_type()));
778
0
                }
779
            } else {
780
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
                                         DataTypeDecimal256>(
782
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
                                        type_left, type_right, type_result);
785
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
                                auto src = column_left_ptr
787
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
                                std::memcpy(&tmp, &src, sizeof(src));
789
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
                                                            type_right, max_and_multiplier.first,
791
                                                            max_and_multiplier.second, type_result,
792
                                                            check_overflow_for_decimal);
793
                                return true;
794
                            })) {
795
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
                                    type_to_string(res_data_type->get_primitive_type()));
798
                }
799
            }
800
        } else {
801
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
            std::memcpy(&tmp, &src, sizeof(src));
804
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
        }
806
1
        return res;
807
1
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
754
5
                              bool check_overflow_for_decimal) const {
755
5
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
5
        DCHECK(column_left_ptr != nullptr);
757
758
5
        ColumnPtr res = nullptr;
759
5
        if constexpr (result_is_decimal) {
760
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
                                        type_left, type_right, type_result);
765
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
                                auto src = column_left_ptr
767
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
                                std::memcpy(&tmp, &src, sizeof(src));
769
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
                                                            type_right, max_and_multiplier.first,
771
                                                            max_and_multiplier.second, type_result,
772
                                                            check_overflow_for_decimal);
773
                                return true;
774
                            })) {
775
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
                                    type_to_string(res_data_type->get_primitive_type()));
778
                }
779
5
            } else {
780
5
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
5
                                         DataTypeDecimal256>(
782
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
5
                                        type_left, type_right, type_result);
785
5
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
5
                                auto src = column_left_ptr
787
5
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
5
                                std::memcpy(&tmp, &src, sizeof(src));
789
5
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
5
                                                            type_right, max_and_multiplier.first,
791
5
                                                            max_and_multiplier.second, type_result,
792
5
                                                            check_overflow_for_decimal);
793
5
                                return true;
794
5
                            })) {
795
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
0
                                    type_to_string(res_data_type->get_primitive_type()));
798
0
                }
799
5
            }
800
        } else {
801
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
            std::memcpy(&tmp, &src, sizeof(src));
804
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
        }
806
5
        return res;
807
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
754
53
                              bool check_overflow_for_decimal) const {
755
53
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
53
        DCHECK(column_left_ptr != nullptr);
757
758
53
        ColumnPtr res = nullptr;
759
53
        if constexpr (result_is_decimal) {
760
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
                                        type_left, type_right, type_result);
765
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
                                auto src = column_left_ptr
767
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
                                std::memcpy(&tmp, &src, sizeof(src));
769
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
                                                            type_right, max_and_multiplier.first,
771
                                                            max_and_multiplier.second, type_result,
772
                                                            check_overflow_for_decimal);
773
                                return true;
774
                            })) {
775
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
                                    type_to_string(res_data_type->get_primitive_type()));
778
                }
779
53
            } else {
780
53
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
53
                                         DataTypeDecimal256>(
782
53
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
53
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
53
                                        type_left, type_right, type_result);
785
53
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
53
                                auto src = column_left_ptr
787
53
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
53
                                std::memcpy(&tmp, &src, sizeof(src));
789
53
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
53
                                                            type_right, max_and_multiplier.first,
791
53
                                                            max_and_multiplier.second, type_result,
792
53
                                                            check_overflow_for_decimal);
793
53
                                return true;
794
53
                            })) {
795
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
0
                                    type_to_string(res_data_type->get_primitive_type()));
798
0
                }
799
53
            }
800
        } else {
801
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
            std::memcpy(&tmp, &src, sizeof(src));
804
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
        }
806
53
        return res;
807
53
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
754
4
                              bool check_overflow_for_decimal) const {
755
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
4
        DCHECK(column_left_ptr != nullptr);
757
758
4
        ColumnPtr res = nullptr;
759
4
        if constexpr (result_is_decimal) {
760
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
                                        type_left, type_right, type_result);
765
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
                                auto src = column_left_ptr
767
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
                                std::memcpy(&tmp, &src, sizeof(src));
769
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
                                                            type_right, max_and_multiplier.first,
771
                                                            max_and_multiplier.second, type_result,
772
                                                            check_overflow_for_decimal);
773
                                return true;
774
                            })) {
775
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
                                    type_to_string(res_data_type->get_primitive_type()));
778
                }
779
4
            } else {
780
4
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
4
                                         DataTypeDecimal256>(
782
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
4
                                        type_left, type_right, type_result);
785
4
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
4
                                auto src = column_left_ptr
787
4
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
4
                                std::memcpy(&tmp, &src, sizeof(src));
789
4
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
4
                                                            type_right, max_and_multiplier.first,
791
4
                                                            max_and_multiplier.second, type_result,
792
4
                                                            check_overflow_for_decimal);
793
4
                                return true;
794
4
                            })) {
795
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
0
                                    type_to_string(res_data_type->get_primitive_type()));
798
0
                }
799
4
            }
800
        } else {
801
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
            std::memcpy(&tmp, &src, sizeof(src));
804
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
        }
806
4
        return res;
807
4
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
754
3
                              bool check_overflow_for_decimal) const {
755
3
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
3
        DCHECK(column_left_ptr != nullptr);
757
758
3
        ColumnPtr res = nullptr;
759
3
        if constexpr (result_is_decimal) {
760
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
                                        type_left, type_right, type_result);
765
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
                                auto src = column_left_ptr
767
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
                                std::memcpy(&tmp, &src, sizeof(src));
769
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
                                                            type_right, max_and_multiplier.first,
771
                                                            max_and_multiplier.second, type_result,
772
                                                            check_overflow_for_decimal);
773
                                return true;
774
                            })) {
775
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
                                    type_to_string(res_data_type->get_primitive_type()));
778
                }
779
3
            } else {
780
3
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
3
                                         DataTypeDecimal256>(
782
3
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
3
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
3
                                        type_left, type_right, type_result);
785
3
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
3
                                auto src = column_left_ptr
787
3
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
3
                                std::memcpy(&tmp, &src, sizeof(src));
789
3
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
3
                                                            type_right, max_and_multiplier.first,
791
3
                                                            max_and_multiplier.second, type_result,
792
3
                                                            check_overflow_for_decimal);
793
3
                                return true;
794
3
                            })) {
795
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
0
                                    type_to_string(res_data_type->get_primitive_type()));
798
0
                }
799
3
            }
800
        } else {
801
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
            std::memcpy(&tmp, &src, sizeof(src));
804
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
        }
806
3
        return res;
807
3
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
754
1
                              bool check_overflow_for_decimal) const {
755
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
756
1
        DCHECK(column_left_ptr != nullptr);
757
758
1
        ColumnPtr res = nullptr;
759
1
        if constexpr (result_is_decimal) {
760
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
761
                if (!cast_type_to_either<DataTypeDecimalV2>(
762
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
763
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
764
                                        type_left, type_right, type_result);
765
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
766
                                auto src = column_left_ptr
767
                                                   ->template get_value<Impl::DataTypeA::PType>();
768
                                std::memcpy(&tmp, &src, sizeof(src));
769
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
770
                                                            type_right, max_and_multiplier.first,
771
                                                            max_and_multiplier.second, type_result,
772
                                                            check_overflow_for_decimal);
773
                                return true;
774
                            })) {
775
                    throw Exception(ErrorCode::INTERNAL_ERROR,
776
                                    "Wrong type. Expected: Decimal, Actually: {}",
777
                                    type_to_string(res_data_type->get_primitive_type()));
778
                }
779
1
            } else {
780
1
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
781
1
                                         DataTypeDecimal256>(
782
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
783
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
784
1
                                        type_left, type_right, type_result);
785
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
786
1
                                auto src = column_left_ptr
787
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
788
1
                                std::memcpy(&tmp, &src, sizeof(src));
789
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
790
1
                                                            type_right, max_and_multiplier.first,
791
1
                                                            max_and_multiplier.second, type_result,
792
1
                                                            check_overflow_for_decimal);
793
1
                                return true;
794
1
                            })) {
795
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
796
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
797
0
                                    type_to_string(res_data_type->get_primitive_type()));
798
0
                }
799
1
            }
800
        } else {
801
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
802
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
803
            std::memcpy(&tmp, &src, sizeof(src));
804
            res = Impl::constant_vector(tmp, column_right->get_ptr());
805
        }
806
1
        return res;
807
1
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_3EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_4EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_8EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_9EEESD_St10shared_ptrIKNS_9IDataTypeEEb
808
809
    ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right,
810
                            const typename Impl::DataTypeA* type_left,
811
                            const typename Impl::DataTypeB* type_right, DataTypePtr res_data_type,
812
6.85k
                            bool check_overflow_for_decimal) const {
813
6.85k
        ColumnPtr res = nullptr;
814
6.85k
        if constexpr (result_is_decimal) {
815
3.13k
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
154
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
154
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
154
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
154
                                        type_left, type_right, type_result);
820
154
                                res = Impl::vector_vector(column_left->get_ptr(),
821
154
                                                          column_right->get_ptr(), type_left,
822
154
                                                          type_right, max_and_multiplier.first,
823
154
                                                          max_and_multiplier.second, type_result,
824
154
                                                          check_overflow_for_decimal);
825
154
                                return true;
826
154
                            })) {
827
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
0
                                    type_to_string(res_data_type->get_primitive_type()));
830
0
                }
831
2.98k
            } else {
832
2.98k
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
2.98k
                                         DataTypeDecimal256>(
834
2.98k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
2.97k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
2.97k
                                        type_left, type_right, type_result);
837
2.97k
                                res = Impl::vector_vector(column_left->get_ptr(),
838
2.97k
                                                          column_right->get_ptr(), type_left,
839
2.97k
                                                          type_right, max_and_multiplier.first,
840
2.97k
                                                          max_and_multiplier.second, type_result,
841
2.97k
                                                          check_overflow_for_decimal);
842
2.97k
                                return true;
843
2.97k
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
834
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
2
                                        type_left, type_right, type_result);
837
2
                                res = Impl::vector_vector(column_left->get_ptr(),
838
2
                                                          column_right->get_ptr(), type_left,
839
2
                                                          type_right, max_and_multiplier.first,
840
2
                                                          max_and_multiplier.second, type_result,
841
2
                                                          check_overflow_for_decimal);
842
2
                                return true;
843
2
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Line
Count
Source
834
26
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
26
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
26
                                        type_left, type_right, type_result);
837
26
                                res = Impl::vector_vector(column_left->get_ptr(),
838
26
                                                          column_right->get_ptr(), type_left,
839
26
                                                          type_right, max_and_multiplier.first,
840
26
                                                          max_and_multiplier.second, type_result,
841
26
                                                          check_overflow_for_decimal);
842
26
                                return true;
843
26
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Line
Count
Source
834
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
2
                                        type_left, type_right, type_result);
837
2
                                res = Impl::vector_vector(column_left->get_ptr(),
838
2
                                                          column_right->get_ptr(), type_left,
839
2
                                                          type_right, max_and_multiplier.first,
840
2
                                                          max_and_multiplier.second, type_result,
841
2
                                                          check_overflow_for_decimal);
842
2
                                return true;
843
2
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Line
Count
Source
834
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
4
                                        type_left, type_right, type_result);
837
4
                                res = Impl::vector_vector(column_left->get_ptr(),
838
4
                                                          column_right->get_ptr(), type_left,
839
4
                                                          type_right, max_and_multiplier.first,
840
4
                                                          max_and_multiplier.second, type_result,
841
4
                                                          check_overflow_for_decimal);
842
4
                                return true;
843
4
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Line
Count
Source
834
45
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
45
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
45
                                        type_left, type_right, type_result);
837
45
                                res = Impl::vector_vector(column_left->get_ptr(),
838
45
                                                          column_right->get_ptr(), type_left,
839
45
                                                          type_right, max_and_multiplier.first,
840
45
                                                          max_and_multiplier.second, type_result,
841
45
                                                          check_overflow_for_decimal);
842
45
                                return true;
843
45
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Line
Count
Source
834
3
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
3
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
3
                                        type_left, type_right, type_result);
837
3
                                res = Impl::vector_vector(column_left->get_ptr(),
838
3
                                                          column_right->get_ptr(), type_left,
839
3
                                                          type_right, max_and_multiplier.first,
840
3
                                                          max_and_multiplier.second, type_result,
841
3
                                                          check_overflow_for_decimal);
842
3
                                return true;
843
3
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
834
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
1
                                        type_left, type_right, type_result);
837
1
                                res = Impl::vector_vector(column_left->get_ptr(),
838
1
                                                          column_right->get_ptr(), type_left,
839
1
                                                          type_right, max_and_multiplier.first,
840
1
                                                          max_and_multiplier.second, type_result,
841
1
                                                          check_overflow_for_decimal);
842
1
                                return true;
843
1
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Line
Count
Source
834
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
5
                                        type_left, type_right, type_result);
837
5
                                res = Impl::vector_vector(column_left->get_ptr(),
838
5
                                                          column_right->get_ptr(), type_left,
839
5
                                                          type_right, max_and_multiplier.first,
840
5
                                                          max_and_multiplier.second, type_result,
841
5
                                                          check_overflow_for_decimal);
842
5
                                return true;
843
5
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
Line
Count
Source
834
2.14k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
2.14k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
2.14k
                                        type_left, type_right, type_result);
837
2.14k
                                res = Impl::vector_vector(column_left->get_ptr(),
838
2.14k
                                                          column_right->get_ptr(), type_left,
839
2.14k
                                                          type_right, max_and_multiplier.first,
840
2.14k
                                                          max_and_multiplier.second, type_result,
841
2.14k
                                                          check_overflow_for_decimal);
842
2.14k
                                return true;
843
2.14k
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Line
Count
Source
834
9
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
9
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
9
                                        type_left, type_right, type_result);
837
9
                                res = Impl::vector_vector(column_left->get_ptr(),
838
9
                                                          column_right->get_ptr(), type_left,
839
9
                                                          type_right, max_and_multiplier.first,
840
9
                                                          max_and_multiplier.second, type_result,
841
9
                                                          check_overflow_for_decimal);
842
9
                                return true;
843
9
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Line
Count
Source
834
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
2
                                        type_left, type_right, type_result);
837
2
                                res = Impl::vector_vector(column_left->get_ptr(),
838
2
                                                          column_right->get_ptr(), type_left,
839
2
                                                          type_right, max_and_multiplier.first,
840
2
                                                          max_and_multiplier.second, type_result,
841
2
                                                          check_overflow_for_decimal);
842
2
                                return true;
843
2
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
834
56
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
56
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
56
                                        type_left, type_right, type_result);
837
56
                                res = Impl::vector_vector(column_left->get_ptr(),
838
56
                                                          column_right->get_ptr(), type_left,
839
56
                                                          type_right, max_and_multiplier.first,
840
56
                                                          max_and_multiplier.second, type_result,
841
56
                                                          check_overflow_for_decimal);
842
56
                                return true;
843
56
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
834
466
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
466
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
466
                                        type_left, type_right, type_result);
837
466
                                res = Impl::vector_vector(column_left->get_ptr(),
838
466
                                                          column_right->get_ptr(), type_left,
839
466
                                                          type_right, max_and_multiplier.first,
840
466
                                                          max_and_multiplier.second, type_result,
841
466
                                                          check_overflow_for_decimal);
842
466
                                return true;
843
466
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
834
89
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
89
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
89
                                        type_left, type_right, type_result);
837
89
                                res = Impl::vector_vector(column_left->get_ptr(),
838
89
                                                          column_right->get_ptr(), type_left,
839
89
                                                          type_right, max_and_multiplier.first,
840
89
                                                          max_and_multiplier.second, type_result,
841
89
                                                          check_overflow_for_decimal);
842
89
                                return true;
843
89
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Line
Count
Source
834
61
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
61
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
61
                                        type_left, type_right, type_result);
837
61
                                res = Impl::vector_vector(column_left->get_ptr(),
838
61
                                                          column_right->get_ptr(), type_left,
839
61
                                                          type_right, max_and_multiplier.first,
840
61
                                                          max_and_multiplier.second, type_result,
841
61
                                                          check_overflow_for_decimal);
842
61
                                return true;
843
61
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
834
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
4
                                        type_left, type_right, type_result);
837
4
                                res = Impl::vector_vector(column_left->get_ptr(),
838
4
                                                          column_right->get_ptr(), type_left,
839
4
                                                          type_right, max_and_multiplier.first,
840
4
                                                          max_and_multiplier.second, type_result,
841
4
                                                          check_overflow_for_decimal);
842
4
                                return true;
843
4
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSN_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISE_EEDaSN_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSN_
Line
Count
Source
834
42
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
42
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
42
                                        type_left, type_right, type_result);
837
42
                                res = Impl::vector_vector(column_left->get_ptr(),
838
42
                                                          column_right->get_ptr(), type_left,
839
42
                                                          type_right, max_and_multiplier.first,
840
42
                                                          max_and_multiplier.second, type_result,
841
42
                                                          check_overflow_for_decimal);
842
42
                                return true;
843
42
                            })) {
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_28EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Unexecuted instantiation: _ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSK_
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
834
15
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
15
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
15
                                        type_left, type_right, type_result);
837
15
                                res = Impl::vector_vector(column_left->get_ptr(),
838
15
                                                          column_right->get_ptr(), type_left,
839
15
                                                          type_right, max_and_multiplier.first,
840
15
                                                          max_and_multiplier.second, type_result,
841
15
                                                          check_overflow_for_decimal);
842
15
                                return true;
843
15
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
2.98k
            }
849
3.71k
        } else {
850
3.71k
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
3.71k
        }
852
3.13k
        return res;
853
6.85k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
154
                            bool check_overflow_for_decimal) const {
813
154
        ColumnPtr res = nullptr;
814
154
        if constexpr (result_is_decimal) {
815
154
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
154
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
154
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
154
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
154
                                        type_left, type_right, type_result);
820
154
                                res = Impl::vector_vector(column_left->get_ptr(),
821
154
                                                          column_right->get_ptr(), type_left,
822
154
                                                          type_right, max_and_multiplier.first,
823
154
                                                          max_and_multiplier.second, type_result,
824
154
                                                          check_overflow_for_decimal);
825
154
                                return true;
826
154
                            })) {
827
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
0
                                    type_to_string(res_data_type->get_primitive_type()));
830
0
                }
831
            } else {
832
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
                                         DataTypeDecimal256>(
834
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
                                        type_left, type_right, type_result);
837
                                res = Impl::vector_vector(column_left->get_ptr(),
838
                                                          column_right->get_ptr(), type_left,
839
                                                          type_right, max_and_multiplier.first,
840
                                                          max_and_multiplier.second, type_result,
841
                                                          check_overflow_for_decimal);
842
                                return true;
843
                            })) {
844
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
                                    type_to_string(res_data_type->get_primitive_type()));
847
                }
848
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
154
        return res;
853
154
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
28
                            bool check_overflow_for_decimal) const {
813
28
        ColumnPtr res = nullptr;
814
28
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
28
            } else {
832
28
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
28
                                         DataTypeDecimal256>(
834
28
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
28
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
28
                                        type_left, type_right, type_result);
837
28
                                res = Impl::vector_vector(column_left->get_ptr(),
838
28
                                                          column_right->get_ptr(), type_left,
839
28
                                                          type_right, max_and_multiplier.first,
840
28
                                                          max_and_multiplier.second, type_result,
841
28
                                                          check_overflow_for_decimal);
842
28
                                return true;
843
28
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
28
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
28
        return res;
853
28
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
6
                            bool check_overflow_for_decimal) const {
813
6
        ColumnPtr res = nullptr;
814
6
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
6
            } else {
832
6
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
6
                                         DataTypeDecimal256>(
834
6
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
6
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
6
                                        type_left, type_right, type_result);
837
6
                                res = Impl::vector_vector(column_left->get_ptr(),
838
6
                                                          column_right->get_ptr(), type_left,
839
6
                                                          type_right, max_and_multiplier.first,
840
6
                                                          max_and_multiplier.second, type_result,
841
6
                                                          check_overflow_for_decimal);
842
6
                                return true;
843
6
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
6
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
6
        return res;
853
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
48
                            bool check_overflow_for_decimal) const {
813
48
        ColumnPtr res = nullptr;
814
48
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
48
            } else {
832
48
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
48
                                         DataTypeDecimal256>(
834
48
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
48
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
48
                                        type_left, type_right, type_result);
837
48
                                res = Impl::vector_vector(column_left->get_ptr(),
838
48
                                                          column_right->get_ptr(), type_left,
839
48
                                                          type_right, max_and_multiplier.first,
840
48
                                                          max_and_multiplier.second, type_result,
841
48
                                                          check_overflow_for_decimal);
842
48
                                return true;
843
48
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
48
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
48
        return res;
853
48
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
6
                            bool check_overflow_for_decimal) const {
813
6
        ColumnPtr res = nullptr;
814
6
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
6
            } else {
832
6
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
6
                                         DataTypeDecimal256>(
834
6
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
6
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
6
                                        type_left, type_right, type_result);
837
6
                                res = Impl::vector_vector(column_left->get_ptr(),
838
6
                                                          column_right->get_ptr(), type_left,
839
6
                                                          type_right, max_and_multiplier.first,
840
6
                                                          max_and_multiplier.second, type_result,
841
6
                                                          check_overflow_for_decimal);
842
6
                                return true;
843
6
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
6
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
6
        return res;
853
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
2.15k
                            bool check_overflow_for_decimal) const {
813
2.15k
        ColumnPtr res = nullptr;
814
2.15k
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
2.15k
            } else {
832
2.15k
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
2.15k
                                         DataTypeDecimal256>(
834
2.15k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
2.15k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
2.15k
                                        type_left, type_right, type_result);
837
2.15k
                                res = Impl::vector_vector(column_left->get_ptr(),
838
2.15k
                                                          column_right->get_ptr(), type_left,
839
2.15k
                                                          type_right, max_and_multiplier.first,
840
2.15k
                                                          max_and_multiplier.second, type_result,
841
2.15k
                                                          check_overflow_for_decimal);
842
2.15k
                                return true;
843
2.15k
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
2.15k
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
2.15k
        return res;
853
2.15k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
11
                            bool check_overflow_for_decimal) const {
813
11
        ColumnPtr res = nullptr;
814
11
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
11
            } else {
832
11
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
11
                                         DataTypeDecimal256>(
834
11
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
11
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
11
                                        type_left, type_right, type_result);
837
11
                                res = Impl::vector_vector(column_left->get_ptr(),
838
11
                                                          column_right->get_ptr(), type_left,
839
11
                                                          type_right, max_and_multiplier.first,
840
11
                                                          max_and_multiplier.second, type_result,
841
11
                                                          check_overflow_for_decimal);
842
11
                                return true;
843
11
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
11
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
11
        return res;
853
11
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
56
                            bool check_overflow_for_decimal) const {
813
56
        ColumnPtr res = nullptr;
814
56
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
56
            } else {
832
56
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
56
                                         DataTypeDecimal256>(
834
56
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
56
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
56
                                        type_left, type_right, type_result);
837
56
                                res = Impl::vector_vector(column_left->get_ptr(),
838
56
                                                          column_right->get_ptr(), type_left,
839
56
                                                          type_right, max_and_multiplier.first,
840
56
                                                          max_and_multiplier.second, type_result,
841
56
                                                          check_overflow_for_decimal);
842
56
                                return true;
843
56
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
56
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
56
        return res;
853
56
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
466
                            bool check_overflow_for_decimal) const {
813
466
        ColumnPtr res = nullptr;
814
466
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
466
            } else {
832
466
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
466
                                         DataTypeDecimal256>(
834
466
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
466
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
466
                                        type_left, type_right, type_result);
837
466
                                res = Impl::vector_vector(column_left->get_ptr(),
838
466
                                                          column_right->get_ptr(), type_left,
839
466
                                                          type_right, max_and_multiplier.first,
840
466
                                                          max_and_multiplier.second, type_result,
841
466
                                                          check_overflow_for_decimal);
842
466
                                return true;
843
466
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
466
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
466
        return res;
853
466
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
150
                            bool check_overflow_for_decimal) const {
813
150
        ColumnPtr res = nullptr;
814
150
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
150
            } else {
832
150
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
150
                                         DataTypeDecimal256>(
834
150
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
150
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
150
                                        type_left, type_right, type_result);
837
150
                                res = Impl::vector_vector(column_left->get_ptr(),
838
150
                                                          column_right->get_ptr(), type_left,
839
150
                                                          type_right, max_and_multiplier.first,
840
150
                                                          max_and_multiplier.second, type_result,
841
150
                                                          check_overflow_for_decimal);
842
150
                                return true;
843
150
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
150
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
150
        return res;
853
150
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_35EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
4
                            bool check_overflow_for_decimal) const {
813
4
        ColumnPtr res = nullptr;
814
4
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
4
            } else {
832
4
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
4
                                         DataTypeDecimal256>(
834
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
4
                                        type_left, type_right, type_result);
837
4
                                res = Impl::vector_vector(column_left->get_ptr(),
838
4
                                                          column_right->get_ptr(), type_left,
839
4
                                                          type_right, max_and_multiplier.first,
840
4
                                                          max_and_multiplier.second, type_result,
841
4
                                                          check_overflow_for_decimal);
842
4
                                return true;
843
4
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
4
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
4
        return res;
853
4
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
42
                            bool check_overflow_for_decimal) const {
813
42
        ColumnPtr res = nullptr;
814
42
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
42
            } else {
832
42
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
42
                                         DataTypeDecimal256>(
834
42
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
42
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
42
                                        type_left, type_right, type_result);
837
42
                                res = Impl::vector_vector(column_left->get_ptr(),
838
42
                                                          column_right->get_ptr(), type_left,
839
42
                                                          type_right, max_and_multiplier.first,
840
42
                                                          max_and_multiplier.second, type_result,
841
42
                                                          check_overflow_for_decimal);
842
42
                                return true;
843
42
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
42
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
42
        return res;
853
42
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
15
                            bool check_overflow_for_decimal) const {
813
15
        ColumnPtr res = nullptr;
814
15
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
15
            } else {
832
15
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
15
                                         DataTypeDecimal256>(
834
15
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
15
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
15
                                        type_left, type_right, type_result);
837
15
                                res = Impl::vector_vector(column_left->get_ptr(),
838
15
                                                          column_right->get_ptr(), type_left,
839
15
                                                          type_right, max_and_multiplier.first,
840
15
                                                          max_and_multiplier.second, type_result,
841
15
                                                          check_overflow_for_decimal);
842
15
                                return true;
843
15
                            })) {
844
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
0
                                    type_to_string(res_data_type->get_primitive_type()));
847
0
                }
848
15
            }
849
        } else {
850
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
        }
852
15
        return res;
853
15
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_3EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_4EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
38
                            bool check_overflow_for_decimal) const {
813
38
        ColumnPtr res = nullptr;
814
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
            } else {
832
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
                                         DataTypeDecimal256>(
834
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
                                        type_left, type_right, type_result);
837
                                res = Impl::vector_vector(column_left->get_ptr(),
838
                                                          column_right->get_ptr(), type_left,
839
                                                          type_right, max_and_multiplier.first,
840
                                                          max_and_multiplier.second, type_result,
841
                                                          check_overflow_for_decimal);
842
                                return true;
843
                            })) {
844
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
                                    type_to_string(res_data_type->get_primitive_type()));
847
                }
848
            }
849
38
        } else {
850
38
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
38
        }
852
38
        return res;
853
38
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
64
                            bool check_overflow_for_decimal) const {
813
64
        ColumnPtr res = nullptr;
814
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
            } else {
832
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
                                         DataTypeDecimal256>(
834
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
                                        type_left, type_right, type_result);
837
                                res = Impl::vector_vector(column_left->get_ptr(),
838
                                                          column_right->get_ptr(), type_left,
839
                                                          type_right, max_and_multiplier.first,
840
                                                          max_and_multiplier.second, type_result,
841
                                                          check_overflow_for_decimal);
842
                                return true;
843
                            })) {
844
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
                                    type_to_string(res_data_type->get_primitive_type()));
847
                }
848
            }
849
64
        } else {
850
64
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
64
        }
852
64
        return res;
853
64
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
982
                            bool check_overflow_for_decimal) const {
813
982
        ColumnPtr res = nullptr;
814
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
            } else {
832
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
                                         DataTypeDecimal256>(
834
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
                                        type_left, type_right, type_result);
837
                                res = Impl::vector_vector(column_left->get_ptr(),
838
                                                          column_right->get_ptr(), type_left,
839
                                                          type_right, max_and_multiplier.first,
840
                                                          max_and_multiplier.second, type_result,
841
                                                          check_overflow_for_decimal);
842
                                return true;
843
                            })) {
844
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
                                    type_to_string(res_data_type->get_primitive_type()));
847
                }
848
            }
849
982
        } else {
850
982
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
982
        }
852
982
        return res;
853
982
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
152
                            bool check_overflow_for_decimal) const {
813
152
        ColumnPtr res = nullptr;
814
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
            } else {
832
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
                                         DataTypeDecimal256>(
834
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
                                        type_left, type_right, type_result);
837
                                res = Impl::vector_vector(column_left->get_ptr(),
838
                                                          column_right->get_ptr(), type_left,
839
                                                          type_right, max_and_multiplier.first,
840
                                                          max_and_multiplier.second, type_result,
841
                                                          check_overflow_for_decimal);
842
                                return true;
843
                            })) {
844
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
                                    type_to_string(res_data_type->get_primitive_type()));
847
                }
848
            }
849
152
        } else {
850
152
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
152
        }
852
152
        return res;
853
152
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_8EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_9EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
812
2.48k
                            bool check_overflow_for_decimal) const {
813
2.48k
        ColumnPtr res = nullptr;
814
        if constexpr (result_is_decimal) {
815
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
816
                if (!cast_type_to_either<DataTypeDecimalV2>(
817
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
818
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
819
                                        type_left, type_right, type_result);
820
                                res = Impl::vector_vector(column_left->get_ptr(),
821
                                                          column_right->get_ptr(), type_left,
822
                                                          type_right, max_and_multiplier.first,
823
                                                          max_and_multiplier.second, type_result,
824
                                                          check_overflow_for_decimal);
825
                                return true;
826
                            })) {
827
                    throw Exception(ErrorCode::INTERNAL_ERROR,
828
                                    "Wrong type. Expected: Decimal, Actually: {}",
829
                                    type_to_string(res_data_type->get_primitive_type()));
830
                }
831
            } else {
832
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
833
                                         DataTypeDecimal256>(
834
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
835
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
836
                                        type_left, type_right, type_result);
837
                                res = Impl::vector_vector(column_left->get_ptr(),
838
                                                          column_right->get_ptr(), type_left,
839
                                                          type_right, max_and_multiplier.first,
840
                                                          max_and_multiplier.second, type_result,
841
                                                          check_overflow_for_decimal);
842
                                return true;
843
                            })) {
844
                    throw Exception(ErrorCode::INTERNAL_ERROR,
845
                                    "Wrong type. Expected: Decimal, Actually: {}",
846
                                    type_to_string(res_data_type->get_primitive_type()));
847
                }
848
            }
849
2.48k
        } else {
850
2.48k
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
851
2.48k
        }
852
2.48k
        return res;
853
2.48k
    }
854
};
855
856
5
void register_function_multiply(SimpleFunctionFactory& factory) {
857
5
    factory.register_function<
858
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMALV2, TYPE_DECIMALV2>>>();
859
860
5
    factory.register_function<
861
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL32>>>();
862
5
    factory.register_function<
863
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL64>>>();
864
5
    factory.register_function<
865
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL128I>>>();
866
5
    factory.register_function<
867
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL256>>>();
868
869
5
    factory.register_function<
870
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL32>>>();
871
5
    factory.register_function<
872
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL64>>>();
873
5
    factory.register_function<
874
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL128I>>>();
875
5
    factory.register_function<
876
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL256>>>();
877
878
5
    factory.register_function<
879
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL32>>>();
880
5
    factory.register_function<
881
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL64>>>();
882
5
    factory.register_function<
883
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL128I>>>();
884
5
    factory.register_function<
885
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL256>>>();
886
887
5
    factory.register_function<
888
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL32>>>();
889
5
    factory.register_function<
890
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL64>>>();
891
5
    factory.register_function<
892
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL128I>>>();
893
5
    factory.register_function<
894
5
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL256>>>();
895
896
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_TINYINT>>>();
897
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_SMALLINT>>>();
898
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_INT>>>();
899
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_BIGINT>>>();
900
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_LARGEINT>>>();
901
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_FLOAT>>>();
902
5
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_DOUBLE>>>();
903
5
}
904
} // namespace doris