Coverage Report

Created: 2026-04-03 12:33

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
#include "common/compile_check_begin.h"
36
template <PrimitiveType Type>
37
struct MultiplyIntegralImpl {
38
    static constexpr bool result_is_decimal = false;
39
    using Arg = typename PrimitiveTypeTraits<Type>::CppType;
40
    using ColumnType = typename PrimitiveTypeTraits<Type>::ColumnType;
41
    static constexpr PrimitiveType ArgAPType = Type;
42
    static constexpr PrimitiveType ArgBPType = Type;
43
    using ArgA = Arg;
44
    using ArgB = Arg;
45
    using DataTypeA = typename PrimitiveTypeTraits<Type>::DataType;
46
    using DataTypeB = typename PrimitiveTypeTraits<Type>::DataType;
47
    static constexpr PrimitiveType ResultType = Type;
48
    constexpr static bool need_replace_null_data_to_default = false;
49
50
42
    static DataTypes get_variadic_argument_types() {
51
42
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
42
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
42
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE27get_variadic_argument_typesEv
Line
Count
Source
50
6
    static DataTypes get_variadic_argument_types() {
51
6
        return {std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>(),
52
6
                std::make_shared<typename PrimitiveTypeTraits<Type>::DataType>()};
53
6
    }
54
55
    NO_SANITIZE_UNDEFINED static inline typename PrimitiveTypeTraits<Type>::CppType apply(Arg a,
56
2.46M
                                                                                          Arg b) {
57
2.46M
        return a * b;
58
2.46M
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE5applyEaa
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE5applyEss
Line
Count
Source
56
208
                                                                                          Arg b) {
57
208
        return a * b;
58
208
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE5applyEii
Line
Count
Source
56
285
                                                                                          Arg b) {
57
285
        return a * b;
58
285
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE5applyEll
Line
Count
Source
56
126k
                                                                                          Arg b) {
57
126k
        return a * b;
58
126k
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE5applyEnn
Line
Count
Source
56
940
                                                                                          Arg b) {
57
940
        return a * b;
58
940
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE5applyEff
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE5applyEdd
Line
Count
Source
56
2.33M
                                                                                          Arg b) {
57
2.33M
        return a * b;
58
2.33M
    }
59
60
15
    static ColumnPtr constant_constant(Arg a, Arg b) {
61
15
        auto column_result = ColumnType ::create(1);
62
15
        column_result->get_element(0) = apply(a, b);
63
15
        return column_result;
64
15
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE17constant_constantEaa
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE17constant_constantEss
Line
Count
Source
60
2
    static ColumnPtr constant_constant(Arg a, Arg b) {
61
2
        auto column_result = ColumnType ::create(1);
62
2
        column_result->get_element(0) = apply(a, b);
63
2
        return column_result;
64
2
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE17constant_constantEii
Line
Count
Source
60
4
    static ColumnPtr constant_constant(Arg a, Arg b) {
61
4
        auto column_result = ColumnType ::create(1);
62
4
        column_result->get_element(0) = apply(a, b);
63
4
        return column_result;
64
4
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE17constant_constantEll
Line
Count
Source
60
4
    static ColumnPtr constant_constant(Arg a, Arg b) {
61
4
        auto column_result = ColumnType ::create(1);
62
4
        column_result->get_element(0) = apply(a, b);
63
4
        return column_result;
64
4
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE17constant_constantEnn
Line
Count
Source
60
1
    static ColumnPtr constant_constant(Arg a, Arg b) {
61
1
        auto column_result = ColumnType ::create(1);
62
1
        column_result->get_element(0) = apply(a, b);
63
1
        return column_result;
64
1
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE17constant_constantEff
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE17constant_constantEdd
Line
Count
Source
60
4
    static ColumnPtr constant_constant(Arg a, Arg b) {
61
4
        auto column_result = ColumnType ::create(1);
62
4
        column_result->get_element(0) = apply(a, b);
63
4
        return column_result;
64
4
    }
65
66
14.1k
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
67
14.1k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
68
14.1k
        auto column_result = ColumnType::create(column_left->size());
69
70
14.1k
        auto& a = column_left_ptr->get_data();
71
14.1k
        auto& c = column_result->get_data();
72
14.1k
        size_t size = a.size();
73
1.17M
        for (size_t i = 0; i < size; ++i) {
74
1.16M
            c[i] = apply(a[i], b);
75
1.16M
        }
76
14.1k
        return column_result;
77
14.1k
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEa
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEs
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEi
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEl
Line
Count
Source
66
13.9k
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
67
13.9k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
68
13.9k
        auto column_result = ColumnType::create(column_left->size());
69
70
13.9k
        auto& a = column_left_ptr->get_data();
71
13.9k
        auto& c = column_result->get_data();
72
13.9k
        size_t size = a.size();
73
128k
        for (size_t i = 0; i < size; ++i) {
74
115k
            c[i] = apply(a[i], b);
75
115k
        }
76
13.9k
        return column_result;
77
13.9k
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEn
Line
Count
Source
66
6
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
67
6
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
68
6
        auto column_result = ColumnType::create(column_left->size());
69
70
6
        auto& a = column_left_ptr->get_data();
71
6
        auto& c = column_result->get_data();
72
6
        size_t size = a.size();
73
14
        for (size_t i = 0; i < size; ++i) {
74
8
            c[i] = apply(a[i], b);
75
8
        }
76
6
        return column_result;
77
6
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEf
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS4_EEd
Line
Count
Source
66
254
    static ColumnPtr vector_constant(ColumnPtr column_left, Arg b) {
67
254
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
68
254
        auto column_result = ColumnType::create(column_left->size());
69
70
254
        auto& a = column_left_ptr->get_data();
71
254
        auto& c = column_result->get_data();
72
254
        size_t size = a.size();
73
1.04M
        for (size_t i = 0; i < size; ++i) {
74
1.04M
            c[i] = apply(a[i], b);
75
1.04M
        }
76
254
        return column_result;
77
254
    }
78
79
0
    static ColumnPtr constant_vector(Arg a, ColumnPtr column_right) {
80
0
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
81
0
        auto column_result = ColumnType::create(column_right->size());
82
0
        DCHECK(column_right_ptr != nullptr);
83
84
0
        auto& b = column_right_ptr->get_data();
85
0
        auto& c = column_result->get_data();
86
0
        size_t size = b.size();
87
0
        for (size_t i = 0; i < size; ++i) {
88
0
            c[i] = apply(a, b[i]);
89
0
        }
90
0
        return column_result;
91
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
92
93
4.13k
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
94
4.13k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
95
4.13k
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
96
97
4.13k
        auto column_result = ColumnType::create(column_left->size());
98
99
4.13k
        auto& a = column_left_ptr->get_data();
100
4.13k
        auto& b = column_right_ptr->get_data();
101
4.13k
        auto& c = column_result->get_data();
102
4.13k
        size_t size = a.size();
103
1.30M
        for (size_t i = 0; i < size; ++i) {
104
1.30M
            c[i] = apply(a[i], b[i]);
105
1.30M
        }
106
4.13k
        return column_result;
107
4.13k
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE3EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE4EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
93
38
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
94
38
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
95
38
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
96
97
38
        auto column_result = ColumnType::create(column_left->size());
98
99
38
        auto& a = column_left_ptr->get_data();
100
38
        auto& b = column_right_ptr->get_data();
101
38
        auto& c = column_result->get_data();
102
38
        size_t size = a.size();
103
244
        for (size_t i = 0; i < size; ++i) {
104
206
            c[i] = apply(a[i], b[i]);
105
206
        }
106
38
        return column_result;
107
38
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE5EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
93
64
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
94
64
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
95
64
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
96
97
64
        auto column_result = ColumnType::create(column_left->size());
98
99
64
        auto& a = column_left_ptr->get_data();
100
64
        auto& b = column_right_ptr->get_data();
101
64
        auto& c = column_result->get_data();
102
64
        size_t size = a.size();
103
345
        for (size_t i = 0; i < size; ++i) {
104
281
            c[i] = apply(a[i], b[i]);
105
281
        }
106
64
        return column_result;
107
64
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE6EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
93
1.07k
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
94
1.07k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
95
1.07k
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
96
97
1.07k
        auto column_result = ColumnType::create(column_left->size());
98
99
1.07k
        auto& a = column_left_ptr->get_data();
100
1.07k
        auto& b = column_right_ptr->get_data();
101
1.07k
        auto& c = column_result->get_data();
102
1.07k
        size_t size = a.size();
103
12.3k
        for (size_t i = 0; i < size; ++i) {
104
11.3k
            c[i] = apply(a[i], b[i]);
105
11.3k
        }
106
1.07k
        return column_result;
107
1.07k
    }
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE7EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
93
151
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
94
151
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
95
151
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
96
97
151
        auto column_result = ColumnType::create(column_left->size());
98
99
151
        auto& a = column_left_ptr->get_data();
100
151
        auto& b = column_right_ptr->get_data();
101
151
        auto& c = column_result->get_data();
102
151
        size_t size = a.size();
103
1.08k
        for (size_t i = 0; i < size; ++i) {
104
931
            c[i] = apply(a[i], b[i]);
105
931
        }
106
151
        return column_result;
107
151
    }
Unexecuted instantiation: _ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE8EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
_ZN5doris20MultiplyIntegralImplILNS_13PrimitiveTypeE9EE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS4_EES7_
Line
Count
Source
93
2.80k
    static ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right) {
94
2.80k
        const auto* column_left_ptr = assert_cast<const ColumnType*>(column_left.get());
95
2.80k
        const auto* column_right_ptr = assert_cast<const ColumnType*>(column_right.get());
96
97
2.80k
        auto column_result = ColumnType::create(column_left->size());
98
99
2.80k
        auto& a = column_left_ptr->get_data();
100
2.80k
        auto& b = column_right_ptr->get_data();
101
2.80k
        auto& c = column_result->get_data();
102
2.80k
        size_t size = a.size();
103
1.29M
        for (size_t i = 0; i < size; ++i) {
104
1.28M
            c[i] = apply(a[i], b[i]);
105
1.28M
        }
106
2.80k
        return column_result;
107
2.80k
    }
108
};
109
110
template <PrimitiveType TypeA, PrimitiveType TypeB>
111
struct MultiplyDecimalImpl {
112
    static constexpr bool result_is_decimal = true;
113
    static_assert(is_decimal(TypeA) && is_decimal(TypeB));
114
    static_assert((TypeA == TYPE_DECIMALV2 && TypeB == TYPE_DECIMALV2) ||
115
                  (TypeA != TYPE_DECIMALV2 && TypeB != TYPE_DECIMALV2));
116
117
    constexpr static bool need_replace_null_data_to_default = true;
118
    using ArgA = typename PrimitiveTypeTraits<TypeA>::CppType;
119
    using ArgB = typename PrimitiveTypeTraits<TypeB>::CppType;
120
    static constexpr PrimitiveType ArgAPType = TypeA;
121
    static constexpr PrimitiveType ArgBPType = TypeB;
122
    using ArgNativeTypeA = typename PrimitiveTypeTraits<TypeA>::CppType::NativeType;
123
    using ArgNativeTypeB = typename PrimitiveTypeTraits<TypeB>::CppType::NativeType;
124
    using DataTypeA = typename PrimitiveTypeTraits<TypeA>::DataType;
125
    using DataTypeB = typename PrimitiveTypeTraits<TypeB>::DataType;
126
    using ColumnTypeA = typename PrimitiveTypeTraits<TypeA>::ColumnType;
127
    using ColumnTypeB = typename PrimitiveTypeTraits<TypeB>::ColumnType;
128
129
102
    static DataTypes get_variadic_argument_types() {
130
102
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
102
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
102
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_28EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_29EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_30EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS1_35EE27get_variadic_argument_typesEv
Line
Count
Source
129
6
    static DataTypes get_variadic_argument_types() {
130
6
        return {std::make_shared<typename PrimitiveTypeTraits<TypeA>::DataType>(),
131
6
                std::make_shared<typename PrimitiveTypeTraits<TypeB>::DataType>()};
132
6
    }
133
134
    template <PrimitiveType Result>
135
        requires(is_decimal(Result) && Result != TYPE_DECIMALV2)
136
    static inline typename PrimitiveTypeTraits<Result>::CppType::NativeType apply(
137
62
            ArgNativeTypeA a, ArgNativeTypeB b) {
138
62
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
139
62
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
140
62
    }
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
137
3
            ArgNativeTypeA a, ArgNativeTypeB b) {
138
3
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
139
3
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
140
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
137
5
            ArgNativeTypeA a, ArgNativeTypeB b) {
138
5
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
139
5
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
140
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
137
1
            ArgNativeTypeA a, ArgNativeTypeB b) {
138
1
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
139
1
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
140
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
137
53
            ArgNativeTypeA a, ArgNativeTypeB b) {
138
53
        return static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(
139
53
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a) * b);
140
53
    }
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_
141
142
    template <PrimitiveType Result = TYPE_DECIMALV2>
143
15
    static inline DecimalV2Value apply(const DecimalV2Value& a, const DecimalV2Value& b) {
144
15
        return a * b;
145
15
    }
146
147
    /// Apply operation and check overflow. It's used for Decimal operations. @returns true if overflowed, false otherwise.
148
    template <PrimitiveType Result>
149
        requires(is_decimal(Result))
150
    static inline bool apply(ArgNativeTypeA a, ArgNativeTypeB b,
151
79.0M
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
79.0M
        return common::mul_overflow(
153
79.0M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
79.0M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
79.0M
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_28EQclL_ZNS_10is_decimalES1_ETL0__EEEbiiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
20
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
20
        return common::mul_overflow(
153
20
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
20
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
20
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE5applyILS1_29EQclL_ZNS_10is_decimalES1_ETL0__EEEbiiRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
68
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
68
        return common::mul_overflow(
153
68
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
68
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
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
151
2
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
2
        return common::mul_overflow(
153
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
2
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbilRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
11
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
11
        return common::mul_overflow(
153
11
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
11
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
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
151
3.55k
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
3.55k
        return common::mul_overflow(
153
3.55k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
3.55k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
3.55k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbinRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
3
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
3
        return common::mul_overflow(
153
3
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
3
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
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
151
29.0k
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
29.0k
        return common::mul_overflow(
153
29.0k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
29.0k
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
29.0k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE5applyILS1_30EQclL_ZNS_10is_decimalES1_ETL0__EEEbliRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
13
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
13
        return common::mul_overflow(
153
13
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
13
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
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
151
41.7M
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
41.7M
        return common::mul_overflow(
153
41.7M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
41.7M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
41.7M
    }
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
151
12
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
12
        return common::mul_overflow(
153
12
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
12
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
12
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEblnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
2
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
2
        return common::mul_overflow(
153
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
2
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
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
151
856
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
856
        return common::mul_overflow(
153
856
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
856
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
856
    }
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
151
37.3M
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
37.3M
        return common::mul_overflow(
153
37.3M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
37.3M
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
37.3M
    }
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
151
122
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
122
        return common::mul_overflow(
153
122
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
122
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
122
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE5applyILS1_35EQclL_ZNS_10is_decimalES1_ETL0__EEEbnnRNS_19PrimitiveTypeTraitsIXT_EE7CppType10NativeTypeE
Line
Count
Source
151
264
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
264
        return common::mul_overflow(
153
264
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
264
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
264
    }
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
151
7
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
7
        return common::mul_overflow(
153
7
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
7
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
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
151
53
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
53
        return common::mul_overflow(
153
53
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
53
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
53
    }
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
151
16
                             typename PrimitiveTypeTraits<Result>::CppType::NativeType& c) {
152
16
        return common::mul_overflow(
153
16
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(a),
154
16
                static_cast<typename PrimitiveTypeTraits<Result>::CppType::NativeType>(b), c);
155
16
    }
156
157
    template <PrimitiveType ResultType>
158
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
159
    static ColumnPtr constant_constant(
160
            ArgA a, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
161
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
162
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
163
5
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
164
5
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
165
166
5
        if (check_overflow_for_decimal) {
167
5
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
168
5
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
169
5
                                      max_result_number, scale_diff_multiplier));
170
5
        } else {
171
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
172
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
173
0
                                       max_result_number, scale_diff_multiplier));
174
0
        }
175
176
5
        return column_result;
177
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
163
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
164
2
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
165
166
2
        if (check_overflow_for_decimal) {
167
2
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
168
2
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
169
2
                                      max_result_number, scale_diff_multiplier));
170
2
        } else {
171
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
172
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
173
0
                                       max_result_number, scale_diff_multiplier));
174
0
        }
175
176
2
        return column_result;
177
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
163
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
164
2
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
165
166
2
        if (check_overflow_for_decimal) {
167
2
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
168
2
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
169
2
                                      max_result_number, scale_diff_multiplier));
170
2
        } else {
171
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
172
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
173
0
                                       max_result_number, scale_diff_multiplier));
174
0
        }
175
176
2
        return column_result;
177
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
163
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
164
1
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
165
166
1
        if (check_overflow_for_decimal) {
167
1
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
168
1
                    apply<true, true>(a, b, *type_left, *type_right, res_data_type,
169
1
                                      max_result_number, scale_diff_multiplier));
170
1
        } else {
171
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
172
0
                    apply<true, false>(a, b, *type_left, *type_right, res_data_type,
173
0
                                       max_result_number, scale_diff_multiplier));
174
0
        }
175
176
1
        return column_result;
177
1
    }
178
179
    template <PrimitiveType ResultType>
180
        requires(ResultType == TYPE_DECIMALV2)
181
    static ColumnPtr constant_constant(
182
            ArgA a, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
183
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
184
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
185
13
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
186
13
        auto column_result = ColumnDecimal<ResultType>::create(1, res_data_type.get_scale());
187
188
13
        if (check_overflow_for_decimal) {
189
13
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
190
13
                    apply<true, true>(a.value(), b.value(), *type_left, *type_right, res_data_type,
191
13
                                      max_result_number, scale_diff_multiplier));
192
13
        } else {
193
0
            column_result->get_element(0) = typename PrimitiveTypeTraits<ResultType>::CppType(
194
0
                    apply<true, false>(a.value(), b.value(), *type_left, *type_right, res_data_type,
195
0
                                       max_result_number, scale_diff_multiplier));
196
0
        }
197
198
13
        return column_result;
199
13
    }
200
201
    template <PrimitiveType ResultType>
202
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
203
    static ColumnPtr vector_constant(
204
            ColumnPtr column_left, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
205
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
206
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
207
375
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
375
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
375
        auto column_result =
210
375
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
375
        DCHECK(column_left_ptr != nullptr);
212
213
375
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
375
        const auto& a = column_left_ptr->get_data();
215
375
        auto& c = column_result->get_data();
216
375
        std::visit(
217
375
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
30.0k
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
29.7k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
29.7k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
29.7k
                                        a[i], b, *type_left, *type_right, res_data_type,
222
29.7k
                                        max_result_number, scale_diff_multiplier));
223
29.7k
                    }
224
375
                },
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
217
12
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
30
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
18
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
18
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
18
                                        a[i], b, *type_left, *type_right, res_data_type,
222
18
                                        max_result_number, scale_diff_multiplier));
223
18
                    }
224
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
217
22
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
52
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
30
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
30
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
30
                                        a[i], b, *type_left, *type_right, res_data_type,
222
30
                                        max_result_number, scale_diff_multiplier));
223
30
                    }
224
22
                },
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
217
57
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
29.1k
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
29.1k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
29.1k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
29.1k
                                        a[i], b, *type_left, *type_right, res_data_type,
222
29.1k
                                        max_result_number, scale_diff_multiplier));
223
29.1k
                    }
224
57
                },
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
217
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
4
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
2
                                        a[i], b, *type_left, *type_right, res_data_type,
222
2
                                        max_result_number, scale_diff_multiplier));
223
2
                    }
224
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
217
277
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
826
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
549
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
549
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
549
                                        a[i], b, *type_left, *type_right, res_data_type,
222
549
                                        max_result_number, scale_diff_multiplier));
223
549
                    }
224
277
                },
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
217
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
1
                                        a[i], b, *type_left, *type_right, res_data_type,
222
1
                                        max_result_number, scale_diff_multiplier));
223
1
                    }
224
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
217
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
1
                                        a[i], b, *type_left, *type_right, res_data_type,
222
1
                                        max_result_number, scale_diff_multiplier));
223
1
                    }
224
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
217
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
1
                                        a[i], b, *type_left, *type_right, res_data_type,
222
1
                                        max_result_number, scale_diff_multiplier));
223
1
                    }
224
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
217
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
5
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
3
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
3
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
3
                                        a[i], b, *type_left, *type_right, res_data_type,
222
3
                                        max_result_number, scale_diff_multiplier));
223
3
                    }
224
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_
225
375
                make_bool_variant(need_adjust_scale),
226
375
                make_bool_variant(check_overflow_for_decimal));
227
228
375
        return column_result;
229
375
    }
_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
207
12
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
12
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
12
        auto column_result =
210
12
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
12
        DCHECK(column_left_ptr != nullptr);
212
213
12
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
12
        const auto& a = column_left_ptr->get_data();
215
12
        auto& c = column_result->get_data();
216
12
        std::visit(
217
12
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
12
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
12
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
12
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
12
                                        a[i], b, *type_left, *type_right, res_data_type,
222
12
                                        max_result_number, scale_diff_multiplier));
223
12
                    }
224
12
                },
225
12
                make_bool_variant(need_adjust_scale),
226
12
                make_bool_variant(check_overflow_for_decimal));
227
228
12
        return column_result;
229
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
207
22
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
22
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
22
        auto column_result =
210
22
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
22
        DCHECK(column_left_ptr != nullptr);
212
213
22
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
22
        const auto& a = column_left_ptr->get_data();
215
22
        auto& c = column_result->get_data();
216
22
        std::visit(
217
22
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
22
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
22
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
22
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
22
                                        a[i], b, *type_left, *type_right, res_data_type,
222
22
                                        max_result_number, scale_diff_multiplier));
223
22
                    }
224
22
                },
225
22
                make_bool_variant(need_adjust_scale),
226
22
                make_bool_variant(check_overflow_for_decimal));
227
228
22
        return column_result;
229
22
    }
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
207
57
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
57
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
57
        auto column_result =
210
57
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
57
        DCHECK(column_left_ptr != nullptr);
212
213
57
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
57
        const auto& a = column_left_ptr->get_data();
215
57
        auto& c = column_result->get_data();
216
57
        std::visit(
217
57
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
57
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
57
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
57
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
57
                                        a[i], b, *type_left, *type_right, res_data_type,
222
57
                                        max_result_number, scale_diff_multiplier));
223
57
                    }
224
57
                },
225
57
                make_bool_variant(need_adjust_scale),
226
57
                make_bool_variant(check_overflow_for_decimal));
227
228
57
        return column_result;
229
57
    }
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
207
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
2
        auto column_result =
210
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
2
        DCHECK(column_left_ptr != nullptr);
212
213
2
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
2
        const auto& a = column_left_ptr->get_data();
215
2
        auto& c = column_result->get_data();
216
2
        std::visit(
217
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
2
                                        a[i], b, *type_left, *type_right, res_data_type,
222
2
                                        max_result_number, scale_diff_multiplier));
223
2
                    }
224
2
                },
225
2
                make_bool_variant(need_adjust_scale),
226
2
                make_bool_variant(check_overflow_for_decimal));
227
228
2
        return column_result;
229
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
207
278
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
278
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
278
        auto column_result =
210
278
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
278
        DCHECK(column_left_ptr != nullptr);
212
213
278
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
278
        const auto& a = column_left_ptr->get_data();
215
278
        auto& c = column_result->get_data();
216
278
        std::visit(
217
278
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
278
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
278
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
278
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
278
                                        a[i], b, *type_left, *type_right, res_data_type,
222
278
                                        max_result_number, scale_diff_multiplier));
223
278
                    }
224
278
                },
225
278
                make_bool_variant(need_adjust_scale),
226
278
                make_bool_variant(check_overflow_for_decimal));
227
228
278
        return column_result;
229
278
    }
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
207
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
2
        auto column_result =
210
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
2
        DCHECK(column_left_ptr != nullptr);
212
213
2
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
2
        const auto& a = column_left_ptr->get_data();
215
2
        auto& c = column_result->get_data();
216
2
        std::visit(
217
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
2
                                        a[i], b, *type_left, *type_right, res_data_type,
222
2
                                        max_result_number, scale_diff_multiplier));
223
2
                    }
224
2
                },
225
2
                make_bool_variant(need_adjust_scale),
226
2
                make_bool_variant(check_overflow_for_decimal));
227
228
2
        return column_result;
229
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
207
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
208
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
209
2
        auto column_result =
210
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
211
2
        DCHECK(column_left_ptr != nullptr);
212
213
2
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
214
2
        const auto& a = column_left_ptr->get_data();
215
2
        auto& c = column_result->get_data();
216
2
        std::visit(
217
2
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
218
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
219
2
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
220
2
                                apply<need_adjust_scale, check_overflow_for_decimal>(
221
2
                                        a[i], b, *type_left, *type_right, res_data_type,
222
2
                                        max_result_number, scale_diff_multiplier));
223
2
                    }
224
2
                },
225
2
                make_bool_variant(need_adjust_scale),
226
2
                make_bool_variant(check_overflow_for_decimal));
227
228
2
        return column_result;
229
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
230
231
    template <PrimitiveType ResultType>
232
        requires(ResultType == TYPE_DECIMALV2)
233
    static ColumnPtr vector_constant(
234
            ColumnPtr column_left, ArgB b, const DataTypeA* type_left, const DataTypeB* type_right,
235
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
236
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
237
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
238
1
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
239
1
        auto column_result =
240
1
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
241
1
        DCHECK(column_left_ptr != nullptr);
242
243
1
        bool need_adjust_scale = scale_diff_multiplier.value() > 1;
244
1
        const auto& a = column_left_ptr->get_data();
245
1
        auto& c = column_result->get_data();
246
1
        std::visit(
247
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
248
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
249
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
250
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
251
1
                                        a[i].value(), b.value(), *type_left, *type_right,
252
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
253
1
                    }
254
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
247
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
248
2
                    for (size_t i = 0; i < column_left->size(); ++i) {
249
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
250
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
251
1
                                        a[i].value(), b.value(), *type_left, *type_right,
252
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
253
1
                    }
254
1
                },
255
1
                make_bool_variant(need_adjust_scale),
256
1
                make_bool_variant(check_overflow_for_decimal));
257
258
1
        return column_result;
259
1
    }
260
261
    template <PrimitiveType ResultType>
262
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
263
    static ColumnPtr constant_vector(
264
            ArgA a, ColumnPtr column_right, const DataTypeA* type_left, const DataTypeB* type_right,
265
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
266
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
267
80
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
268
80
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
269
80
        auto column_result =
270
80
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
271
272
80
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
273
80
        auto& b = column_right_ptr->get_data();
274
80
        auto& c = column_result->get_data();
275
80
        std::visit(
276
80
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
3.40k
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
3.32k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
3.32k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
3.32k
                                        a, b[i], *type_left, *type_right, res_data_type,
281
3.32k
                                        max_result_number, scale_diff_multiplier));
282
3.32k
                    }
283
80
                },
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
276
5
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
10
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
5
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
5
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
5
                                        a, b[i], *type_left, *type_right, res_data_type,
281
5
                                        max_result_number, scale_diff_multiplier));
282
5
                    }
283
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
276
67
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
3.37k
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
3.30k
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
3.30k
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
3.30k
                                        a, b[i], *type_left, *type_right, res_data_type,
281
3.30k
                                        max_result_number, scale_diff_multiplier));
282
3.30k
                    }
283
67
                },
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
276
4
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
10
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
6
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
6
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
6
                                        a, b[i], *type_left, *type_right, res_data_type,
281
6
                                        max_result_number, scale_diff_multiplier));
282
6
                    }
283
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
276
3
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
6
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
3
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
3
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
3
                                        a, b[i], *type_left, *type_right, res_data_type,
281
3
                                        max_result_number, scale_diff_multiplier));
282
3
                    }
283
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
276
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
2
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
1
                                        a, b[i], *type_left, *type_right, res_data_type,
281
1
                                        max_result_number, scale_diff_multiplier));
282
1
                    }
283
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_
284
80
                make_bool_variant(need_adjust_scale),
285
80
                make_bool_variant(check_overflow_for_decimal));
286
80
        return column_result;
287
80
    }
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
267
5
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
268
5
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
269
5
        auto column_result =
270
5
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
271
272
5
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
273
5
        auto& b = column_right_ptr->get_data();
274
5
        auto& c = column_result->get_data();
275
5
        std::visit(
276
5
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
5
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
5
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
5
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
5
                                        a, b[i], *type_left, *type_right, res_data_type,
281
5
                                        max_result_number, scale_diff_multiplier));
282
5
                    }
283
5
                },
284
5
                make_bool_variant(need_adjust_scale),
285
5
                make_bool_variant(check_overflow_for_decimal));
286
5
        return column_result;
287
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
267
67
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
268
67
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
269
67
        auto column_result =
270
67
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
271
272
67
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
273
67
        auto& b = column_right_ptr->get_data();
274
67
        auto& c = column_result->get_data();
275
67
        std::visit(
276
67
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
67
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
67
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
67
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
67
                                        a, b[i], *type_left, *type_right, res_data_type,
281
67
                                        max_result_number, scale_diff_multiplier));
282
67
                    }
283
67
                },
284
67
                make_bool_variant(need_adjust_scale),
285
67
                make_bool_variant(check_overflow_for_decimal));
286
67
        return column_result;
287
67
    }
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
267
4
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
268
4
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
269
4
        auto column_result =
270
4
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
271
272
4
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
273
4
        auto& b = column_right_ptr->get_data();
274
4
        auto& c = column_result->get_data();
275
4
        std::visit(
276
4
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
4
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
4
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
4
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
4
                                        a, b[i], *type_left, *type_right, res_data_type,
281
4
                                        max_result_number, scale_diff_multiplier));
282
4
                    }
283
4
                },
284
4
                make_bool_variant(need_adjust_scale),
285
4
                make_bool_variant(check_overflow_for_decimal));
286
4
        return column_result;
287
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
267
3
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
268
3
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
269
3
        auto column_result =
270
3
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
271
272
3
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
273
3
        auto& b = column_right_ptr->get_data();
274
3
        auto& c = column_result->get_data();
275
3
        std::visit(
276
3
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
3
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
3
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
3
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
3
                                        a, b[i], *type_left, *type_right, res_data_type,
281
3
                                        max_result_number, scale_diff_multiplier));
282
3
                    }
283
3
                },
284
3
                make_bool_variant(need_adjust_scale),
285
3
                make_bool_variant(check_overflow_for_decimal));
286
3
        return column_result;
287
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
267
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
268
1
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
269
1
        auto column_result =
270
1
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
271
272
1
        bool need_adjust_scale = scale_diff_multiplier.value > 1;
273
1
        auto& b = column_right_ptr->get_data();
274
1
        auto& c = column_result->get_data();
275
1
        std::visit(
276
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
277
1
                    for (size_t i = 0; i < column_right->size(); ++i) {
278
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
279
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
280
1
                                        a, b[i], *type_left, *type_right, res_data_type,
281
1
                                        max_result_number, scale_diff_multiplier));
282
1
                    }
283
1
                },
284
1
                make_bool_variant(need_adjust_scale),
285
1
                make_bool_variant(check_overflow_for_decimal));
286
1
        return column_result;
287
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
288
289
    template <PrimitiveType ResultType>
290
        requires(ResultType == TYPE_DECIMALV2)
291
    static ColumnPtr constant_vector(
292
            ArgA a, ColumnPtr column_right, const DataTypeA* type_left, const DataTypeB* type_right,
293
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
294
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
295
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
296
1
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
297
1
        auto column_result =
298
1
                ColumnDecimal<ResultType>::create(column_right->size(), res_data_type.get_scale());
299
300
1
        bool need_adjust_scale = scale_diff_multiplier.value() > 1;
301
1
        auto& b = column_right_ptr->get_data();
302
1
        auto& c = column_result->get_data();
303
1
        std::visit(
304
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
305
2
                    for (size_t i = 0; i < column_right->size(); ++i) {
306
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
307
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
308
1
                                        a.value(), b[i].value(), *type_left, *type_right,
309
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
310
1
                    }
311
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
304
1
                [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
305
2
                    for (size_t i = 0; i < column_right->size(); ++i) {
306
1
                        c[i] = typename DataTypeDecimal<ResultType>::FieldType(
307
1
                                apply<need_adjust_scale, check_overflow_for_decimal>(
308
1
                                        a.value(), b[i].value(), *type_left, *type_right,
309
1
                                        res_data_type, max_result_number, scale_diff_multiplier));
310
1
                    }
311
1
                },
312
1
                make_bool_variant(need_adjust_scale),
313
1
                make_bool_variant(check_overflow_for_decimal));
314
1
        return column_result;
315
1
    }
316
317
    /*
318
    select 999999999999999999999999999 * 999999999999999999999999999;
319
    999999999999999999999999998000000000.000000000000000001 54 digits
320
    */
321
    template <bool check_overflow>
322
    NO_SANITIZE_UNDEFINED static void vector_vector(
323
            const ColumnDecimal128V2::Container::value_type* __restrict a,
324
            const ColumnDecimal128V2::Container::value_type* __restrict b,
325
154
            ColumnDecimal128V2::Container::value_type* c, size_t size) {
326
154
        auto sng_uptr = std::unique_ptr<int8_t[]>(new int8_t[size]);
327
154
        int8_t* sgn = sng_uptr.get();
328
154
        auto max = DecimalV2Value::get_max_decimal();
329
154
        auto min = DecimalV2Value::get_min_decimal();
330
331
1.08k
        for (int i = 0; i < size; i++) {
332
933
            sgn[i] = ((DecimalV2Value(a[i]).value() > 0) && (DecimalV2Value(b[i]).value() > 0)) ||
333
933
                                     ((DecimalV2Value(a[i]).value() < 0) &&
334
219
                                      (DecimalV2Value(b[i]).value() < 0))
335
933
                             ? 1
336
933
                     : ((DecimalV2Value(a[i]).value() == 0) || (DecimalV2Value(b[i]).value() == 0))
337
219
                             ? 0
338
219
                             : -1;
339
933
        }
340
341
1.08k
        for (int i = 0; i < size; i++) {
342
933
            if constexpr (check_overflow) {
343
933
                int128_t i128_mul_result;
344
933
                if (common::mul_overflow(DecimalV2Value(a[i]).value(), DecimalV2Value(b[i]).value(),
345
933
                                         i128_mul_result)) {
346
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
347
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
348
0
                                    DecimalV2Value(a[i]).to_string(), "multiply",
349
0
                                    DecimalV2Value(b[i]).to_string(),
350
0
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
351
0
                }
352
933
                c[i] = DecimalV2Value((i128_mul_result - sgn[i]) / DecimalV2Value::ONE_BILLION +
353
933
                                      sgn[i]);
354
933
                if (c[i].value() > max.value() || c[i].value() < min.value()) {
355
1
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
356
1
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
357
1
                                    DecimalV2Value(a[i]).to_string(), "multiply",
358
1
                                    DecimalV2Value(b[i]).to_string(),
359
1
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
360
1
                }
361
933
            } else {
362
0
                c[i] = DecimalV2Value(
363
0
                        (DecimalV2Value(a[i]).value() * DecimalV2Value(b[i]).value() - sgn[i]) /
364
0
                                DecimalV2Value::ONE_BILLION +
365
0
                        sgn[i]);
366
0
            }
367
933
        }
368
154
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE13vector_vectorILb1EEEvPKNS_14DecimalV2ValueES6_PS4_m
Line
Count
Source
325
154
            ColumnDecimal128V2::Container::value_type* c, size_t size) {
326
154
        auto sng_uptr = std::unique_ptr<int8_t[]>(new int8_t[size]);
327
154
        int8_t* sgn = sng_uptr.get();
328
154
        auto max = DecimalV2Value::get_max_decimal();
329
154
        auto min = DecimalV2Value::get_min_decimal();
330
331
1.08k
        for (int i = 0; i < size; i++) {
332
933
            sgn[i] = ((DecimalV2Value(a[i]).value() > 0) && (DecimalV2Value(b[i]).value() > 0)) ||
333
933
                                     ((DecimalV2Value(a[i]).value() < 0) &&
334
219
                                      (DecimalV2Value(b[i]).value() < 0))
335
933
                             ? 1
336
933
                     : ((DecimalV2Value(a[i]).value() == 0) || (DecimalV2Value(b[i]).value() == 0))
337
219
                             ? 0
338
219
                             : -1;
339
933
        }
340
341
1.08k
        for (int i = 0; i < size; i++) {
342
933
            if constexpr (check_overflow) {
343
933
                int128_t i128_mul_result;
344
933
                if (common::mul_overflow(DecimalV2Value(a[i]).value(), DecimalV2Value(b[i]).value(),
345
933
                                         i128_mul_result)) {
346
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
347
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
348
0
                                    DecimalV2Value(a[i]).to_string(), "multiply",
349
0
                                    DecimalV2Value(b[i]).to_string(),
350
0
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
351
0
                }
352
933
                c[i] = DecimalV2Value((i128_mul_result - sgn[i]) / DecimalV2Value::ONE_BILLION +
353
933
                                      sgn[i]);
354
933
                if (c[i].value() > max.value() || c[i].value() < min.value()) {
355
1
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
356
1
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
357
1
                                    DecimalV2Value(a[i]).to_string(), "multiply",
358
1
                                    DecimalV2Value(b[i]).to_string(),
359
1
                                    DecimalV2Value(i128_mul_result).to_string(), "decimalv2");
360
1
                }
361
            } else {
362
                c[i] = DecimalV2Value(
363
                        (DecimalV2Value(a[i]).value() * DecimalV2Value(b[i]).value() - sgn[i]) /
364
                                DecimalV2Value::ONE_BILLION +
365
                        sgn[i]);
366
            }
367
933
        }
368
154
    }
Unexecuted instantiation: _ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE13vector_vectorILb0EEEvPKNS_14DecimalV2ValueES6_PS4_m
369
370
    template <typename T>
371
0
    static int8_t sgn(const T& x) {
372
0
        return (x > 0) ? 1 : ((x < 0) ? -1 : 0);
373
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_
374
375
    template <PrimitiveType ResultType>
376
        requires(is_decimal(ResultType))
377
    static ColumnPtr vector_vector(
378
            ColumnPtr column_left, ColumnPtr column_right, const DataTypeA* type_left,
379
            const DataTypeB* type_right,
380
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
381
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier,
382
13.8k
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
13.8k
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
13.8k
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
13.8k
        auto column_result =
387
13.8k
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
13.8k
        auto sz = column_left->size();
389
13.8k
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
154
            if (check_overflow_for_decimal) {
391
154
                vector_vector<true>(column_left_ptr->get_data().data(),
392
154
                                    column_right_ptr->get_data().data(),
393
154
                                    column_result->get_data().data(), sz);
394
154
            } else {
395
0
                vector_vector<false>(column_left_ptr->get_data().data(),
396
0
                                     column_right_ptr->get_data().data(),
397
0
                                     column_result->get_data().data(), sz);
398
0
            }
399
13.7k
        } else {
400
13.7k
            const auto& a = column_left_ptr->get_data().data();
401
13.7k
            const auto& b = column_right_ptr->get_data().data();
402
13.7k
            const auto& c = column_result->get_data().data();
403
13.7k
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
13.7k
            std::visit(
405
13.7k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
79.1M
                        for (size_t i = 0; i < sz; i++) {
407
79.1M
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
79.1M
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
79.1M
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
79.1M
                                            max_result_number, scale_diff_multiplier));
411
79.1M
                        }
412
13.7k
                    },
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
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
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
405
26
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
64
                        for (size_t i = 0; i < sz; i++) {
407
38
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
38
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
38
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
38
                                            max_result_number, scale_diff_multiplier));
411
38
                        }
412
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
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
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
405
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
10
                        for (size_t i = 0; i < sz; i++) {
407
6
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
6
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
6
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
6
                                            max_result_number, scale_diff_multiplier));
411
6
                        }
412
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
405
41
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
287
                        for (size_t i = 0; i < sz; i++) {
407
246
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
246
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
246
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
246
                                            max_result_number, scale_diff_multiplier));
411
246
                        }
412
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
405
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
8
                        for (size_t i = 0; i < sz; i++) {
407
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4
                                            max_result_number, scale_diff_multiplier));
411
4
                        }
412
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
405
3
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
6
                        for (size_t i = 0; i < sz; i++) {
407
3
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
3
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
3
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
3
                                            max_result_number, scale_diff_multiplier));
411
3
                        }
412
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
405
1
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
6
                        for (size_t i = 0; i < sz; i++) {
407
5
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
5
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
5
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
5
                                            max_result_number, scale_diff_multiplier));
411
5
                        }
412
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
405
5
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
12
                        for (size_t i = 0; i < sz; i++) {
407
7
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
7
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
7
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
7
                                            max_result_number, scale_diff_multiplier));
411
7
                        }
412
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
405
8.47k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
41.7M
                        for (size_t i = 0; i < sz; i++) {
407
41.7M
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
41.7M
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
41.7M
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
41.7M
                                            max_result_number, scale_diff_multiplier));
411
41.7M
                        }
412
8.47k
                    },
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
405
9
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
20
                        for (size_t i = 0; i < sz; i++) {
407
11
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
11
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
11
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
11
                                            max_result_number, scale_diff_multiplier));
411
11
                        }
412
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
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
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
405
56
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
362
                        for (size_t i = 0; i < sz; i++) {
407
306
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
306
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
306
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
306
                                            max_result_number, scale_diff_multiplier));
411
306
                        }
412
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
405
4.88k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
37.4M
                        for (size_t i = 0; i < sz; i++) {
407
37.4M
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
37.4M
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
37.4M
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
37.4M
                                            max_result_number, scale_diff_multiplier));
411
37.4M
                        }
412
4.88k
                    },
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
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
6
                        for (size_t i = 0; i < sz; i++) {
407
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4
                                            max_result_number, scale_diff_multiplier));
411
4
                        }
412
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
405
5
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
10
                        for (size_t i = 0; i < sz; i++) {
407
5
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
5
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
5
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
5
                                            max_result_number, scale_diff_multiplier));
411
5
                        }
412
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
405
85
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
200
                        for (size_t i = 0; i < sz; i++) {
407
115
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
115
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
115
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
115
                                            max_result_number, scale_diff_multiplier));
411
115
                        }
412
85
                    },
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
405
78
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
342
                        for (size_t i = 0; i < sz; i++) {
407
264
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
264
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
264
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
264
                                            max_result_number, scale_diff_multiplier));
411
264
                        }
412
78
                    },
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
405
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
8
                        for (size_t i = 0; i < sz; i++) {
407
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4
                                            max_result_number, scale_diff_multiplier));
411
4
                        }
412
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
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
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
405
41
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
92
                        for (size_t i = 0; i < sz; i++) {
407
51
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
51
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
51
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
51
                                            max_result_number, scale_diff_multiplier));
411
51
                        }
412
41
                    },
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
405
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
8
                        for (size_t i = 0; i < sz; i++) {
407
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4
                                            max_result_number, scale_diff_multiplier));
411
4
                        }
412
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
405
11
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
22
                        for (size_t i = 0; i < sz; i++) {
407
11
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
11
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
11
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
11
                                            max_result_number, scale_diff_multiplier));
411
11
                        }
412
11
                    },
413
13.7k
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
13.7k
                    make_bool_variant(check_overflow_for_decimal));
415
416
13.7k
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
13.7k
        }
427
428
13.8k
        return column_result;
429
13.8k
    }
_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
382
154
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
154
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
154
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
154
        auto column_result =
387
154
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
154
        auto sz = column_left->size();
389
154
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
154
            if (check_overflow_for_decimal) {
391
154
                vector_vector<true>(column_left_ptr->get_data().data(),
392
154
                                    column_right_ptr->get_data().data(),
393
154
                                    column_result->get_data().data(), sz);
394
154
            } else {
395
0
                vector_vector<false>(column_left_ptr->get_data().data(),
396
0
                                     column_right_ptr->get_data().data(),
397
0
                                     column_result->get_data().data(), sz);
398
0
            }
399
        } else {
400
            const auto& a = column_left_ptr->get_data().data();
401
            const auto& b = column_right_ptr->get_data().data();
402
            const auto& c = column_result->get_data().data();
403
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
            std::visit(
405
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
                        for (size_t i = 0; i < sz; i++) {
407
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
                                            max_result_number, scale_diff_multiplier));
411
                        }
412
                    },
413
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
                    make_bool_variant(check_overflow_for_decimal));
415
416
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
                int8_t* sig = sig_uptr.get();
419
                for (size_t i = 0; i < sz; i++) {
420
                    sig[i] = sgn(c[i].value);
421
                }
422
                for (size_t i = 0; i < sz; i++) {
423
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
                }
425
            }
426
        }
427
428
154
        return column_result;
429
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
382
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
2
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
2
        auto column_result =
387
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
2
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
2
        } else {
400
2
            const auto& a = column_left_ptr->get_data().data();
401
2
            const auto& b = column_right_ptr->get_data().data();
402
2
            const auto& c = column_result->get_data().data();
403
2
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
2
            std::visit(
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
2
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
2
                    },
413
2
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
2
                    make_bool_variant(check_overflow_for_decimal));
415
416
2
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
2
        }
427
428
2
        return column_result;
429
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
382
26
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
26
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
26
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
26
        auto column_result =
387
26
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
26
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
26
        } else {
400
26
            const auto& a = column_left_ptr->get_data().data();
401
26
            const auto& b = column_right_ptr->get_data().data();
402
26
            const auto& c = column_result->get_data().data();
403
26
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
26
            std::visit(
405
26
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
26
                        for (size_t i = 0; i < sz; i++) {
407
26
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
26
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
26
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
26
                                            max_result_number, scale_diff_multiplier));
411
26
                        }
412
26
                    },
413
26
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
26
                    make_bool_variant(check_overflow_for_decimal));
415
416
26
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
26
        }
427
428
26
        return column_result;
429
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
382
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
2
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
2
        auto column_result =
387
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
2
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
2
        } else {
400
2
            const auto& a = column_left_ptr->get_data().data();
401
2
            const auto& b = column_right_ptr->get_data().data();
402
2
            const auto& c = column_result->get_data().data();
403
2
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
2
            std::visit(
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
2
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
2
                    },
413
2
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
2
                    make_bool_variant(check_overflow_for_decimal));
415
416
2
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
2
        }
427
428
2
        return column_result;
429
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
382
4
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
4
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
4
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
4
        auto column_result =
387
4
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
4
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
4
        } else {
400
4
            const auto& a = column_left_ptr->get_data().data();
401
4
            const auto& b = column_right_ptr->get_data().data();
402
4
            const auto& c = column_result->get_data().data();
403
4
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
4
            std::visit(
405
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4
                        for (size_t i = 0; i < sz; i++) {
407
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4
                                            max_result_number, scale_diff_multiplier));
411
4
                        }
412
4
                    },
413
4
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
4
                    make_bool_variant(check_overflow_for_decimal));
415
416
4
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
4
        }
427
428
4
        return column_result;
429
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
382
45
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
45
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
45
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
45
        auto column_result =
387
45
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
45
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
45
        } else {
400
45
            const auto& a = column_left_ptr->get_data().data();
401
45
            const auto& b = column_right_ptr->get_data().data();
402
45
            const auto& c = column_result->get_data().data();
403
45
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
45
            std::visit(
405
45
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
45
                        for (size_t i = 0; i < sz; i++) {
407
45
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
45
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
45
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
45
                                            max_result_number, scale_diff_multiplier));
411
45
                        }
412
45
                    },
413
45
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
45
                    make_bool_variant(check_overflow_for_decimal));
415
416
45
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
45
        }
427
428
45
        return column_result;
429
45
    }
_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
382
3
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
3
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
3
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
3
        auto column_result =
387
3
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
3
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
3
        } else {
400
3
            const auto& a = column_left_ptr->get_data().data();
401
3
            const auto& b = column_right_ptr->get_data().data();
402
3
            const auto& c = column_result->get_data().data();
403
3
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
3
            std::visit(
405
3
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
3
                        for (size_t i = 0; i < sz; i++) {
407
3
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
3
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
3
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
3
                                            max_result_number, scale_diff_multiplier));
411
3
                        }
412
3
                    },
413
3
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
3
                    make_bool_variant(check_overflow_for_decimal));
415
416
3
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
3
        }
427
428
3
        return column_result;
429
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
382
1
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
1
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
1
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
1
        auto column_result =
387
1
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
1
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
1
        } else {
400
1
            const auto& a = column_left_ptr->get_data().data();
401
1
            const auto& b = column_right_ptr->get_data().data();
402
1
            const auto& c = column_result->get_data().data();
403
1
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
1
            std::visit(
405
1
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
1
                        for (size_t i = 0; i < sz; i++) {
407
1
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
1
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
1
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
1
                                            max_result_number, scale_diff_multiplier));
411
1
                        }
412
1
                    },
413
1
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
1
                    make_bool_variant(check_overflow_for_decimal));
415
416
1
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
1
        }
427
428
1
        return column_result;
429
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
382
5
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
5
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
5
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
5
        auto column_result =
387
5
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
5
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
5
        } else {
400
5
            const auto& a = column_left_ptr->get_data().data();
401
5
            const auto& b = column_right_ptr->get_data().data();
402
5
            const auto& c = column_result->get_data().data();
403
5
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
5
            std::visit(
405
5
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
5
                        for (size_t i = 0; i < sz; i++) {
407
5
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
5
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
5
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
5
                                            max_result_number, scale_diff_multiplier));
411
5
                        }
412
5
                    },
413
5
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
5
                    make_bool_variant(check_overflow_for_decimal));
415
416
5
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
5
        }
427
428
5
        return column_result;
429
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
382
8.45k
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
8.45k
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
8.45k
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
8.45k
        auto column_result =
387
8.45k
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
8.45k
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
8.45k
        } else {
400
8.45k
            const auto& a = column_left_ptr->get_data().data();
401
8.45k
            const auto& b = column_right_ptr->get_data().data();
402
8.45k
            const auto& c = column_result->get_data().data();
403
8.45k
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
8.45k
            std::visit(
405
8.45k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
8.45k
                        for (size_t i = 0; i < sz; i++) {
407
8.45k
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
8.45k
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
8.45k
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
8.45k
                                            max_result_number, scale_diff_multiplier));
411
8.45k
                        }
412
8.45k
                    },
413
8.45k
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
8.45k
                    make_bool_variant(check_overflow_for_decimal));
415
416
8.45k
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
8.45k
        }
427
428
8.45k
        return column_result;
429
8.45k
    }
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
382
9
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
9
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
9
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
9
        auto column_result =
387
9
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
9
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
9
        } else {
400
9
            const auto& a = column_left_ptr->get_data().data();
401
9
            const auto& b = column_right_ptr->get_data().data();
402
9
            const auto& c = column_result->get_data().data();
403
9
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
9
            std::visit(
405
9
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
9
                        for (size_t i = 0; i < sz; i++) {
407
9
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
9
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
9
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
9
                                            max_result_number, scale_diff_multiplier));
411
9
                        }
412
9
                    },
413
9
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
9
                    make_bool_variant(check_overflow_for_decimal));
415
416
9
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
9
        }
427
428
9
        return column_result;
429
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
382
2
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
2
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
2
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
2
        auto column_result =
387
2
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
2
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
2
        } else {
400
2
            const auto& a = column_left_ptr->get_data().data();
401
2
            const auto& b = column_right_ptr->get_data().data();
402
2
            const auto& c = column_result->get_data().data();
403
2
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
2
            std::visit(
405
2
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
2
                        for (size_t i = 0; i < sz; i++) {
407
2
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
2
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
2
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
2
                                            max_result_number, scale_diff_multiplier));
411
2
                        }
412
2
                    },
413
2
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
2
                    make_bool_variant(check_overflow_for_decimal));
415
416
2
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
2
        }
427
428
2
        return column_result;
429
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
382
56
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
56
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
56
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
56
        auto column_result =
387
56
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
56
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
56
        } else {
400
56
            const auto& a = column_left_ptr->get_data().data();
401
56
            const auto& b = column_right_ptr->get_data().data();
402
56
            const auto& c = column_result->get_data().data();
403
56
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
56
            std::visit(
405
56
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
56
                        for (size_t i = 0; i < sz; i++) {
407
56
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
56
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
56
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
56
                                            max_result_number, scale_diff_multiplier));
411
56
                        }
412
56
                    },
413
56
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
56
                    make_bool_variant(check_overflow_for_decimal));
415
416
56
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
56
        }
427
428
56
        return column_result;
429
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
382
4.89k
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
4.89k
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
4.89k
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
4.89k
        auto column_result =
387
4.89k
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
4.89k
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
4.89k
        } else {
400
4.89k
            const auto& a = column_left_ptr->get_data().data();
401
4.89k
            const auto& b = column_right_ptr->get_data().data();
402
4.89k
            const auto& c = column_result->get_data().data();
403
4.89k
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
4.89k
            std::visit(
405
4.89k
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4.89k
                        for (size_t i = 0; i < sz; i++) {
407
4.89k
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4.89k
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4.89k
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4.89k
                                            max_result_number, scale_diff_multiplier));
411
4.89k
                        }
412
4.89k
                    },
413
4.89k
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
4.89k
                    make_bool_variant(check_overflow_for_decimal));
415
416
4.89k
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
4.89k
        }
427
428
4.89k
        return column_result;
429
4.89k
    }
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
382
90
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
90
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
90
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
90
        auto column_result =
387
90
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
90
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
90
        } else {
400
90
            const auto& a = column_left_ptr->get_data().data();
401
90
            const auto& b = column_right_ptr->get_data().data();
402
90
            const auto& c = column_result->get_data().data();
403
90
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
90
            std::visit(
405
90
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
90
                        for (size_t i = 0; i < sz; i++) {
407
90
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
90
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
90
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
90
                                            max_result_number, scale_diff_multiplier));
411
90
                        }
412
90
                    },
413
90
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
90
                    make_bool_variant(check_overflow_for_decimal));
415
416
90
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
90
        }
427
428
90
        return column_result;
429
90
    }
_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
382
78
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
78
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
78
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
78
        auto column_result =
387
78
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
78
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
78
        } else {
400
78
            const auto& a = column_left_ptr->get_data().data();
401
78
            const auto& b = column_right_ptr->get_data().data();
402
78
            const auto& c = column_result->get_data().data();
403
78
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
78
            std::visit(
405
78
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
78
                        for (size_t i = 0; i < sz; i++) {
407
78
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
78
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
78
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
78
                                            max_result_number, scale_diff_multiplier));
411
78
                        }
412
78
                    },
413
78
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
78
                    make_bool_variant(check_overflow_for_decimal));
415
416
78
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
78
        }
427
428
78
        return column_result;
429
78
    }
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
382
4
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
4
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
4
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
4
        auto column_result =
387
4
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
4
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
4
        } else {
400
4
            const auto& a = column_left_ptr->get_data().data();
401
4
            const auto& b = column_right_ptr->get_data().data();
402
4
            const auto& c = column_result->get_data().data();
403
4
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
4
            std::visit(
405
4
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
4
                        for (size_t i = 0; i < sz; i++) {
407
4
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
4
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
4
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
4
                                            max_result_number, scale_diff_multiplier));
411
4
                        }
412
4
                    },
413
4
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
4
                    make_bool_variant(check_overflow_for_decimal));
415
416
4
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
4
        }
427
428
4
        return column_result;
429
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
382
43
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
43
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
43
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
43
        auto column_result =
387
43
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
43
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
43
        } else {
400
43
            const auto& a = column_left_ptr->get_data().data();
401
43
            const auto& b = column_right_ptr->get_data().data();
402
43
            const auto& c = column_result->get_data().data();
403
43
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
43
            std::visit(
405
43
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
43
                        for (size_t i = 0; i < sz; i++) {
407
43
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
43
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
43
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
43
                                            max_result_number, scale_diff_multiplier));
411
43
                        }
412
43
                    },
413
43
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
43
                    make_bool_variant(check_overflow_for_decimal));
415
416
43
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
43
        }
427
428
43
        return column_result;
429
43
    }
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
382
15
            const DataTypeDecimal<ResultType>& res_data_type, bool check_overflow_for_decimal) {
383
15
        const auto* column_left_ptr = assert_cast<const ColumnTypeA*>(column_left.get());
384
15
        const auto* column_right_ptr = assert_cast<const ColumnTypeB*>(column_right.get());
385
386
15
        auto column_result =
387
15
                ColumnDecimal<ResultType>::create(column_left->size(), res_data_type.get_scale());
388
15
        auto sz = column_left->size();
389
        if constexpr (ResultType == TYPE_DECIMALV2) {
390
            if (check_overflow_for_decimal) {
391
                vector_vector<true>(column_left_ptr->get_data().data(),
392
                                    column_right_ptr->get_data().data(),
393
                                    column_result->get_data().data(), sz);
394
            } else {
395
                vector_vector<false>(column_left_ptr->get_data().data(),
396
                                     column_right_ptr->get_data().data(),
397
                                     column_result->get_data().data(), sz);
398
            }
399
15
        } else {
400
15
            const auto& a = column_left_ptr->get_data().data();
401
15
            const auto& b = column_right_ptr->get_data().data();
402
15
            const auto& c = column_result->get_data().data();
403
15
            bool need_adjust_scale = scale_diff_multiplier.value > 1;
404
15
            std::visit(
405
15
                    [&](auto need_adjust_scale, auto check_overflow_for_decimal) {
406
15
                        for (size_t i = 0; i < sz; i++) {
407
15
                            c[i] = typename ColumnDecimal<ResultType>::value_type(
408
15
                                    apply<need_adjust_scale, check_overflow_for_decimal>(
409
15
                                            a[i], b[i], *type_left, *type_right, res_data_type,
410
15
                                            max_result_number, scale_diff_multiplier));
411
15
                        }
412
15
                    },
413
15
                    make_bool_variant(need_adjust_scale && check_overflow_for_decimal),
414
15
                    make_bool_variant(check_overflow_for_decimal));
415
416
15
            if (need_adjust_scale && !check_overflow_for_decimal) {
417
0
                auto sig_uptr = std::unique_ptr<int8_t[]>(new int8_t[sz]);
418
0
                int8_t* sig = sig_uptr.get();
419
0
                for (size_t i = 0; i < sz; i++) {
420
0
                    sig[i] = sgn(c[i].value);
421
0
                }
422
0
                for (size_t i = 0; i < sz; i++) {
423
0
                    c[i].value = (c[i].value - sig[i]) / scale_diff_multiplier.value + sig[i];
424
0
                }
425
0
            }
426
15
        }
427
428
15
        return column_result;
429
15
    }
430
431
    template <bool need_adjust_scale, bool check_overflow, PrimitiveType ResultType>
432
        requires(is_decimal(ResultType) && ResultType != TYPE_DECIMALV2)
433
    static ALWAYS_INLINE typename PrimitiveTypeTraits<ResultType>::CppType::NativeType apply(
434
            ArgNativeTypeA a, ArgNativeTypeB b, const DataTypeA& type_left,
435
            const DataTypeB& type_right, const DataTypeDecimal<ResultType>& type_result,
436
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
437
79.0M
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
79.0M
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
79.0M
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
79.0M
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
83
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
62
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
62
                    if constexpr (need_adjust_scale) {
446
61
                        if (res256 > 0) {
447
58
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
58
                                     scale_diff_multiplier.value;
449
450
58
                        } else {
451
3
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
3
                                     scale_diff_multiplier.value;
453
3
                        }
454
61
                    }
455
                    // check if final result is overflow
456
62
                    if (res256 > wide::Int256(max_result_number.value) ||
457
62
                        res256 < wide::Int256(-max_result_number.value)) {
458
8
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
8
                                                              type_result.get_scale()}
460
8
                                                  .to_string(Decimal256(res256));
461
8
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
8
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
8
                                        type_left.to_string(ArgA(a)), "multiply",
464
8
                                        type_right.to_string(ArgB(b)), result_str,
465
8
                                        type_result.get_name());
466
54
                    } else {
467
54
                        res = res256;
468
54
                    }
469
62
                } else {
470
21
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
21
                                                          type_result.get_scale()}
472
21
                                              .to_string(Decimal256(res));
473
21
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
21
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
21
                                    type_left.to_string(ArgA(a)), "multiply",
476
21
                                    type_right.to_string(ArgB(b)), result_str,
477
21
                                    type_result.get_name());
478
21
                }
479
79.0M
            } else {
480
                // round to final result precision
481
79.0M
                if constexpr (need_adjust_scale) {
482
124
                    if (res >= 0) {
483
121
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
121
                    } else {
485
3
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
3
                    }
487
124
                }
488
79.2M
                if (res > max_result_number.value || res < -max_result_number.value) {
489
5
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
5
                                                          type_result.get_scale()}
491
5
                                              .to_string(Decimal256(res));
492
5
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
5
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
5
                                    type_left.to_string(ArgA(a)), "multiply",
495
5
                                    type_right.to_string(ArgB(b)), result_str,
496
5
                                    type_result.get_name());
497
5
                }
498
79.0M
            }
499
79.0M
            return res;
500
79.0M
        } else {
501
0
            res = apply<ResultType>(a, b);
502
0
            if constexpr (need_adjust_scale) {
503
0
                if (res >= 0) {
504
0
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
0
                } else {
506
0
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
0
                }
508
0
            }
509
0
            return res;
510
0
        }
511
79.0M
    }
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
437
20
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
20
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
20
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
20
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
20
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
20
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
20
            }
499
20
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
68
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
68
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
68
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
68
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
68
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
68
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
68
            }
499
68
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
2
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
2
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
2
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
2
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
2
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
2
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
2
            }
499
2
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
11
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
11
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
11
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
11
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
11
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
11
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
11
            }
499
11
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
4
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
4
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
4
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
4
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
3
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
3
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
3
                    if constexpr (need_adjust_scale) {
446
3
                        if (res256 > 0) {
447
2
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
2
                                     scale_diff_multiplier.value;
449
450
2
                        } else {
451
1
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
1
                                     scale_diff_multiplier.value;
453
1
                        }
454
3
                    }
455
                    // check if final result is overflow
456
3
                    if (res256 > wide::Int256(max_result_number.value) ||
457
3
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
3
                    } else {
467
3
                        res = res256;
468
3
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
3
            } else {
480
                // round to final result precision
481
1
                if constexpr (need_adjust_scale) {
482
1
                    if (res >= 0) {
483
1
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
1
                    } else {
485
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
0
                    }
487
1
                }
488
1
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
1
            }
499
4
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
3.55k
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
3.55k
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
3.55k
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
3.55k
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
3.55k
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
3.55k
                if (res > max_result_number.value || res < -max_result_number.value) {
489
1
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
1
                                                          type_result.get_scale()}
491
1
                                              .to_string(Decimal256(res));
492
1
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
1
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
1
                                    type_left.to_string(ArgA(a)), "multiply",
495
1
                                    type_right.to_string(ArgB(b)), result_str,
496
1
                                    type_result.get_name());
497
1
                }
498
3.55k
            }
499
3.55k
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
3
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
3
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
3
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
3
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
3
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
3
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
3
            }
499
3
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
29.0k
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
29.0k
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
29.0k
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
29.0k
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
29.0k
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
29.0k
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
29.0k
            }
499
29.0k
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
29.0k
    }
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
437
13
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
13
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
13
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
13
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
13
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
13
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
13
            }
499
13
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
41.7M
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
41.7M
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
41.7M
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
41.7M
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
41.7M
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
41.7M
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
41.7M
            }
499
41.7M
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
41.7M
    }
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
437
11
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
11
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
11
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
11
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
5
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
5
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
5
                    if constexpr (need_adjust_scale) {
446
5
                        if (res256 > 0) {
447
5
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
5
                                     scale_diff_multiplier.value;
449
450
5
                        } else {
451
0
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
0
                                     scale_diff_multiplier.value;
453
0
                        }
454
5
                    }
455
                    // check if final result is overflow
456
5
                    if (res256 > wide::Int256(max_result_number.value) ||
457
5
                        res256 < wide::Int256(-max_result_number.value)) {
458
1
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
1
                                                              type_result.get_scale()}
460
1
                                                  .to_string(Decimal256(res256));
461
1
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
1
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
1
                                        type_left.to_string(ArgA(a)), "multiply",
464
1
                                        type_right.to_string(ArgB(b)), result_str,
465
1
                                        type_result.get_name());
466
4
                    } else {
467
4
                        res = res256;
468
4
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
6
            } else {
480
                // round to final result precision
481
6
                if constexpr (need_adjust_scale) {
482
6
                    if (res >= 0) {
483
4
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
4
                    } else {
485
2
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
2
                    }
487
6
                }
488
6
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
6
            }
499
11
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
1
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
1
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
1
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
1
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
1
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
1
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
1
            }
499
1
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
2
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
2
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
2
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
2
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
2
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
2
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
2
            }
499
2
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
1
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
1
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
1
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
1
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
0
                    if constexpr (need_adjust_scale) {
446
0
                        if (res256 > 0) {
447
0
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
0
                                     scale_diff_multiplier.value;
449
450
0
                        } else {
451
0
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
0
                                     scale_diff_multiplier.value;
453
0
                        }
454
0
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
1
            } else {
480
                // round to final result precision
481
1
                if constexpr (need_adjust_scale) {
482
1
                    if (res >= 0) {
483
1
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
1
                    } else {
485
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
0
                    }
487
1
                }
488
1
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
1
            }
499
1
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
855
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
855
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
855
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
855
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
855
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
855
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
855
            }
499
855
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
855
    }
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
437
7
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
7
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
7
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
7
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
1
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
1
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
1
                    if constexpr (need_adjust_scale) {
446
1
                        if (res256 > 0) {
447
0
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
0
                                     scale_diff_multiplier.value;
449
450
1
                        } else {
451
1
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
1
                                     scale_diff_multiplier.value;
453
1
                        }
454
1
                    }
455
                    // check if final result is overflow
456
1
                    if (res256 > wide::Int256(max_result_number.value) ||
457
1
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
1
                    } else {
467
1
                        res = res256;
468
1
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
6
            } else {
480
                // round to final result precision
481
6
                if constexpr (need_adjust_scale) {
482
6
                    if (res >= 0) {
483
5
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
5
                    } else {
485
1
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
1
                    }
487
6
                }
488
6
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
6
            }
499
7
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
37.3M
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
37.3M
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
37.3M
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
37.3M
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
0
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
0
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
0
                    if (res256 > wide::Int256(max_result_number.value) ||
457
0
                        res256 < wide::Int256(-max_result_number.value)) {
458
0
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
0
                                                              type_result.get_scale()}
460
0
                                                  .to_string(Decimal256(res256));
461
0
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
0
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
0
                                        type_left.to_string(ArgA(a)), "multiply",
464
0
                                        type_right.to_string(ArgB(b)), result_str,
465
0
                                        type_result.get_name());
466
0
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
37.3M
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
37.4M
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
37.3M
            }
499
37.3M
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
37.3M
    }
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
437
117
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
117
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
117
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
117
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
52
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
52
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
52
                    if constexpr (need_adjust_scale) {
446
52
                        if (res256 > 0) {
447
51
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
51
                                     scale_diff_multiplier.value;
449
450
51
                        } else {
451
1
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
1
                                     scale_diff_multiplier.value;
453
1
                        }
454
52
                    }
455
                    // check if final result is overflow
456
52
                    if (res256 > wide::Int256(max_result_number.value) ||
457
52
                        res256 < wide::Int256(-max_result_number.value)) {
458
6
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
6
                                                              type_result.get_scale()}
460
6
                                                  .to_string(Decimal256(res256));
461
6
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
6
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
6
                                        type_left.to_string(ArgA(a)), "multiply",
464
6
                                        type_right.to_string(ArgB(b)), result_str,
465
6
                                        type_result.get_name());
466
46
                    } else {
467
46
                        res = res256;
468
46
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
65
            } else {
480
                // round to final result precision
481
65
                if constexpr (need_adjust_scale) {
482
65
                    if (res >= 0) {
483
65
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
65
                    } else {
485
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
0
                    }
487
65
                }
488
65
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
65
            }
499
117
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
117
    }
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
437
5
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
5
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
5
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
5
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
1
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
1
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
1
                    if (res256 > wide::Int256(max_result_number.value) ||
457
1
                        res256 < wide::Int256(-max_result_number.value)) {
458
1
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
1
                                                              type_result.get_scale()}
460
1
                                                  .to_string(Decimal256(res256));
461
1
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
1
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
1
                                        type_left.to_string(ArgA(a)), "multiply",
464
1
                                        type_right.to_string(ArgB(b)), result_str,
465
1
                                        type_result.get_name());
466
1
                    } else {
467
0
                        res = res256;
468
0
                    }
469
                } else {
470
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
                                                          type_result.get_scale()}
472
                                              .to_string(Decimal256(res));
473
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
                                    type_left.to_string(ArgA(a)), "multiply",
476
                                    type_right.to_string(ArgB(b)), result_str,
477
                                    type_result.get_name());
478
                }
479
4
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
4
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
4
            }
499
5
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
264
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
264
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
264
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
264
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
264
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
264
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
264
            }
499
264
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
264
    }
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
437
3
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
3
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
3
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
3
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
3
            } else {
480
                // round to final result precision
481
3
                if constexpr (need_adjust_scale) {
482
3
                    if (res >= 0) {
483
3
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
3
                    } else {
485
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
0
                    }
487
3
                }
488
3
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
3
            }
499
3
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
4
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
4
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
4
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
4
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
4
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
4
                if (res > max_result_number.value || res < -max_result_number.value) {
489
4
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
4
                                                          type_result.get_scale()}
491
4
                                              .to_string(Decimal256(res));
492
4
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
4
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
4
                                    type_left.to_string(ArgA(a)), "multiply",
495
4
                                    type_right.to_string(ArgB(b)), result_str,
496
4
                                    type_result.get_name());
497
4
                }
498
4
            }
499
0
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
51
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
51
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
51
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
51
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
9
                } else {
470
9
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
9
                                                          type_result.get_scale()}
472
9
                                              .to_string(Decimal256(res));
473
9
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
9
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
9
                                    type_left.to_string(ArgA(a)), "multiply",
476
9
                                    type_right.to_string(ArgB(b)), result_str,
477
9
                                    type_result.get_name());
478
9
                }
479
42
            } else {
480
                // round to final result precision
481
42
                if constexpr (need_adjust_scale) {
482
42
                    if (res >= 0) {
483
42
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
42
                    } else {
485
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
0
                    }
487
42
                }
488
42
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
42
            }
499
51
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
51
    }
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
437
2
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
2
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
2
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
2
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
2
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
2
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
2
            }
499
2
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
12
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
12
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
12
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
12
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
12
                } else {
470
12
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
12
                                                          type_result.get_scale()}
472
12
                                              .to_string(Decimal256(res));
473
12
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
12
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
12
                                    type_left.to_string(ArgA(a)), "multiply",
476
12
                                    type_right.to_string(ArgB(b)), result_str,
477
12
                                    type_result.get_name());
478
12
                }
479
12
            } else {
480
                // round to final result precision
481
0
                if constexpr (need_adjust_scale) {
482
0
                    if (res >= 0) {
483
0
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
0
                    } else {
485
0
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
0
                    }
487
0
                }
488
0
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
0
            }
499
12
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
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
437
4
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
438
4
        typename PrimitiveTypeTraits<ResultType>::CppType::NativeType res;
439
4
        if constexpr (check_overflow) {
440
            // TODO handle overflow gracefully
441
4
            if (UNLIKELY(apply<ResultType>(a, b, res))) {
442
                // multiply
443
                if constexpr (ResultType == TYPE_DECIMAL128I) {
444
                    wide::Int256 res256 = apply<TYPE_DECIMAL256>(a, b);
445
                    if constexpr (need_adjust_scale) {
446
                        if (res256 > 0) {
447
                            res256 = (res256 + scale_diff_multiplier.value / 2) /
448
                                     scale_diff_multiplier.value;
449
450
                        } else {
451
                            res256 = (res256 - scale_diff_multiplier.value / 2) /
452
                                     scale_diff_multiplier.value;
453
                        }
454
                    }
455
                    // check if final result is overflow
456
                    if (res256 > wide::Int256(max_result_number.value) ||
457
                        res256 < wide::Int256(-max_result_number.value)) {
458
                        auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
459
                                                              type_result.get_scale()}
460
                                                  .to_string(Decimal256(res256));
461
                        throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
462
                                        "Arithmetic overflow: {} {} {} = {}, result type: {}",
463
                                        type_left.to_string(ArgA(a)), "multiply",
464
                                        type_right.to_string(ArgB(b)), result_str,
465
                                        type_result.get_name());
466
                    } else {
467
                        res = res256;
468
                    }
469
0
                } else {
470
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
471
0
                                                          type_result.get_scale()}
472
0
                                              .to_string(Decimal256(res));
473
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
474
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
475
0
                                    type_left.to_string(ArgA(a)), "multiply",
476
0
                                    type_right.to_string(ArgB(b)), result_str,
477
0
                                    type_result.get_name());
478
0
                }
479
4
            } else {
480
                // round to final result precision
481
                if constexpr (need_adjust_scale) {
482
                    if (res >= 0) {
483
                        res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
484
                    } else {
485
                        res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
486
                    }
487
                }
488
4
                if (res > max_result_number.value || res < -max_result_number.value) {
489
0
                    auto result_str = DataTypeDecimal256 {BeConsts::MAX_DECIMAL256_PRECISION,
490
0
                                                          type_result.get_scale()}
491
0
                                              .to_string(Decimal256(res));
492
0
                    throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
493
0
                                    "Arithmetic overflow: {} {} {} = {}, result type: {}",
494
0
                                    type_left.to_string(ArgA(a)), "multiply",
495
0
                                    type_right.to_string(ArgB(b)), result_str,
496
0
                                    type_result.get_name());
497
0
                }
498
4
            }
499
4
            return res;
500
        } else {
501
            res = apply<ResultType>(a, b);
502
            if constexpr (need_adjust_scale) {
503
                if (res >= 0) {
504
                    res = (res + scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
505
                } else {
506
                    res = (res - scale_diff_multiplier.value / 2) / scale_diff_multiplier.value;
507
                }
508
            }
509
            return res;
510
        }
511
4
    }
512
513
    template <bool need_adjust_scale, bool check_overflow, PrimitiveType ResultType>
514
        requires(ResultType == TYPE_DECIMALV2)
515
    static ALWAYS_INLINE typename PrimitiveTypeTraits<ResultType>::CppType::NativeType apply(
516
            ArgNativeTypeA a, ArgNativeTypeB b, const DataTypeA& type_left,
517
            const DataTypeB& type_right, const DataTypeDecimal<ResultType>& type_result,
518
            const typename PrimitiveTypeTraits<ResultType>::CppType& max_result_number,
519
15
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
520
        // Now, Doris only support decimal +-*/ decimal.
521
15
        if constexpr (check_overflow) {
522
15
            auto res = apply(DecimalV2Value(a), DecimalV2Value(b)).value();
523
15
            if (res > max_result_number.value() || res < -max_result_number.value()) {
524
14
                throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
525
14
                                "Arithmetic overflow: {} {} {} = {}, result type: {}",
526
14
                                DecimalV2Value(a).to_string(), "multiply",
527
14
                                DecimalV2Value(b).to_string(), DecimalV2Value(res).to_string(),
528
14
                                type_to_string(ResultType));
529
14
            }
530
1
            return res;
531
15
        } else {
532
0
            return apply(DecimalV2Value(a), DecimalV2Value(b)).value();
533
0
        }
534
15
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE5applyILb1ELb1ELS1_20EQeqTL0_1_LS1_20EEENS_19PrimitiveTypeTraitsIXT1_EE7CppType10NativeTypeEnnRKNS_15DataTypeDecimalILS1_20EEESB_RKNS8_IXT1_EEERKNS5_7CppTypeESH_
Line
Count
Source
519
15
            const typename PrimitiveTypeTraits<ResultType>::CppType& scale_diff_multiplier) {
520
        // Now, Doris only support decimal +-*/ decimal.
521
15
        if constexpr (check_overflow) {
522
15
            auto res = apply(DecimalV2Value(a), DecimalV2Value(b)).value();
523
15
            if (res > max_result_number.value() || res < -max_result_number.value()) {
524
14
                throw Exception(ErrorCode::ARITHMETIC_OVERFLOW_ERRROR,
525
14
                                "Arithmetic overflow: {} {} {} = {}, result type: {}",
526
14
                                DecimalV2Value(a).to_string(), "multiply",
527
14
                                DecimalV2Value(b).to_string(), DecimalV2Value(res).to_string(),
528
14
                                type_to_string(ResultType));
529
14
            }
530
1
            return res;
531
        } else {
532
            return apply(DecimalV2Value(a), DecimalV2Value(b)).value();
533
        }
534
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_
535
536
    template <PrimitiveType PT>
537
    static std::pair<typename PrimitiveTypeTraits<PT>::CppType,
538
                     typename PrimitiveTypeTraits<PT>::CppType>
539
    get_max_and_multiplier(const DataTypeA* type_left, const DataTypeB* type_right,
540
14.3k
                           const DataTypeDecimal<PT>& type_result) {
541
14.3k
        auto max_result_number =
542
14.3k
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
14.3k
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
14.3k
        auto result_scale = type_result.get_scale();
546
14.3k
        DCHECK(orig_result_scale >= result_scale);
547
14.3k
        auto scale_diff_multiplier =
548
14.3k
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
14.3k
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
14.3k
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
14.3k
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS1_20EE22get_max_and_multiplierILS1_20EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_20EEESC_RKNS9_IXT_EEE
Line
Count
Source
540
169
                           const DataTypeDecimal<PT>& type_result) {
541
169
        auto max_result_number =
542
169
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
169
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
169
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
169
        auto scale_diff_multiplier =
548
169
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
169
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
169
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
169
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE22get_max_and_multiplierILS1_28EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEESC_RKNS9_IXT_EEE
Line
Count
Source
540
14
                           const DataTypeDecimal<PT>& type_result) {
541
14
        auto max_result_number =
542
14
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
14
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
14
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
14
        auto scale_diff_multiplier =
548
14
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
14
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
14
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
14
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_28EE22get_max_and_multiplierILS1_29EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEESC_RKNS9_IXT_EEE
Line
Count
Source
540
48
                           const DataTypeDecimal<PT>& type_result) {
541
48
        auto max_result_number =
542
48
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
48
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
48
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
48
        auto scale_diff_multiplier =
548
48
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
48
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
48
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
48
    }
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
540
2
                           const DataTypeDecimal<PT>& type_result) {
541
2
        auto max_result_number =
542
2
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
2
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
2
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
2
        auto scale_diff_multiplier =
548
2
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
2
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
2
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
2
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_29EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_29EEERKNS9_IXT_EEE
Line
Count
Source
540
9
                           const DataTypeDecimal<PT>& type_result) {
541
9
        auto max_result_number =
542
9
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
9
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
9
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
9
        auto scale_diff_multiplier =
548
9
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
9
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
9
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
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
540
112
                           const DataTypeDecimal<PT>& type_result) {
541
112
        auto max_result_number =
542
112
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
112
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
112
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
112
        auto scale_diff_multiplier =
548
112
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
112
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
112
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
112
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_28EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
540
3
                           const DataTypeDecimal<PT>& type_result) {
541
3
        auto max_result_number =
542
3
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
3
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
3
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
3
        auto scale_diff_multiplier =
548
3
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
3
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
3
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
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
540
58
                           const DataTypeDecimal<PT>& type_result) {
541
58
        auto max_result_number =
542
58
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
58
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
58
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
58
        auto scale_diff_multiplier =
548
58
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
58
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
58
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
58
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_28EE22get_max_and_multiplierILS1_30EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_28EEERKNS9_IXT_EEE
Line
Count
Source
540
9
                           const DataTypeDecimal<PT>& type_result) {
541
9
        auto max_result_number =
542
9
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
9
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
9
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
9
        auto scale_diff_multiplier =
548
9
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
9
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
9
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
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
540
8.46k
                           const DataTypeDecimal<PT>& type_result) {
541
8.46k
        auto max_result_number =
542
8.46k
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
8.46k
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
8.46k
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
8.46k
        auto scale_diff_multiplier =
548
8.46k
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
8.46k
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
8.46k
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
8.46k
    }
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
540
10
                           const DataTypeDecimal<PT>& type_result) {
541
10
        auto max_result_number =
542
10
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
10
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
10
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
10
        auto scale_diff_multiplier =
548
10
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
10
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
10
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
10
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_29EEEPKNS9_ILS1_30EEERKNS9_IXT_EEE
Line
Count
Source
540
2
                           const DataTypeDecimal<PT>& type_result) {
541
2
        auto max_result_number =
542
2
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
2
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
2
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
2
        auto scale_diff_multiplier =
548
2
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
2
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
2
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
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
540
334
                           const DataTypeDecimal<PT>& type_result) {
541
334
        auto max_result_number =
542
334
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
334
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
334
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
334
        auto scale_diff_multiplier =
548
334
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
334
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
334
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
334
    }
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
540
4.89k
                           const DataTypeDecimal<PT>& type_result) {
541
4.89k
        auto max_result_number =
542
4.89k
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
4.89k
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
4.89k
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
4.89k
        auto scale_diff_multiplier =
548
4.89k
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
4.89k
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
4.89k
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
4.89k
    }
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
540
92
                           const DataTypeDecimal<PT>& type_result) {
541
92
        auto max_result_number =
542
92
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
92
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
92
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
92
        auto scale_diff_multiplier =
548
92
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
92
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
92
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
92
    }
_ZN5doris19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS1_30EE22get_max_and_multiplierILS1_35EEESt4pairINS_19PrimitiveTypeTraitsIXT_EE7CppTypeES7_EPKNS_15DataTypeDecimalILS1_30EEESC_RKNS9_IXT_EEE
Line
Count
Source
540
78
                           const DataTypeDecimal<PT>& type_result) {
541
78
        auto max_result_number =
542
78
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
78
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
78
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
78
        auto scale_diff_multiplier =
548
78
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
78
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
78
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
78
    }
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
540
6
                           const DataTypeDecimal<PT>& type_result) {
541
6
        auto max_result_number =
542
6
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
6
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
6
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
6
        auto scale_diff_multiplier =
548
6
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
6
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
6
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
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
540
43
                           const DataTypeDecimal<PT>& type_result) {
541
43
        auto max_result_number =
542
43
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
43
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
43
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
43
        auto scale_diff_multiplier =
548
43
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
43
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
43
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
43
    }
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
540
16
                           const DataTypeDecimal<PT>& type_result) {
541
16
        auto max_result_number =
542
16
                DataTypeDecimal<PT>::get_max_digits_number(type_result.get_precision());
543
544
16
        auto orig_result_scale = type_left->get_scale() + type_right->get_scale();
545
16
        auto result_scale = type_result.get_scale();
546
        DCHECK(orig_result_scale >= result_scale);
547
16
        auto scale_diff_multiplier =
548
16
                DataTypeDecimal<PT>::get_scale_multiplier(orig_result_scale - result_scale);
549
16
        return {typename PrimitiveTypeTraits<PT>::CppType(max_result_number),
550
16
                typename PrimitiveTypeTraits<PT>::CppType(scale_diff_multiplier)};
551
16
    }
552
};
553
554
template <typename Impl>
555
class FunctionMultiply : public IFunction {
556
    static constexpr bool result_is_decimal = Impl::result_is_decimal;
557
558
public:
559
    static constexpr auto name = "multiply";
560
561
15.8k
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE6createEv
Line
Count
Source
561
62
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE6createEv
Line
Count
Source
561
37
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE6createEv
Line
Count
Source
561
11
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE6createEv
Line
Count
Source
561
35
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE6createEv
Line
Count
Source
561
7
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE6createEv
Line
Count
Source
561
33
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE6createEv
Line
Count
Source
561
174
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE6createEv
Line
Count
Source
561
14
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE6createEv
Line
Count
Source
561
7
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE6createEv
Line
Count
Source
561
337
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE6createEv
Line
Count
Source
561
93
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE6createEv
Line
Count
Source
561
121
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE6createEv
Line
Count
Source
561
7
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE6createEv
Line
Count
Source
561
12
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE6createEv
Line
Count
Source
561
7
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE6createEv
Line
Count
Source
561
28
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE6createEv
Line
Count
Source
561
21
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE6createEv
Line
Count
Source
561
7
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE6createEv
Line
Count
Source
561
22
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE6createEv
Line
Count
Source
561
33
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE6createEv
Line
Count
Source
561
14.1k
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE6createEv
Line
Count
Source
561
48
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE6createEv
Line
Count
Source
561
7
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE6createEv
Line
Count
Source
561
534
    static FunctionPtr create() { return std::make_shared<FunctionMultiply>(); }
562
563
15.8k
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEEC2Ev
Line
Count
Source
563
62
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEEC2Ev
Line
Count
Source
563
37
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEEC2Ev
Line
Count
Source
563
11
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEEC2Ev
Line
Count
Source
563
35
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEEC2Ev
Line
Count
Source
563
7
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEEC2Ev
Line
Count
Source
563
33
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEEC2Ev
Line
Count
Source
563
174
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEEC2Ev
Line
Count
Source
563
14
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEEC2Ev
Line
Count
Source
563
7
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEEC2Ev
Line
Count
Source
563
337
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEEC2Ev
Line
Count
Source
563
93
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEEC2Ev
Line
Count
Source
563
121
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEEC2Ev
Line
Count
Source
563
7
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEEC2Ev
Line
Count
Source
563
12
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEEC2Ev
Line
Count
Source
563
7
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEEC2Ev
Line
Count
Source
563
28
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEEC2Ev
Line
Count
Source
563
21
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEEC2Ev
Line
Count
Source
563
7
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEEC2Ev
Line
Count
Source
563
22
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEEC2Ev
Line
Count
Source
563
33
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEEC2Ev
Line
Count
Source
563
14.1k
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEEC2Ev
Line
Count
Source
563
48
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEEC2Ev
Line
Count
Source
563
7
    FunctionMultiply() = default;
_ZN5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEEC2Ev
Line
Count
Source
563
534
    FunctionMultiply() = default;
564
565
24
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE8get_nameB5cxx11Ev
Line
Count
Source
565
1
    String get_name() const override { return name; }
566
567
16.0k
    bool need_replace_null_data_to_default() const override {
568
16.0k
        return Impl::need_replace_null_data_to_default;
569
16.0k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
120
    bool need_replace_null_data_to_default() const override {
568
120
        return Impl::need_replace_null_data_to_default;
569
120
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
62
    bool need_replace_null_data_to_default() const override {
568
62
        return Impl::need_replace_null_data_to_default;
569
62
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
11
    bool need_replace_null_data_to_default() const override {
568
11
        return Impl::need_replace_null_data_to_default;
569
11
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
33
    bool need_replace_null_data_to_default() const override {
568
33
        return Impl::need_replace_null_data_to_default;
569
33
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
25
    bool need_replace_null_data_to_default() const override {
568
25
        return Impl::need_replace_null_data_to_default;
569
25
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
5.23k
    bool need_replace_null_data_to_default() const override {
568
5.23k
        return Impl::need_replace_null_data_to_default;
569
5.23k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
12
    bool need_replace_null_data_to_default() const override {
568
12
        return Impl::need_replace_null_data_to_default;
569
12
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
183
    bool need_replace_null_data_to_default() const override {
568
183
        return Impl::need_replace_null_data_to_default;
569
183
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
4.44k
    bool need_replace_null_data_to_default() const override {
568
4.44k
        return Impl::need_replace_null_data_to_default;
569
4.44k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
165
    bool need_replace_null_data_to_default() const override {
568
165
        return Impl::need_replace_null_data_to_default;
569
165
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
6
    bool need_replace_null_data_to_default() const override {
568
6
        return Impl::need_replace_null_data_to_default;
569
6
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
41
    bool need_replace_null_data_to_default() const override {
568
41
        return Impl::need_replace_null_data_to_default;
569
41
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
14
    bool need_replace_null_data_to_default() const override {
568
14
        return Impl::need_replace_null_data_to_default;
569
14
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
23
    bool need_replace_null_data_to_default() const override {
568
23
        return Impl::need_replace_null_data_to_default;
569
23
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
44
    bool need_replace_null_data_to_default() const override {
568
44
        return Impl::need_replace_null_data_to_default;
569
44
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
2.73k
    bool need_replace_null_data_to_default() const override {
568
2.73k
        return Impl::need_replace_null_data_to_default;
569
2.73k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
82
    bool need_replace_null_data_to_default() const override {
568
82
        return Impl::need_replace_null_data_to_default;
569
82
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE33need_replace_null_data_to_defaultEv
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE33need_replace_null_data_to_defaultEv
Line
Count
Source
567
2.83k
    bool need_replace_null_data_to_default() const override {
568
2.83k
        return Impl::need_replace_null_data_to_default;
569
2.83k
    }
570
571
118k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
513
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
238
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
38
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
315
    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
571
225
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
23.5k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
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
571
1.61k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
14.3k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
770
    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
571
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
571
170
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
75
    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
571
120
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
248
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
65.6k
    bool use_default_implementation_for_constants() const final { return false; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE40use_default_implementation_for_constantsEv
Line
Count
Source
571
439
    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
571
10.0k
    bool use_default_implementation_for_constants() const final { return false; }
572
573
15.6k
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE23get_number_of_argumentsEv
Line
Count
Source
573
55
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE23get_number_of_argumentsEv
Line
Count
Source
573
30
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE23get_number_of_argumentsEv
Line
Count
Source
573
4
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
573
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
573
26
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE23get_number_of_argumentsEv
Line
Count
Source
573
167
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
573
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
573
330
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE23get_number_of_argumentsEv
Line
Count
Source
573
86
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE23get_number_of_argumentsEv
Line
Count
Source
573
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
573
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
573
21
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE23get_number_of_argumentsEv
Line
Count
Source
573
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
573
15
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE23get_number_of_argumentsEv
Line
Count
Source
573
26
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE23get_number_of_argumentsEv
Line
Count
Source
573
14.1k
    size_t get_number_of_arguments() const override { return 2; }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE23get_number_of_argumentsEv
Line
Count
Source
573
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
573
527
    size_t get_number_of_arguments() const override { return 2; }
574
575
144
    DataTypes get_variadic_argument_types_impl() const override {
576
144
        return Impl::get_variadic_argument_types();
577
144
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE32get_variadic_argument_types_implEv
Line
Count
Source
575
6
    DataTypes get_variadic_argument_types_impl() const override {
576
6
        return Impl::get_variadic_argument_types();
577
6
    }
578
579
15.6k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
15.6k
        return arguments[0];
581
15.6k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
55
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
55
        return arguments[0];
581
55
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
30
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
30
        return arguments[0];
581
30
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
4
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
4
        return arguments[0];
581
4
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
28
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
28
        return arguments[0];
581
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
579
26
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
26
        return arguments[0];
581
26
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
167
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
167
        return arguments[0];
581
167
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
7
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
7
        return arguments[0];
581
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
579
330
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
330
        return arguments[0];
581
330
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
86
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
86
        return arguments[0];
581
86
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
114
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
114
        return arguments[0];
581
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
579
5
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
5
        return arguments[0];
581
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
579
21
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
21
        return arguments[0];
581
21
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
14
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
14
        return arguments[0];
581
14
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
15
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
15
        return arguments[0];
581
15
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
26
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
26
        return arguments[0];
581
26
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
14.1k
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
14.1k
        return arguments[0];
581
14.1k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
41
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
41
        return arguments[0];
581
41
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE20get_return_type_implERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
579
527
    DataTypePtr get_return_type_impl(const DataTypes& arguments) const override {
580
527
        return arguments[0];
581
527
    }
582
583
    Status execute_impl(FunctionContext* context, Block& block, const ColumnNumbers& arguments,
584
32.6k
                        uint32_t result, size_t input_rows_count) const override {
585
32.6k
        auto& column_left = block.get_by_position(arguments[0]).column;
586
32.6k
        auto& column_right = block.get_by_position(arguments[1]).column;
587
32.6k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
32.6k
                block.get_by_position(arguments[0]).type.get());
589
32.6k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
32.6k
                block.get_by_position(arguments[1]).type.get());
591
32.6k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
32.6k
        bool is_const_left = is_column_const(*column_left);
593
32.6k
        bool is_const_right = is_column_const(*column_right);
594
595
32.6k
        ColumnPtr column_result = nullptr;
596
32.6k
        if (is_const_left && is_const_right) {
597
32
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
32
                                              res_data_type, context->check_overflow_for_decimal());
599
32.6k
        } else if (is_const_left) {
600
81
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
81
                                            res_data_type, context->check_overflow_for_decimal());
602
32.5k
        } else if (is_const_right) {
603
14.5k
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
14.5k
                                            res_data_type, context->check_overflow_for_decimal());
605
18.0k
        } else {
606
18.0k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
18.0k
                                          res_data_type, context->check_overflow_for_decimal());
608
18.0k
        }
609
32.6k
        block.replace_by_position(result, std::move(column_result));
610
32.6k
        return Status::OK();
611
32.6k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
169
                        uint32_t result, size_t input_rows_count) const override {
585
169
        auto& column_left = block.get_by_position(arguments[0]).column;
586
169
        auto& column_right = block.get_by_position(arguments[1]).column;
587
169
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
169
                block.get_by_position(arguments[0]).type.get());
589
169
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
169
                block.get_by_position(arguments[1]).type.get());
591
169
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
169
        bool is_const_left = is_column_const(*column_left);
593
169
        bool is_const_right = is_column_const(*column_right);
594
595
169
        ColumnPtr column_result = nullptr;
596
169
        if (is_const_left && is_const_right) {
597
13
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
13
                                              res_data_type, context->check_overflow_for_decimal());
599
156
        } else if (is_const_left) {
600
1
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
1
                                            res_data_type, context->check_overflow_for_decimal());
602
155
        } else if (is_const_right) {
603
1
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
1
                                            res_data_type, context->check_overflow_for_decimal());
605
154
        } else {
606
154
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
154
                                          res_data_type, context->check_overflow_for_decimal());
608
154
        }
609
169
        block.replace_by_position(result, std::move(column_result));
610
169
        return Status::OK();
611
169
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
62
                        uint32_t result, size_t input_rows_count) const override {
585
62
        auto& column_left = block.get_by_position(arguments[0]).column;
586
62
        auto& column_right = block.get_by_position(arguments[1]).column;
587
62
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
62
                block.get_by_position(arguments[0]).type.get());
589
62
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
62
                block.get_by_position(arguments[1]).type.get());
591
62
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
62
        bool is_const_left = is_column_const(*column_left);
593
62
        bool is_const_right = is_column_const(*column_right);
594
595
62
        ColumnPtr column_result = nullptr;
596
62
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
62
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
62
        } else if (is_const_right) {
603
34
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
34
                                            res_data_type, context->check_overflow_for_decimal());
605
34
        } else {
606
28
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
28
                                          res_data_type, context->check_overflow_for_decimal());
608
28
        }
609
62
        block.replace_by_position(result, std::move(column_result));
610
62
        return Status::OK();
611
62
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
11
                        uint32_t result, size_t input_rows_count) const override {
585
11
        auto& column_left = block.get_by_position(arguments[0]).column;
586
11
        auto& column_right = block.get_by_position(arguments[1]).column;
587
11
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
11
                block.get_by_position(arguments[0]).type.get());
589
11
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
11
                block.get_by_position(arguments[1]).type.get());
591
11
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
11
        bool is_const_left = is_column_const(*column_left);
593
11
        bool is_const_right = is_column_const(*column_right);
594
595
11
        ColumnPtr column_result = nullptr;
596
11
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
11
        } else if (is_const_left) {
600
5
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
5
                                            res_data_type, context->check_overflow_for_decimal());
602
6
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
6
        } else {
606
6
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
6
                                          res_data_type, context->check_overflow_for_decimal());
608
6
        }
609
11
        block.replace_by_position(result, std::move(column_result));
610
11
        return Status::OK();
611
11
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
115
                        uint32_t result, size_t input_rows_count) const override {
585
115
        auto& column_left = block.get_by_position(arguments[0]).column;
586
115
        auto& column_right = block.get_by_position(arguments[1]).column;
587
115
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
115
                block.get_by_position(arguments[0]).type.get());
589
115
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
115
                block.get_by_position(arguments[1]).type.get());
591
115
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
115
        bool is_const_left = is_column_const(*column_left);
593
115
        bool is_const_right = is_column_const(*column_right);
594
595
115
        ColumnPtr column_result = nullptr;
596
115
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
115
        } else if (is_const_left) {
600
67
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
67
                                            res_data_type, context->check_overflow_for_decimal());
602
67
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
48
        } else {
606
48
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
48
                                          res_data_type, context->check_overflow_for_decimal());
608
48
        }
609
115
        block.replace_by_position(result, std::move(column_result));
610
115
        return Status::OK();
611
115
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
67
                        uint32_t result, size_t input_rows_count) const override {
585
67
        auto& column_left = block.get_by_position(arguments[0]).column;
586
67
        auto& column_right = block.get_by_position(arguments[1]).column;
587
67
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
67
                block.get_by_position(arguments[0]).type.get());
589
67
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
67
                block.get_by_position(arguments[1]).type.get());
591
67
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
67
        bool is_const_left = is_column_const(*column_left);
593
67
        bool is_const_right = is_column_const(*column_right);
594
595
67
        ColumnPtr column_result = nullptr;
596
67
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
67
        } else if (is_const_left) {
600
4
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
4
                                            res_data_type, context->check_overflow_for_decimal());
602
63
        } else if (is_const_right) {
603
57
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
57
                                            res_data_type, context->check_overflow_for_decimal());
605
57
        } else {
606
6
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
6
                                          res_data_type, context->check_overflow_for_decimal());
608
6
        }
609
67
        block.replace_by_position(result, std::move(column_result));
610
67
        return Status::OK();
611
67
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
8.46k
                        uint32_t result, size_t input_rows_count) const override {
585
8.46k
        auto& column_left = block.get_by_position(arguments[0]).column;
586
8.46k
        auto& column_right = block.get_by_position(arguments[1]).column;
587
8.46k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
8.46k
                block.get_by_position(arguments[0]).type.get());
589
8.46k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
8.46k
                block.get_by_position(arguments[1]).type.get());
591
8.46k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
8.46k
        bool is_const_left = is_column_const(*column_left);
593
8.46k
        bool is_const_right = is_column_const(*column_right);
594
595
8.46k
        ColumnPtr column_result = nullptr;
596
8.46k
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
8.46k
        } else if (is_const_left) {
600
3
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
3
                                            res_data_type, context->check_overflow_for_decimal());
602
8.46k
        } else if (is_const_right) {
603
2
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
2
                                            res_data_type, context->check_overflow_for_decimal());
605
8.46k
        } else {
606
8.46k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
8.46k
                                          res_data_type, context->check_overflow_for_decimal());
608
8.46k
        }
609
8.46k
        block.replace_by_position(result, std::move(column_result));
610
8.46k
        return Status::OK();
611
8.46k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
12
                        uint32_t result, size_t input_rows_count) const override {
585
12
        auto& column_left = block.get_by_position(arguments[0]).column;
586
12
        auto& column_right = block.get_by_position(arguments[1]).column;
587
12
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
12
                block.get_by_position(arguments[0]).type.get());
589
12
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
12
                block.get_by_position(arguments[1]).type.get());
591
12
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
12
        bool is_const_left = is_column_const(*column_left);
593
12
        bool is_const_right = is_column_const(*column_right);
594
595
12
        ColumnPtr column_result = nullptr;
596
12
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
12
        } else if (is_const_left) {
600
1
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
1
                                            res_data_type, context->check_overflow_for_decimal());
602
11
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
11
        } else {
606
11
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
11
                                          res_data_type, context->check_overflow_for_decimal());
608
11
        }
609
12
        block.replace_by_position(result, std::move(column_result));
610
12
        return Status::OK();
611
12
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
334
                        uint32_t result, size_t input_rows_count) const override {
585
334
        auto& column_left = block.get_by_position(arguments[0]).column;
586
334
        auto& column_right = block.get_by_position(arguments[1]).column;
587
334
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
334
                block.get_by_position(arguments[0]).type.get());
589
334
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
334
                block.get_by_position(arguments[1]).type.get());
591
334
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
334
        bool is_const_left = is_column_const(*column_left);
593
334
        bool is_const_right = is_column_const(*column_right);
594
595
334
        ColumnPtr column_result = nullptr;
596
334
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
334
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
334
        } else if (is_const_right) {
603
278
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
278
                                            res_data_type, context->check_overflow_for_decimal());
605
278
        } else {
606
56
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
56
                                          res_data_type, context->check_overflow_for_decimal());
608
56
        }
609
334
        block.replace_by_position(result, std::move(column_result));
610
334
        return Status::OK();
611
334
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
4.89k
                        uint32_t result, size_t input_rows_count) const override {
585
4.89k
        auto& column_left = block.get_by_position(arguments[0]).column;
586
4.89k
        auto& column_right = block.get_by_position(arguments[1]).column;
587
4.89k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
4.89k
                block.get_by_position(arguments[0]).type.get());
589
4.89k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
4.89k
                block.get_by_position(arguments[1]).type.get());
591
4.89k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
4.89k
        bool is_const_left = is_column_const(*column_left);
593
4.89k
        bool is_const_right = is_column_const(*column_right);
594
595
4.89k
        ColumnPtr column_result = nullptr;
596
4.89k
        if (is_const_left && is_const_right) {
597
2
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
2
                                              res_data_type, context->check_overflow_for_decimal());
599
4.89k
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
4.89k
        } else if (is_const_right) {
603
2
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
2
                                            res_data_type, context->check_overflow_for_decimal());
605
4.89k
        } else {
606
4.89k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
4.89k
                                          res_data_type, context->check_overflow_for_decimal());
608
4.89k
        }
609
4.89k
        block.replace_by_position(result, std::move(column_result));
610
4.89k
        return Status::OK();
611
4.89k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
170
                        uint32_t result, size_t input_rows_count) const override {
585
170
        auto& column_left = block.get_by_position(arguments[0]).column;
586
170
        auto& column_right = block.get_by_position(arguments[1]).column;
587
170
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
170
                block.get_by_position(arguments[0]).type.get());
589
170
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
170
                block.get_by_position(arguments[1]).type.get());
591
170
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
170
        bool is_const_left = is_column_const(*column_left);
593
170
        bool is_const_right = is_column_const(*column_right);
594
595
170
        ColumnPtr column_result = nullptr;
596
170
        if (is_const_left && is_const_right) {
597
2
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
2
                                              res_data_type, context->check_overflow_for_decimal());
599
168
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
168
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
168
        } else {
606
168
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
168
                                          res_data_type, context->check_overflow_for_decimal());
608
168
        }
609
170
        block.replace_by_position(result, std::move(column_result));
610
170
        return Status::OK();
611
170
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_28EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
6
                        uint32_t result, size_t input_rows_count) const override {
585
6
        auto& column_left = block.get_by_position(arguments[0]).column;
586
6
        auto& column_right = block.get_by_position(arguments[1]).column;
587
6
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
6
                block.get_by_position(arguments[0]).type.get());
589
6
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
6
                block.get_by_position(arguments[1]).type.get());
591
6
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
6
        bool is_const_left = is_column_const(*column_left);
593
6
        bool is_const_right = is_column_const(*column_right);
594
595
6
        ColumnPtr column_result = nullptr;
596
6
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
6
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
6
        } else if (is_const_right) {
603
2
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
2
                                            res_data_type, context->check_overflow_for_decimal());
605
4
        } else {
606
4
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
4
                                          res_data_type, context->check_overflow_for_decimal());
608
4
        }
609
6
        block.replace_by_position(result, std::move(column_result));
610
6
        return Status::OK();
611
6
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_29EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_30EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
43
                        uint32_t result, size_t input_rows_count) const override {
585
43
        auto& column_left = block.get_by_position(arguments[0]).column;
586
43
        auto& column_right = block.get_by_position(arguments[1]).column;
587
43
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
43
                block.get_by_position(arguments[0]).type.get());
589
43
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
43
                block.get_by_position(arguments[1]).type.get());
591
43
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
43
        bool is_const_left = is_column_const(*column_left);
593
43
        bool is_const_right = is_column_const(*column_right);
594
595
43
        ColumnPtr column_result = nullptr;
596
43
        if (is_const_left && is_const_right) {
597
0
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
0
                                              res_data_type, context->check_overflow_for_decimal());
599
43
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
43
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
43
        } else {
606
43
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
43
                                          res_data_type, context->check_overflow_for_decimal());
608
43
        }
609
43
        block.replace_by_position(result, std::move(column_result));
610
43
        return Status::OK();
611
43
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
16
                        uint32_t result, size_t input_rows_count) const override {
585
16
        auto& column_left = block.get_by_position(arguments[0]).column;
586
16
        auto& column_right = block.get_by_position(arguments[1]).column;
587
16
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
16
                block.get_by_position(arguments[0]).type.get());
589
16
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
16
                block.get_by_position(arguments[1]).type.get());
591
16
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
16
        bool is_const_left = is_column_const(*column_left);
593
16
        bool is_const_right = is_column_const(*column_right);
594
595
16
        ColumnPtr column_result = nullptr;
596
16
        if (is_const_left && is_const_right) {
597
1
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
1
                                              res_data_type, context->check_overflow_for_decimal());
599
15
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
15
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
15
        } else {
606
15
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
15
                                          res_data_type, context->check_overflow_for_decimal());
608
15
        }
609
16
        block.replace_by_position(result, std::move(column_result));
610
16
        return Status::OK();
611
16
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE3EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE4EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
40
                        uint32_t result, size_t input_rows_count) const override {
585
40
        auto& column_left = block.get_by_position(arguments[0]).column;
586
40
        auto& column_right = block.get_by_position(arguments[1]).column;
587
40
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
40
                block.get_by_position(arguments[0]).type.get());
589
40
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
40
                block.get_by_position(arguments[1]).type.get());
591
40
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
40
        bool is_const_left = is_column_const(*column_left);
593
40
        bool is_const_right = is_column_const(*column_right);
594
595
40
        ColumnPtr column_result = nullptr;
596
40
        if (is_const_left && is_const_right) {
597
2
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
2
                                              res_data_type, context->check_overflow_for_decimal());
599
38
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
38
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
38
        } else {
606
38
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
38
                                          res_data_type, context->check_overflow_for_decimal());
608
38
        }
609
40
        block.replace_by_position(result, std::move(column_result));
610
40
        return Status::OK();
611
40
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
68
                        uint32_t result, size_t input_rows_count) const override {
585
68
        auto& column_left = block.get_by_position(arguments[0]).column;
586
68
        auto& column_right = block.get_by_position(arguments[1]).column;
587
68
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
68
                block.get_by_position(arguments[0]).type.get());
589
68
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
68
                block.get_by_position(arguments[1]).type.get());
591
68
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
68
        bool is_const_left = is_column_const(*column_left);
593
68
        bool is_const_right = is_column_const(*column_right);
594
595
68
        ColumnPtr column_result = nullptr;
596
68
        if (is_const_left && is_const_right) {
597
3
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
3
                                              res_data_type, context->check_overflow_for_decimal());
599
65
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
65
        } else if (is_const_right) {
603
0
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
0
                                            res_data_type, context->check_overflow_for_decimal());
605
65
        } else {
606
65
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
65
                                          res_data_type, context->check_overflow_for_decimal());
608
65
        }
609
68
        block.replace_by_position(result, std::move(column_result));
610
68
        return Status::OK();
611
68
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
14.9k
                        uint32_t result, size_t input_rows_count) const override {
585
14.9k
        auto& column_left = block.get_by_position(arguments[0]).column;
586
14.9k
        auto& column_right = block.get_by_position(arguments[1]).column;
587
14.9k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
14.9k
                block.get_by_position(arguments[0]).type.get());
589
14.9k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
14.9k
                block.get_by_position(arguments[1]).type.get());
591
14.9k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
14.9k
        bool is_const_left = is_column_const(*column_left);
593
14.9k
        bool is_const_right = is_column_const(*column_right);
594
595
14.9k
        ColumnPtr column_result = nullptr;
596
14.9k
        if (is_const_left && is_const_right) {
597
4
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
4
                                              res_data_type, context->check_overflow_for_decimal());
599
14.9k
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
14.9k
        } else if (is_const_right) {
603
13.9k
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
13.9k
                                            res_data_type, context->check_overflow_for_decimal());
605
13.9k
        } else {
606
1.07k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
1.07k
                                          res_data_type, context->check_overflow_for_decimal());
608
1.07k
        }
609
14.9k
        block.replace_by_position(result, std::move(column_result));
610
14.9k
        return Status::OK();
611
14.9k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
158
                        uint32_t result, size_t input_rows_count) const override {
585
158
        auto& column_left = block.get_by_position(arguments[0]).column;
586
158
        auto& column_right = block.get_by_position(arguments[1]).column;
587
158
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
158
                block.get_by_position(arguments[0]).type.get());
589
158
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
158
                block.get_by_position(arguments[1]).type.get());
591
158
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
158
        bool is_const_left = is_column_const(*column_left);
593
158
        bool is_const_right = is_column_const(*column_right);
594
595
158
        ColumnPtr column_result = nullptr;
596
158
        if (is_const_left && is_const_right) {
597
1
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
1
                                              res_data_type, context->check_overflow_for_decimal());
599
157
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
157
        } else if (is_const_right) {
603
6
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
6
                                            res_data_type, context->check_overflow_for_decimal());
605
151
        } else {
606
151
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
151
                                          res_data_type, context->check_overflow_for_decimal());
608
151
        }
609
158
        block.replace_by_position(result, std::move(column_result));
610
158
        return Status::OK();
611
158
    }
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE8EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE9EEEE12execute_implEPNS_15FunctionContextERNS_5BlockERKSt6vectorIjSaIjEEjm
Line
Count
Source
584
3.06k
                        uint32_t result, size_t input_rows_count) const override {
585
3.06k
        auto& column_left = block.get_by_position(arguments[0]).column;
586
3.06k
        auto& column_right = block.get_by_position(arguments[1]).column;
587
3.06k
        const auto* type_left = assert_cast<const typename Impl::DataTypeA*>(
588
3.06k
                block.get_by_position(arguments[0]).type.get());
589
3.06k
        const auto* type_right = assert_cast<const typename Impl::DataTypeB*>(
590
3.06k
                block.get_by_position(arguments[1]).type.get());
591
3.06k
        const auto& res_data_type = remove_nullable(block.get_by_position(result).type);
592
3.06k
        bool is_const_left = is_column_const(*column_left);
593
3.06k
        bool is_const_right = is_column_const(*column_right);
594
595
3.06k
        ColumnPtr column_result = nullptr;
596
3.06k
        if (is_const_left && is_const_right) {
597
4
            column_result = constant_constant(column_left, column_right, type_left, type_right,
598
4
                                              res_data_type, context->check_overflow_for_decimal());
599
3.06k
        } else if (is_const_left) {
600
0
            column_result = constant_vector(column_left, column_right, type_left, type_right,
601
0
                                            res_data_type, context->check_overflow_for_decimal());
602
3.06k
        } else if (is_const_right) {
603
254
            column_result = vector_constant(column_left, column_right, type_left, type_right,
604
254
                                            res_data_type, context->check_overflow_for_decimal());
605
2.80k
        } else {
606
2.80k
            column_result = vector_vector(column_left, column_right, type_left, type_right,
607
2.80k
                                          res_data_type, context->check_overflow_for_decimal());
608
2.80k
        }
609
3.06k
        block.replace_by_position(result, std::move(column_result));
610
3.06k
        return Status::OK();
611
3.06k
    }
612
613
private:
614
    ColumnPtr constant_constant(ColumnPtr column_left, ColumnPtr column_right,
615
                                const typename Impl::DataTypeA* type_left,
616
                                const typename Impl::DataTypeB* type_right,
617
33
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
33
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
33
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
33
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
33
        ColumnPtr column_result = nullptr;
623
624
33
        if constexpr (result_is_decimal) {
625
18
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
13
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
13
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
13
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
13
                                        type_left, type_right, type_result);
630
13
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
13
                                        left_tmp;
632
13
                                auto left_src =
633
13
                                        column_left_ptr
634
13
                                                ->template get_value<Impl::DataTypeA::PType>();
635
13
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
13
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
13
                                        right_tmp;
638
13
                                auto right_src =
639
13
                                        column_right_ptr
640
13
                                                ->template get_value<Impl::DataTypeB::PType>();
641
13
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
13
                                column_result = Impl::constant_constant(
643
13
                                        left_tmp, right_tmp, type_left, type_right,
644
13
                                        max_and_multiplier.first, max_and_multiplier.second,
645
13
                                        type_result, check_overflow_for_decimal);
646
13
                                return true;
647
13
                            })) {
648
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
0
                                    type_to_string(res_data_type->get_primitive_type()));
651
0
                }
652
13
            } else {
653
5
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
5
                                         DataTypeDecimal256>(
655
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
5
                                        type_left, type_right, type_result);
658
5
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
5
                                        left_tmp;
660
5
                                auto left_src =
661
5
                                        column_left_ptr
662
5
                                                ->template get_value<Impl::DataTypeA::PType>();
663
5
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
5
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
5
                                        right_tmp;
666
5
                                auto right_src =
667
5
                                        column_right_ptr
668
5
                                                ->template get_value<Impl::DataTypeB::PType>();
669
5
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
5
                                column_result = Impl::constant_constant(
671
5
                                        left_tmp, right_tmp, type_left, type_right,
672
5
                                        max_and_multiplier.first, max_and_multiplier.second,
673
5
                                        type_result, check_overflow_for_decimal);
674
5
                                return true;
675
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
655
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
2
                                        type_left, type_right, type_result);
658
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
2
                                        left_tmp;
660
2
                                auto left_src =
661
2
                                        column_left_ptr
662
2
                                                ->template get_value<Impl::DataTypeA::PType>();
663
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
2
                                        right_tmp;
666
2
                                auto right_src =
667
2
                                        column_right_ptr
668
2
                                                ->template get_value<Impl::DataTypeB::PType>();
669
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
2
                                column_result = Impl::constant_constant(
671
2
                                        left_tmp, right_tmp, type_left, type_right,
672
2
                                        max_and_multiplier.first, max_and_multiplier.second,
673
2
                                        type_result, check_overflow_for_decimal);
674
2
                                return true;
675
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
655
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
2
                                        type_left, type_right, type_result);
658
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
2
                                        left_tmp;
660
2
                                auto left_src =
661
2
                                        column_left_ptr
662
2
                                                ->template get_value<Impl::DataTypeA::PType>();
663
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
2
                                        right_tmp;
666
2
                                auto right_src =
667
2
                                        column_right_ptr
668
2
                                                ->template get_value<Impl::DataTypeB::PType>();
669
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
2
                                column_result = Impl::constant_constant(
671
2
                                        left_tmp, right_tmp, type_left, type_right,
672
2
                                        max_and_multiplier.first, max_and_multiplier.second,
673
2
                                        type_result, check_overflow_for_decimal);
674
2
                                return true;
675
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
655
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
1
                                        type_left, type_right, type_result);
658
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
1
                                        left_tmp;
660
1
                                auto left_src =
661
1
                                        column_left_ptr
662
1
                                                ->template get_value<Impl::DataTypeA::PType>();
663
1
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
1
                                        right_tmp;
666
1
                                auto right_src =
667
1
                                        column_right_ptr
668
1
                                                ->template get_value<Impl::DataTypeB::PType>();
669
1
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
1
                                column_result = Impl::constant_constant(
671
1
                                        left_tmp, right_tmp, type_left, type_right,
672
1
                                        max_and_multiplier.first, max_and_multiplier.second,
673
1
                                        type_result, check_overflow_for_decimal);
674
1
                                return true;
675
1
                            })) {
676
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
0
                                    type_to_string(res_data_type->get_primitive_type()));
679
0
                }
680
5
            }
681
18
        } else {
682
15
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
15
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
15
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
15
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
15
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
15
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
15
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
15
        }
690
691
18
        return ColumnConst::create(std::move(column_result), column_left->size());
692
33
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
617
13
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
13
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
13
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
13
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
13
        ColumnPtr column_result = nullptr;
623
624
13
        if constexpr (result_is_decimal) {
625
13
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
13
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
13
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
13
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
13
                                        type_left, type_right, type_result);
630
13
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
13
                                        left_tmp;
632
13
                                auto left_src =
633
13
                                        column_left_ptr
634
13
                                                ->template get_value<Impl::DataTypeA::PType>();
635
13
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
13
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
13
                                        right_tmp;
638
13
                                auto right_src =
639
13
                                        column_right_ptr
640
13
                                                ->template get_value<Impl::DataTypeB::PType>();
641
13
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
13
                                column_result = Impl::constant_constant(
643
13
                                        left_tmp, right_tmp, type_left, type_right,
644
13
                                        max_and_multiplier.first, max_and_multiplier.second,
645
13
                                        type_result, check_overflow_for_decimal);
646
13
                                return true;
647
13
                            })) {
648
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
0
                                    type_to_string(res_data_type->get_primitive_type()));
651
0
                }
652
            } else {
653
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
                                         DataTypeDecimal256>(
655
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
                                        type_left, type_right, type_result);
658
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
                                        left_tmp;
660
                                auto left_src =
661
                                        column_left_ptr
662
                                                ->template get_value<Impl::DataTypeA::PType>();
663
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
                                        right_tmp;
666
                                auto right_src =
667
                                        column_right_ptr
668
                                                ->template get_value<Impl::DataTypeB::PType>();
669
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
                                column_result = Impl::constant_constant(
671
                                        left_tmp, right_tmp, type_left, type_right,
672
                                        max_and_multiplier.first, max_and_multiplier.second,
673
                                        type_result, check_overflow_for_decimal);
674
                                return true;
675
                            })) {
676
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
                                    type_to_string(res_data_type->get_primitive_type()));
679
                }
680
            }
681
        } else {
682
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
        }
690
691
13
        return ColumnConst::create(std::move(column_result), column_left->size());
692
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
617
2
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
2
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
2
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
2
        ColumnPtr column_result = nullptr;
623
624
2
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
2
            } else {
653
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
2
                                         DataTypeDecimal256>(
655
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
2
                                        type_left, type_right, type_result);
658
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
2
                                        left_tmp;
660
2
                                auto left_src =
661
2
                                        column_left_ptr
662
2
                                                ->template get_value<Impl::DataTypeA::PType>();
663
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
2
                                        right_tmp;
666
2
                                auto right_src =
667
2
                                        column_right_ptr
668
2
                                                ->template get_value<Impl::DataTypeB::PType>();
669
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
2
                                column_result = Impl::constant_constant(
671
2
                                        left_tmp, right_tmp, type_left, type_right,
672
2
                                        max_and_multiplier.first, max_and_multiplier.second,
673
2
                                        type_result, check_overflow_for_decimal);
674
2
                                return true;
675
2
                            })) {
676
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
0
                                    type_to_string(res_data_type->get_primitive_type()));
679
0
                }
680
2
            }
681
        } else {
682
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
        }
690
691
2
        return ColumnConst::create(std::move(column_result), column_left->size());
692
2
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
617
2
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
2
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
2
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
2
        ColumnPtr column_result = nullptr;
623
624
2
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
2
            } else {
653
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
2
                                         DataTypeDecimal256>(
655
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
2
                                        type_left, type_right, type_result);
658
2
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
2
                                        left_tmp;
660
2
                                auto left_src =
661
2
                                        column_left_ptr
662
2
                                                ->template get_value<Impl::DataTypeA::PType>();
663
2
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
2
                                        right_tmp;
666
2
                                auto right_src =
667
2
                                        column_right_ptr
668
2
                                                ->template get_value<Impl::DataTypeB::PType>();
669
2
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
2
                                column_result = Impl::constant_constant(
671
2
                                        left_tmp, right_tmp, type_left, type_right,
672
2
                                        max_and_multiplier.first, max_and_multiplier.second,
673
2
                                        type_result, check_overflow_for_decimal);
674
2
                                return true;
675
2
                            })) {
676
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
0
                                    type_to_string(res_data_type->get_primitive_type()));
679
0
                }
680
2
            }
681
        } else {
682
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
        }
690
691
2
        return ColumnConst::create(std::move(column_result), column_left->size());
692
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
617
1
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
1
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
1
        ColumnPtr column_result = nullptr;
623
624
1
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
1
            } else {
653
1
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
1
                                         DataTypeDecimal256>(
655
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
1
                                        type_left, type_right, type_result);
658
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
1
                                        left_tmp;
660
1
                                auto left_src =
661
1
                                        column_left_ptr
662
1
                                                ->template get_value<Impl::DataTypeA::PType>();
663
1
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
1
                                        right_tmp;
666
1
                                auto right_src =
667
1
                                        column_right_ptr
668
1
                                                ->template get_value<Impl::DataTypeB::PType>();
669
1
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
1
                                column_result = Impl::constant_constant(
671
1
                                        left_tmp, right_tmp, type_left, type_right,
672
1
                                        max_and_multiplier.first, max_and_multiplier.second,
673
1
                                        type_result, check_overflow_for_decimal);
674
1
                                return true;
675
1
                            })) {
676
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
0
                                    type_to_string(res_data_type->get_primitive_type()));
679
0
                }
680
1
            }
681
        } else {
682
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
        }
690
691
1
        return ColumnConst::create(std::move(column_result), column_left->size());
692
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
617
2
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
2
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
2
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
2
        ColumnPtr column_result = nullptr;
623
624
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
            } else {
653
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
                                         DataTypeDecimal256>(
655
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
                                        type_left, type_right, type_result);
658
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
                                        left_tmp;
660
                                auto left_src =
661
                                        column_left_ptr
662
                                                ->template get_value<Impl::DataTypeA::PType>();
663
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
                                        right_tmp;
666
                                auto right_src =
667
                                        column_right_ptr
668
                                                ->template get_value<Impl::DataTypeB::PType>();
669
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
                                column_result = Impl::constant_constant(
671
                                        left_tmp, right_tmp, type_left, type_right,
672
                                        max_and_multiplier.first, max_and_multiplier.second,
673
                                        type_result, check_overflow_for_decimal);
674
                                return true;
675
                            })) {
676
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
                                    type_to_string(res_data_type->get_primitive_type()));
679
                }
680
            }
681
2
        } else {
682
2
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
2
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
2
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
2
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
2
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
2
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
2
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
2
        }
690
691
2
        return ColumnConst::create(std::move(column_result), column_left->size());
692
2
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
617
4
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
4
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
4
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
4
        ColumnPtr column_result = nullptr;
623
624
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
            } else {
653
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
                                         DataTypeDecimal256>(
655
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
                                        type_left, type_right, type_result);
658
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
                                        left_tmp;
660
                                auto left_src =
661
                                        column_left_ptr
662
                                                ->template get_value<Impl::DataTypeA::PType>();
663
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
                                        right_tmp;
666
                                auto right_src =
667
                                        column_right_ptr
668
                                                ->template get_value<Impl::DataTypeB::PType>();
669
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
                                column_result = Impl::constant_constant(
671
                                        left_tmp, right_tmp, type_left, type_right,
672
                                        max_and_multiplier.first, max_and_multiplier.second,
673
                                        type_result, check_overflow_for_decimal);
674
                                return true;
675
                            })) {
676
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
                                    type_to_string(res_data_type->get_primitive_type()));
679
                }
680
            }
681
4
        } else {
682
4
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
4
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
4
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
4
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
4
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
4
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
4
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
4
        }
690
691
4
        return ColumnConst::create(std::move(column_result), column_left->size());
692
4
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
617
4
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
4
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
4
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
4
        ColumnPtr column_result = nullptr;
623
624
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
            } else {
653
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
                                         DataTypeDecimal256>(
655
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
                                        type_left, type_right, type_result);
658
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
                                        left_tmp;
660
                                auto left_src =
661
                                        column_left_ptr
662
                                                ->template get_value<Impl::DataTypeA::PType>();
663
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
                                        right_tmp;
666
                                auto right_src =
667
                                        column_right_ptr
668
                                                ->template get_value<Impl::DataTypeB::PType>();
669
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
                                column_result = Impl::constant_constant(
671
                                        left_tmp, right_tmp, type_left, type_right,
672
                                        max_and_multiplier.first, max_and_multiplier.second,
673
                                        type_result, check_overflow_for_decimal);
674
                                return true;
675
                            })) {
676
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
                                    type_to_string(res_data_type->get_primitive_type()));
679
                }
680
            }
681
4
        } else {
682
4
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
4
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
4
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
4
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
4
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
4
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
4
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
4
        }
690
691
4
        return ColumnConst::create(std::move(column_result), column_left->size());
692
4
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE17constant_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
617
1
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
1
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
1
        ColumnPtr column_result = nullptr;
623
624
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
            } else {
653
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
                                         DataTypeDecimal256>(
655
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
                                        type_left, type_right, type_result);
658
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
                                        left_tmp;
660
                                auto left_src =
661
                                        column_left_ptr
662
                                                ->template get_value<Impl::DataTypeA::PType>();
663
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
                                        right_tmp;
666
                                auto right_src =
667
                                        column_right_ptr
668
                                                ->template get_value<Impl::DataTypeB::PType>();
669
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
                                column_result = Impl::constant_constant(
671
                                        left_tmp, right_tmp, type_left, type_right,
672
                                        max_and_multiplier.first, max_and_multiplier.second,
673
                                        type_result, check_overflow_for_decimal);
674
                                return true;
675
                            })) {
676
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
                                    type_to_string(res_data_type->get_primitive_type()));
679
                }
680
            }
681
1
        } else {
682
1
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
1
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
1
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
1
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
1
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
1
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
1
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
1
        }
690
691
1
        return ColumnConst::create(std::move(column_result), column_left->size());
692
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
617
4
                                DataTypePtr res_data_type, bool check_overflow_for_decimal) const {
618
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
619
4
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
620
4
        DCHECK(column_left_ptr != nullptr && column_right_ptr != nullptr);
621
622
4
        ColumnPtr column_result = nullptr;
623
624
        if constexpr (result_is_decimal) {
625
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
626
                if (!cast_type_to_either<DataTypeDecimalV2>(
627
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
628
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
629
                                        type_left, type_right, type_result);
630
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
631
                                        left_tmp;
632
                                auto left_src =
633
                                        column_left_ptr
634
                                                ->template get_value<Impl::DataTypeA::PType>();
635
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
636
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
637
                                        right_tmp;
638
                                auto right_src =
639
                                        column_right_ptr
640
                                                ->template get_value<Impl::DataTypeB::PType>();
641
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
642
                                column_result = Impl::constant_constant(
643
                                        left_tmp, right_tmp, type_left, type_right,
644
                                        max_and_multiplier.first, max_and_multiplier.second,
645
                                        type_result, check_overflow_for_decimal);
646
                                return true;
647
                            })) {
648
                    throw Exception(ErrorCode::INTERNAL_ERROR,
649
                                    "Wrong type. Expected: Decimal, Actually: {}",
650
                                    type_to_string(res_data_type->get_primitive_type()));
651
                }
652
            } else {
653
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
654
                                         DataTypeDecimal256>(
655
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
656
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
657
                                        type_left, type_right, type_result);
658
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType
659
                                        left_tmp;
660
                                auto left_src =
661
                                        column_left_ptr
662
                                                ->template get_value<Impl::DataTypeA::PType>();
663
                                std::memcpy(&left_tmp, &left_src, sizeof(left_src));
664
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType
665
                                        right_tmp;
666
                                auto right_src =
667
                                        column_right_ptr
668
                                                ->template get_value<Impl::DataTypeB::PType>();
669
                                std::memcpy(&right_tmp, &right_src, sizeof(right_src));
670
                                column_result = Impl::constant_constant(
671
                                        left_tmp, right_tmp, type_left, type_right,
672
                                        max_and_multiplier.first, max_and_multiplier.second,
673
                                        type_result, check_overflow_for_decimal);
674
                                return true;
675
                            })) {
676
                    throw Exception(ErrorCode::INTERNAL_ERROR,
677
                                    "Wrong type. Expected: Decimal, Actually: {}",
678
                                    type_to_string(res_data_type->get_primitive_type()));
679
                }
680
            }
681
4
        } else {
682
4
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType left_tmp;
683
4
            auto left_src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
684
4
            std::memcpy(&left_tmp, &left_src, sizeof(left_src));
685
4
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType right_tmp;
686
4
            auto right_src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
687
4
            std::memcpy(&right_tmp, &right_src, sizeof(right_src));
688
4
            column_result = Impl::constant_constant(left_tmp, right_tmp);
689
4
        }
690
691
4
        return ColumnConst::create(std::move(column_result), column_left->size());
692
4
    }
693
694
    ColumnPtr vector_constant(ColumnPtr column_left, ColumnPtr column_right,
695
                              const typename Impl::DataTypeA* type_left,
696
                              const typename Impl::DataTypeB* type_right, DataTypePtr res_data_type,
697
14.5k
                              bool check_overflow_for_decimal) const {
698
14.5k
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
14.5k
        DCHECK(column_right_ptr != nullptr);
700
701
14.5k
        ColumnPtr res = nullptr;
702
14.5k
        if constexpr (result_is_decimal) {
703
376
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
1
                                        type_left, type_right, type_result);
708
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
1
                                auto src = column_right_ptr
710
1
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
1
                                std::memcpy(&tmp, &src, sizeof(src));
712
1
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
1
                                                            type_right, max_and_multiplier.first,
714
1
                                                            max_and_multiplier.second, type_result,
715
1
                                                            check_overflow_for_decimal);
716
1
                                return true;
717
1
                            })) {
718
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
0
                                    type_to_string(res_data_type->get_primitive_type()));
721
0
                }
722
375
            } else {
723
375
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
375
                                         DataTypeDecimal256>(
725
375
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
375
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
375
                                        type_left, type_right, type_result);
728
375
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
375
                                auto src = column_right_ptr
730
375
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
375
                                std::memcpy(&tmp, &src, sizeof(src));
732
375
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
375
                                                            type_right, max_and_multiplier.first,
734
375
                                                            max_and_multiplier.second, type_result,
735
375
                                                            check_overflow_for_decimal);
736
375
                                return true;
737
375
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
725
12
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
12
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
12
                                        type_left, type_right, type_result);
728
12
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
12
                                auto src = column_right_ptr
730
12
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
12
                                std::memcpy(&tmp, &src, sizeof(src));
732
12
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
12
                                                            type_right, max_and_multiplier.first,
734
12
                                                            max_and_multiplier.second, type_result,
735
12
                                                            check_overflow_for_decimal);
736
12
                                return true;
737
12
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Line
Count
Source
725
22
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
22
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
22
                                        type_left, type_right, type_result);
728
22
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
22
                                auto src = column_right_ptr
730
22
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
22
                                std::memcpy(&tmp, &src, sizeof(src));
732
22
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
22
                                                            type_right, max_and_multiplier.first,
734
22
                                                            max_and_multiplier.second, type_result,
735
22
                                                            check_overflow_for_decimal);
736
22
                                return true;
737
22
                            })) {
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
725
57
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
57
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
57
                                        type_left, type_right, type_result);
728
57
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
57
                                auto src = column_right_ptr
730
57
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
57
                                std::memcpy(&tmp, &src, sizeof(src));
732
57
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
57
                                                            type_right, max_and_multiplier.first,
734
57
                                                            max_and_multiplier.second, type_result,
735
57
                                                            check_overflow_for_decimal);
736
57
                                return true;
737
57
                            })) {
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
725
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
2
                                        type_left, type_right, type_result);
728
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
2
                                auto src = column_right_ptr
730
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
2
                                std::memcpy(&tmp, &src, sizeof(src));
732
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
2
                                                            type_right, max_and_multiplier.first,
734
2
                                                            max_and_multiplier.second, type_result,
735
2
                                                            check_overflow_for_decimal);
736
2
                                return true;
737
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
725
278
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
278
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
278
                                        type_left, type_right, type_result);
728
278
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
278
                                auto src = column_right_ptr
730
278
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
278
                                std::memcpy(&tmp, &src, sizeof(src));
732
278
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
278
                                                            type_right, max_and_multiplier.first,
734
278
                                                            max_and_multiplier.second, type_result,
735
278
                                                            check_overflow_for_decimal);
736
278
                                return true;
737
278
                            })) {
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
725
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
2
                                        type_left, type_right, type_result);
728
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
2
                                auto src = column_right_ptr
730
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
2
                                std::memcpy(&tmp, &src, sizeof(src));
732
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
2
                                                            type_right, max_and_multiplier.first,
734
2
                                                            max_and_multiplier.second, type_result,
735
2
                                                            check_overflow_for_decimal);
736
2
                                return true;
737
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
725
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
2
                                        type_left, type_right, type_result);
728
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
2
                                auto src = column_right_ptr
730
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
2
                                std::memcpy(&tmp, &src, sizeof(src));
732
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
2
                                                            type_right, max_and_multiplier.first,
734
2
                                                            max_and_multiplier.second, type_result,
735
2
                                                            check_overflow_for_decimal);
736
2
                                return true;
737
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_
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
375
            }
743
14.1k
        } else {
744
14.1k
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
14.1k
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
14.1k
            std::memcpy(&tmp, &src, sizeof(src));
747
14.1k
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
14.1k
        }
749
376
        return res;
750
14.5k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
697
1
                              bool check_overflow_for_decimal) const {
698
1
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
1
        DCHECK(column_right_ptr != nullptr);
700
701
1
        ColumnPtr res = nullptr;
702
1
        if constexpr (result_is_decimal) {
703
1
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
1
                                        type_left, type_right, type_result);
708
1
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
1
                                auto src = column_right_ptr
710
1
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
1
                                std::memcpy(&tmp, &src, sizeof(src));
712
1
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
1
                                                            type_right, max_and_multiplier.first,
714
1
                                                            max_and_multiplier.second, type_result,
715
1
                                                            check_overflow_for_decimal);
716
1
                                return true;
717
1
                            })) {
718
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
0
                                    type_to_string(res_data_type->get_primitive_type()));
721
0
                }
722
            } else {
723
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
                                         DataTypeDecimal256>(
725
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
                                        type_left, type_right, type_result);
728
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
                                auto src = column_right_ptr
730
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
                                std::memcpy(&tmp, &src, sizeof(src));
732
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
                                                            type_right, max_and_multiplier.first,
734
                                                            max_and_multiplier.second, type_result,
735
                                                            check_overflow_for_decimal);
736
                                return true;
737
                            })) {
738
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
                                    type_to_string(res_data_type->get_primitive_type()));
741
                }
742
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
1
        return res;
750
1
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
697
34
                              bool check_overflow_for_decimal) const {
698
34
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
34
        DCHECK(column_right_ptr != nullptr);
700
701
34
        ColumnPtr res = nullptr;
702
34
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
34
            } else {
723
34
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
34
                                         DataTypeDecimal256>(
725
34
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
34
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
34
                                        type_left, type_right, type_result);
728
34
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
34
                                auto src = column_right_ptr
730
34
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
34
                                std::memcpy(&tmp, &src, sizeof(src));
732
34
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
34
                                                            type_right, max_and_multiplier.first,
734
34
                                                            max_and_multiplier.second, type_result,
735
34
                                                            check_overflow_for_decimal);
736
34
                                return true;
737
34
                            })) {
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
34
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
34
        return res;
750
34
    }
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
697
57
                              bool check_overflow_for_decimal) const {
698
57
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
57
        DCHECK(column_right_ptr != nullptr);
700
701
57
        ColumnPtr res = nullptr;
702
57
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
57
            } else {
723
57
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
57
                                         DataTypeDecimal256>(
725
57
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
57
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
57
                                        type_left, type_right, type_result);
728
57
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
57
                                auto src = column_right_ptr
730
57
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
57
                                std::memcpy(&tmp, &src, sizeof(src));
732
57
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
57
                                                            type_right, max_and_multiplier.first,
734
57
                                                            max_and_multiplier.second, type_result,
735
57
                                                            check_overflow_for_decimal);
736
57
                                return true;
737
57
                            })) {
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
57
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
57
        return res;
750
57
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
697
2
                              bool check_overflow_for_decimal) const {
698
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
2
        DCHECK(column_right_ptr != nullptr);
700
701
2
        ColumnPtr res = nullptr;
702
2
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
2
            } else {
723
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
2
                                         DataTypeDecimal256>(
725
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
2
                                        type_left, type_right, type_result);
728
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
2
                                auto src = column_right_ptr
730
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
2
                                std::memcpy(&tmp, &src, sizeof(src));
732
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
2
                                                            type_right, max_and_multiplier.first,
734
2
                                                            max_and_multiplier.second, type_result,
735
2
                                                            check_overflow_for_decimal);
736
2
                                return true;
737
2
                            })) {
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
2
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
2
        return res;
750
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
697
278
                              bool check_overflow_for_decimal) const {
698
278
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
278
        DCHECK(column_right_ptr != nullptr);
700
701
278
        ColumnPtr res = nullptr;
702
278
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
278
            } else {
723
278
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
278
                                         DataTypeDecimal256>(
725
278
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
278
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
278
                                        type_left, type_right, type_result);
728
278
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
278
                                auto src = column_right_ptr
730
278
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
278
                                std::memcpy(&tmp, &src, sizeof(src));
732
278
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
278
                                                            type_right, max_and_multiplier.first,
734
278
                                                            max_and_multiplier.second, type_result,
735
278
                                                            check_overflow_for_decimal);
736
278
                                return true;
737
278
                            })) {
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
278
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
278
        return res;
750
278
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
697
2
                              bool check_overflow_for_decimal) const {
698
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
2
        DCHECK(column_right_ptr != nullptr);
700
701
2
        ColumnPtr res = nullptr;
702
2
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
2
            } else {
723
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
2
                                         DataTypeDecimal256>(
725
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
2
                                        type_left, type_right, type_result);
728
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
2
                                auto src = column_right_ptr
730
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
2
                                std::memcpy(&tmp, &src, sizeof(src));
732
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
2
                                                            type_right, max_and_multiplier.first,
734
2
                                                            max_and_multiplier.second, type_result,
735
2
                                                            check_overflow_for_decimal);
736
2
                                return true;
737
2
                            })) {
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
2
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
2
        return res;
750
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
697
2
                              bool check_overflow_for_decimal) const {
698
2
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
2
        DCHECK(column_right_ptr != nullptr);
700
701
2
        ColumnPtr res = nullptr;
702
2
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
2
            } else {
723
2
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
2
                                         DataTypeDecimal256>(
725
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
2
                                        type_left, type_right, type_result);
728
2
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
2
                                auto src = column_right_ptr
730
2
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
2
                                std::memcpy(&tmp, &src, sizeof(src));
732
2
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
2
                                                            type_right, max_and_multiplier.first,
734
2
                                                            max_and_multiplier.second, type_result,
735
2
                                                            check_overflow_for_decimal);
736
2
                                return true;
737
2
                            })) {
738
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
0
                                    type_to_string(res_data_type->get_primitive_type()));
741
0
                }
742
2
            }
743
        } else {
744
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
            std::memcpy(&tmp, &src, sizeof(src));
747
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
        }
749
2
        return res;
750
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
Unexecuted instantiation: _ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
697
13.9k
                              bool check_overflow_for_decimal) const {
698
13.9k
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
13.9k
        DCHECK(column_right_ptr != nullptr);
700
701
13.9k
        ColumnPtr res = nullptr;
702
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
            } else {
723
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
                                         DataTypeDecimal256>(
725
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
                                        type_left, type_right, type_result);
728
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
                                auto src = column_right_ptr
730
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
                                std::memcpy(&tmp, &src, sizeof(src));
732
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
                                                            type_right, max_and_multiplier.first,
734
                                                            max_and_multiplier.second, type_result,
735
                                                            check_overflow_for_decimal);
736
                                return true;
737
                            })) {
738
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
                                    type_to_string(res_data_type->get_primitive_type()));
741
                }
742
            }
743
13.9k
        } else {
744
13.9k
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
13.9k
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
13.9k
            std::memcpy(&tmp, &src, sizeof(src));
747
13.9k
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
13.9k
        }
749
13.9k
        return res;
750
13.9k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE15vector_constantENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
697
6
                              bool check_overflow_for_decimal) const {
698
6
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
6
        DCHECK(column_right_ptr != nullptr);
700
701
6
        ColumnPtr res = nullptr;
702
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
            } else {
723
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
                                         DataTypeDecimal256>(
725
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
                                        type_left, type_right, type_result);
728
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
                                auto src = column_right_ptr
730
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
                                std::memcpy(&tmp, &src, sizeof(src));
732
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
                                                            type_right, max_and_multiplier.first,
734
                                                            max_and_multiplier.second, type_result,
735
                                                            check_overflow_for_decimal);
736
                                return true;
737
                            })) {
738
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
                                    type_to_string(res_data_type->get_primitive_type()));
741
                }
742
            }
743
6
        } else {
744
6
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
6
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
6
            std::memcpy(&tmp, &src, sizeof(src));
747
6
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
6
        }
749
6
        return res;
750
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
697
254
                              bool check_overflow_for_decimal) const {
698
254
        const auto* column_right_ptr = assert_cast<const ColumnConst*>(column_right.get());
699
254
        DCHECK(column_right_ptr != nullptr);
700
701
254
        ColumnPtr res = nullptr;
702
        if constexpr (result_is_decimal) {
703
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
704
                if (!cast_type_to_either<DataTypeDecimalV2>(
705
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
706
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
707
                                        type_left, type_right, type_result);
708
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
709
                                auto src = column_right_ptr
710
                                                   ->template get_value<Impl::DataTypeB::PType>();
711
                                std::memcpy(&tmp, &src, sizeof(src));
712
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
713
                                                            type_right, max_and_multiplier.first,
714
                                                            max_and_multiplier.second, type_result,
715
                                                            check_overflow_for_decimal);
716
                                return true;
717
                            })) {
718
                    throw Exception(ErrorCode::INTERNAL_ERROR,
719
                                    "Wrong type. Expected: Decimal, Actually: {}",
720
                                    type_to_string(res_data_type->get_primitive_type()));
721
                }
722
            } else {
723
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
724
                                         DataTypeDecimal256>(
725
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
726
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
727
                                        type_left, type_right, type_result);
728
                                typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
729
                                auto src = column_right_ptr
730
                                                   ->template get_value<Impl::DataTypeB::PType>();
731
                                std::memcpy(&tmp, &src, sizeof(src));
732
                                res = Impl::vector_constant(column_left->get_ptr(), tmp, type_left,
733
                                                            type_right, max_and_multiplier.first,
734
                                                            max_and_multiplier.second, type_result,
735
                                                            check_overflow_for_decimal);
736
                                return true;
737
                            })) {
738
                    throw Exception(ErrorCode::INTERNAL_ERROR,
739
                                    "Wrong type. Expected: Decimal, Actually: {}",
740
                                    type_to_string(res_data_type->get_primitive_type()));
741
                }
742
            }
743
254
        } else {
744
254
            typename PrimitiveTypeTraits<Impl::DataTypeB::PType>::CppType tmp;
745
254
            auto src = column_right_ptr->template get_value<Impl::DataTypeB::PType>();
746
254
            std::memcpy(&tmp, &src, sizeof(src));
747
254
            res = Impl::vector_constant(column_left->get_ptr(), tmp);
748
254
        }
749
254
        return res;
750
254
    }
751
752
    ColumnPtr constant_vector(ColumnPtr column_left, ColumnPtr column_right,
753
                              const typename Impl::DataTypeA* type_left,
754
                              const typename Impl::DataTypeB* type_right, DataTypePtr res_data_type,
755
81
                              bool check_overflow_for_decimal) const {
756
81
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
81
        DCHECK(column_left_ptr != nullptr);
758
759
81
        ColumnPtr res = nullptr;
760
81
        if constexpr (result_is_decimal) {
761
81
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
1
                                        type_left, type_right, type_result);
766
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
1
                                auto src = column_left_ptr
768
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
1
                                std::memcpy(&tmp, &src, sizeof(src));
770
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
1
                                                            type_right, max_and_multiplier.first,
772
1
                                                            max_and_multiplier.second, type_result,
773
1
                                                            check_overflow_for_decimal);
774
1
                                return true;
775
1
                            })) {
776
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
0
                                    type_to_string(res_data_type->get_primitive_type()));
779
0
                }
780
80
            } else {
781
80
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
80
                                         DataTypeDecimal256>(
783
80
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
80
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
80
                                        type_left, type_right, type_result);
786
80
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
80
                                auto src = column_left_ptr
788
80
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
80
                                std::memcpy(&tmp, &src, sizeof(src));
790
80
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
80
                                                            type_right, max_and_multiplier.first,
792
80
                                                            max_and_multiplier.second, type_result,
793
80
                                                            check_overflow_for_decimal);
794
80
                                return true;
795
80
                            })) {
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
783
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
5
                                        type_left, type_right, type_result);
786
5
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
5
                                auto src = column_left_ptr
788
5
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
5
                                std::memcpy(&tmp, &src, sizeof(src));
790
5
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
5
                                                            type_right, max_and_multiplier.first,
792
5
                                                            max_and_multiplier.second, type_result,
793
5
                                                            check_overflow_for_decimal);
794
5
                                return true;
795
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
783
67
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
67
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
67
                                        type_left, type_right, type_result);
786
67
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
67
                                auto src = column_left_ptr
788
67
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
67
                                std::memcpy(&tmp, &src, sizeof(src));
790
67
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
67
                                                            type_right, max_and_multiplier.first,
792
67
                                                            max_and_multiplier.second, type_result,
793
67
                                                            check_overflow_for_decimal);
794
67
                                return true;
795
67
                            })) {
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
783
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
4
                                        type_left, type_right, type_result);
786
4
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
4
                                auto src = column_left_ptr
788
4
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
4
                                std::memcpy(&tmp, &src, sizeof(src));
790
4
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
4
                                                            type_right, max_and_multiplier.first,
792
4
                                                            max_and_multiplier.second, type_result,
793
4
                                                            check_overflow_for_decimal);
794
4
                                return true;
795
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
783
3
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
3
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
3
                                        type_left, type_right, type_result);
786
3
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
3
                                auto src = column_left_ptr
788
3
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
3
                                std::memcpy(&tmp, &src, sizeof(src));
790
3
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
3
                                                            type_right, max_and_multiplier.first,
792
3
                                                            max_and_multiplier.second, type_result,
793
3
                                                            check_overflow_for_decimal);
794
3
                                return true;
795
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
783
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
1
                                        type_left, type_right, type_result);
786
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
1
                                auto src = column_left_ptr
788
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
1
                                std::memcpy(&tmp, &src, sizeof(src));
790
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
1
                                                            type_right, max_and_multiplier.first,
792
1
                                                            max_and_multiplier.second, type_result,
793
1
                                                            check_overflow_for_decimal);
794
1
                                return true;
795
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_
796
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
0
                                    type_to_string(res_data_type->get_primitive_type()));
799
0
                }
800
80
            }
801
81
        } else {
802
0
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
0
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
0
            std::memcpy(&tmp, &src, sizeof(src));
805
0
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
0
        }
807
81
        return res;
808
81
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
755
1
                              bool check_overflow_for_decimal) const {
756
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
1
        DCHECK(column_left_ptr != nullptr);
758
759
1
        ColumnPtr res = nullptr;
760
1
        if constexpr (result_is_decimal) {
761
1
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
1
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
1
                                        type_left, type_right, type_result);
766
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
1
                                auto src = column_left_ptr
768
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
1
                                std::memcpy(&tmp, &src, sizeof(src));
770
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
1
                                                            type_right, max_and_multiplier.first,
772
1
                                                            max_and_multiplier.second, type_result,
773
1
                                                            check_overflow_for_decimal);
774
1
                                return true;
775
1
                            })) {
776
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
0
                                    type_to_string(res_data_type->get_primitive_type()));
779
0
                }
780
            } else {
781
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
                                         DataTypeDecimal256>(
783
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
                                        type_left, type_right, type_result);
786
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
                                auto src = column_left_ptr
788
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
                                std::memcpy(&tmp, &src, sizeof(src));
790
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
                                                            type_right, max_and_multiplier.first,
792
                                                            max_and_multiplier.second, type_result,
793
                                                            check_overflow_for_decimal);
794
                                return true;
795
                            })) {
796
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
                                    type_to_string(res_data_type->get_primitive_type()));
799
                }
800
            }
801
        } else {
802
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
            std::memcpy(&tmp, &src, sizeof(src));
805
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
        }
807
1
        return res;
808
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
755
5
                              bool check_overflow_for_decimal) const {
756
5
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
5
        DCHECK(column_left_ptr != nullptr);
758
759
5
        ColumnPtr res = nullptr;
760
5
        if constexpr (result_is_decimal) {
761
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
                                        type_left, type_right, type_result);
766
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
                                auto src = column_left_ptr
768
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
                                std::memcpy(&tmp, &src, sizeof(src));
770
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
                                                            type_right, max_and_multiplier.first,
772
                                                            max_and_multiplier.second, type_result,
773
                                                            check_overflow_for_decimal);
774
                                return true;
775
                            })) {
776
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
                                    type_to_string(res_data_type->get_primitive_type()));
779
                }
780
5
            } else {
781
5
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
5
                                         DataTypeDecimal256>(
783
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
5
                                        type_left, type_right, type_result);
786
5
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
5
                                auto src = column_left_ptr
788
5
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
5
                                std::memcpy(&tmp, &src, sizeof(src));
790
5
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
5
                                                            type_right, max_and_multiplier.first,
792
5
                                                            max_and_multiplier.second, type_result,
793
5
                                                            check_overflow_for_decimal);
794
5
                                return true;
795
5
                            })) {
796
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
0
                                    type_to_string(res_data_type->get_primitive_type()));
799
0
                }
800
5
            }
801
        } else {
802
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
            std::memcpy(&tmp, &src, sizeof(src));
805
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
        }
807
5
        return res;
808
5
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
755
67
                              bool check_overflow_for_decimal) const {
756
67
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
67
        DCHECK(column_left_ptr != nullptr);
758
759
67
        ColumnPtr res = nullptr;
760
67
        if constexpr (result_is_decimal) {
761
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
                                        type_left, type_right, type_result);
766
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
                                auto src = column_left_ptr
768
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
                                std::memcpy(&tmp, &src, sizeof(src));
770
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
                                                            type_right, max_and_multiplier.first,
772
                                                            max_and_multiplier.second, type_result,
773
                                                            check_overflow_for_decimal);
774
                                return true;
775
                            })) {
776
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
                                    type_to_string(res_data_type->get_primitive_type()));
779
                }
780
67
            } else {
781
67
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
67
                                         DataTypeDecimal256>(
783
67
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
67
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
67
                                        type_left, type_right, type_result);
786
67
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
67
                                auto src = column_left_ptr
788
67
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
67
                                std::memcpy(&tmp, &src, sizeof(src));
790
67
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
67
                                                            type_right, max_and_multiplier.first,
792
67
                                                            max_and_multiplier.second, type_result,
793
67
                                                            check_overflow_for_decimal);
794
67
                                return true;
795
67
                            })) {
796
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
0
                                    type_to_string(res_data_type->get_primitive_type()));
799
0
                }
800
67
            }
801
        } else {
802
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
            std::memcpy(&tmp, &src, sizeof(src));
805
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
        }
807
67
        return res;
808
67
    }
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
755
4
                              bool check_overflow_for_decimal) const {
756
4
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
4
        DCHECK(column_left_ptr != nullptr);
758
759
4
        ColumnPtr res = nullptr;
760
4
        if constexpr (result_is_decimal) {
761
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
                                        type_left, type_right, type_result);
766
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
                                auto src = column_left_ptr
768
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
                                std::memcpy(&tmp, &src, sizeof(src));
770
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
                                                            type_right, max_and_multiplier.first,
772
                                                            max_and_multiplier.second, type_result,
773
                                                            check_overflow_for_decimal);
774
                                return true;
775
                            })) {
776
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
                                    type_to_string(res_data_type->get_primitive_type()));
779
                }
780
4
            } else {
781
4
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
4
                                         DataTypeDecimal256>(
783
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
4
                                        type_left, type_right, type_result);
786
4
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
4
                                auto src = column_left_ptr
788
4
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
4
                                std::memcpy(&tmp, &src, sizeof(src));
790
4
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
4
                                                            type_right, max_and_multiplier.first,
792
4
                                                            max_and_multiplier.second, type_result,
793
4
                                                            check_overflow_for_decimal);
794
4
                                return true;
795
4
                            })) {
796
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
0
                                    type_to_string(res_data_type->get_primitive_type()));
799
0
                }
800
4
            }
801
        } else {
802
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
            std::memcpy(&tmp, &src, sizeof(src));
805
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
        }
807
4
        return res;
808
4
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
755
3
                              bool check_overflow_for_decimal) const {
756
3
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
3
        DCHECK(column_left_ptr != nullptr);
758
759
3
        ColumnPtr res = nullptr;
760
3
        if constexpr (result_is_decimal) {
761
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
                                        type_left, type_right, type_result);
766
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
                                auto src = column_left_ptr
768
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
                                std::memcpy(&tmp, &src, sizeof(src));
770
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
                                                            type_right, max_and_multiplier.first,
772
                                                            max_and_multiplier.second, type_result,
773
                                                            check_overflow_for_decimal);
774
                                return true;
775
                            })) {
776
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
                                    type_to_string(res_data_type->get_primitive_type()));
779
                }
780
3
            } else {
781
3
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
3
                                         DataTypeDecimal256>(
783
3
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
3
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
3
                                        type_left, type_right, type_result);
786
3
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
3
                                auto src = column_left_ptr
788
3
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
3
                                std::memcpy(&tmp, &src, sizeof(src));
790
3
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
3
                                                            type_right, max_and_multiplier.first,
792
3
                                                            max_and_multiplier.second, type_result,
793
3
                                                            check_overflow_for_decimal);
794
3
                                return true;
795
3
                            })) {
796
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
0
                                    type_to_string(res_data_type->get_primitive_type()));
799
0
                }
800
3
            }
801
        } else {
802
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
            std::memcpy(&tmp, &src, sizeof(src));
805
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
        }
807
3
        return res;
808
3
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE15constant_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
755
1
                              bool check_overflow_for_decimal) const {
756
1
        const auto* column_left_ptr = assert_cast<const ColumnConst*>(column_left.get());
757
1
        DCHECK(column_left_ptr != nullptr);
758
759
1
        ColumnPtr res = nullptr;
760
1
        if constexpr (result_is_decimal) {
761
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
762
                if (!cast_type_to_either<DataTypeDecimalV2>(
763
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
764
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
765
                                        type_left, type_right, type_result);
766
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
767
                                auto src = column_left_ptr
768
                                                   ->template get_value<Impl::DataTypeA::PType>();
769
                                std::memcpy(&tmp, &src, sizeof(src));
770
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
771
                                                            type_right, max_and_multiplier.first,
772
                                                            max_and_multiplier.second, type_result,
773
                                                            check_overflow_for_decimal);
774
                                return true;
775
                            })) {
776
                    throw Exception(ErrorCode::INTERNAL_ERROR,
777
                                    "Wrong type. Expected: Decimal, Actually: {}",
778
                                    type_to_string(res_data_type->get_primitive_type()));
779
                }
780
1
            } else {
781
1
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
782
1
                                         DataTypeDecimal256>(
783
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
784
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
785
1
                                        type_left, type_right, type_result);
786
1
                                typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
787
1
                                auto src = column_left_ptr
788
1
                                                   ->template get_value<Impl::DataTypeA::PType>();
789
1
                                std::memcpy(&tmp, &src, sizeof(src));
790
1
                                res = Impl::constant_vector(tmp, column_right->get_ptr(), type_left,
791
1
                                                            type_right, max_and_multiplier.first,
792
1
                                                            max_and_multiplier.second, type_result,
793
1
                                                            check_overflow_for_decimal);
794
1
                                return true;
795
1
                            })) {
796
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
797
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
798
0
                                    type_to_string(res_data_type->get_primitive_type()));
799
0
                }
800
1
            }
801
        } else {
802
            typename PrimitiveTypeTraits<Impl::DataTypeA::PType>::CppType tmp;
803
            auto src = column_left_ptr->template get_value<Impl::DataTypeA::PType>();
804
            std::memcpy(&tmp, &src, sizeof(src));
805
            res = Impl::constant_vector(tmp, column_right->get_ptr());
806
        }
807
1
        return res;
808
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
809
810
    ColumnPtr vector_vector(ColumnPtr column_left, ColumnPtr column_right,
811
                            const typename Impl::DataTypeA* type_left,
812
                            const typename Impl::DataTypeB* type_right, DataTypePtr res_data_type,
813
18.0k
                            bool check_overflow_for_decimal) const {
814
18.0k
        ColumnPtr res = nullptr;
815
18.0k
        if constexpr (result_is_decimal) {
816
13.8k
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
154
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
154
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
154
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
154
                                        type_left, type_right, type_result);
821
154
                                res = Impl::vector_vector(column_left->get_ptr(),
822
154
                                                          column_right->get_ptr(), type_left,
823
154
                                                          type_right, max_and_multiplier.first,
824
154
                                                          max_and_multiplier.second, type_result,
825
154
                                                          check_overflow_for_decimal);
826
154
                                return true;
827
154
                            })) {
828
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
0
                                    type_to_string(res_data_type->get_primitive_type()));
831
0
                }
832
13.7k
            } else {
833
13.7k
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
13.7k
                                         DataTypeDecimal256>(
835
13.7k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
13.7k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
13.7k
                                        type_left, type_right, type_result);
838
13.7k
                                res = Impl::vector_vector(column_left->get_ptr(),
839
13.7k
                                                          column_right->get_ptr(), type_left,
840
13.7k
                                                          type_right, max_and_multiplier.first,
841
13.7k
                                                          max_and_multiplier.second, type_result,
842
13.7k
                                                          check_overflow_for_decimal);
843
13.7k
                                return true;
844
13.7k
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clISB_EEDaSK_
Line
Count
Source
835
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
2
                                        type_left, type_right, type_result);
838
2
                                res = Impl::vector_vector(column_left->get_ptr(),
839
2
                                                          column_right->get_ptr(), type_left,
840
2
                                                          type_right, max_and_multiplier.first,
841
2
                                                          max_and_multiplier.second, type_result,
842
2
                                                          check_overflow_for_decimal);
843
2
                                return true;
844
2
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_29EEEEEDaSK_
Line
Count
Source
835
26
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
26
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
26
                                        type_left, type_right, type_result);
838
26
                                res = Impl::vector_vector(column_left->get_ptr(),
839
26
                                                          column_right->get_ptr(), type_left,
840
26
                                                          type_right, max_and_multiplier.first,
841
26
                                                          max_and_multiplier.second, type_result,
842
26
                                                          check_overflow_for_decimal);
843
26
                                return true;
844
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
835
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
2
                                        type_left, type_right, type_result);
838
2
                                res = Impl::vector_vector(column_left->get_ptr(),
839
2
                                                          column_right->get_ptr(), type_left,
840
2
                                                          type_right, max_and_multiplier.first,
841
2
                                                          max_and_multiplier.second, type_result,
842
2
                                                          check_overflow_for_decimal);
843
2
                                return true;
844
2
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Line
Count
Source
835
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
4
                                        type_left, type_right, type_result);
838
4
                                res = Impl::vector_vector(column_left->get_ptr(),
839
4
                                                          column_right->get_ptr(), type_left,
840
4
                                                          type_right, max_and_multiplier.first,
841
4
                                                          max_and_multiplier.second, type_result,
842
4
                                                          check_overflow_for_decimal);
843
4
                                return true;
844
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
835
45
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
45
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
45
                                        type_left, type_right, type_result);
838
45
                                res = Impl::vector_vector(column_left->get_ptr(),
839
45
                                                          column_right->get_ptr(), type_left,
840
45
                                                          type_right, max_and_multiplier.first,
841
45
                                                          max_and_multiplier.second, type_result,
842
45
                                                          check_overflow_for_decimal);
843
45
                                return true;
844
45
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Line
Count
Source
835
3
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
3
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
3
                                        type_left, type_right, type_result);
838
3
                                res = Impl::vector_vector(column_left->get_ptr(),
839
3
                                                          column_right->get_ptr(), type_left,
840
3
                                                          type_right, max_and_multiplier.first,
841
3
                                                          max_and_multiplier.second, type_result,
842
3
                                                          check_overflow_for_decimal);
843
3
                                return true;
844
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
835
1
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
1
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
1
                                        type_left, type_right, type_result);
838
1
                                res = Impl::vector_vector(column_left->get_ptr(),
839
1
                                                          column_right->get_ptr(), type_left,
840
1
                                                          type_right, max_and_multiplier.first,
841
1
                                                          max_and_multiplier.second, type_result,
842
1
                                                          check_overflow_for_decimal);
843
1
                                return true;
844
1
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_28EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_30EEEEEDaSN_
Line
Count
Source
835
5
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
5
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
5
                                        type_left, type_right, type_result);
838
5
                                res = Impl::vector_vector(column_left->get_ptr(),
839
5
                                                          column_right->get_ptr(), type_left,
840
5
                                                          type_right, max_and_multiplier.first,
841
5
                                                          max_and_multiplier.second, type_result,
842
5
                                                          check_overflow_for_decimal);
843
5
                                return true;
844
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
835
8.46k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
8.46k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
8.46k
                                        type_left, type_right, type_result);
838
8.46k
                                res = Impl::vector_vector(column_left->get_ptr(),
839
8.46k
                                                          column_right->get_ptr(), type_left,
840
8.46k
                                                          type_right, max_and_multiplier.first,
841
8.46k
                                                          max_and_multiplier.second, type_result,
842
8.46k
                                                          check_overflow_for_decimal);
843
8.46k
                                return true;
844
8.46k
                            })) {
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
835
9
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
9
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
9
                                        type_left, type_right, type_result);
838
9
                                res = Impl::vector_vector(column_left->get_ptr(),
839
9
                                                          column_right->get_ptr(), type_left,
840
9
                                                          type_right, max_and_multiplier.first,
841
9
                                                          max_and_multiplier.second, type_result,
842
9
                                                          check_overflow_for_decimal);
843
9
                                return true;
844
9
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSN_
Line
Count
Source
835
2
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
2
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
2
                                        type_left, type_right, type_result);
838
2
                                res = Impl::vector_vector(column_left->get_ptr(),
839
2
                                                          column_right->get_ptr(), type_left,
840
2
                                                          type_right, max_and_multiplier.first,
841
2
                                                          max_and_multiplier.second, type_result,
842
2
                                                          check_overflow_for_decimal);
843
2
                                return true;
844
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
835
56
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
56
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
56
                                        type_left, type_right, type_result);
838
56
                                res = Impl::vector_vector(column_left->get_ptr(),
839
56
                                                          column_right->get_ptr(), type_left,
840
56
                                                          type_right, max_and_multiplier.first,
841
56
                                                          max_and_multiplier.second, type_result,
842
56
                                                          check_overflow_for_decimal);
843
56
                                return true;
844
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
835
4.89k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
4.89k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
4.89k
                                        type_left, type_right, type_result);
838
4.89k
                                res = Impl::vector_vector(column_left->get_ptr(),
839
4.89k
                                                          column_right->get_ptr(), type_left,
840
4.89k
                                                          type_right, max_and_multiplier.first,
841
4.89k
                                                          max_and_multiplier.second, type_result,
842
4.89k
                                                          check_overflow_for_decimal);
843
4.89k
                                return true;
844
4.89k
                            })) {
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
835
90
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
90
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
90
                                        type_left, type_right, type_result);
838
90
                                res = Impl::vector_vector(column_left->get_ptr(),
839
90
                                                          column_right->get_ptr(), type_left,
840
90
                                                          type_right, max_and_multiplier.first,
841
90
                                                          max_and_multiplier.second, type_result,
842
90
                                                          check_overflow_for_decimal);
843
90
                                return true;
844
90
                            })) {
_ZZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEbENKUlRKT_E_clINSA_ILS2_35EEEEEDaSK_
Line
Count
Source
835
78
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
78
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
78
                                        type_left, type_right, type_result);
838
78
                                res = Impl::vector_vector(column_left->get_ptr(),
839
78
                                                          column_right->get_ptr(), type_left,
840
78
                                                          type_right, max_and_multiplier.first,
841
78
                                                          max_and_multiplier.second, type_result,
842
78
                                                          check_overflow_for_decimal);
843
78
                                return true;
844
78
                            })) {
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
835
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
4
                                        type_left, type_right, type_result);
838
4
                                res = Impl::vector_vector(column_left->get_ptr(),
839
4
                                                          column_right->get_ptr(), type_left,
840
4
                                                          type_right, max_and_multiplier.first,
841
4
                                                          max_and_multiplier.second, type_result,
842
4
                                                          check_overflow_for_decimal);
843
4
                                return true;
844
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
835
43
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
43
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
43
                                        type_left, type_right, type_result);
838
43
                                res = Impl::vector_vector(column_left->get_ptr(),
839
43
                                                          column_right->get_ptr(), type_left,
840
43
                                                          type_right, max_and_multiplier.first,
841
43
                                                          max_and_multiplier.second, type_result,
842
43
                                                          check_overflow_for_decimal);
843
43
                                return true;
844
43
                            })) {
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
835
15
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
15
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
15
                                        type_left, type_right, type_result);
838
15
                                res = Impl::vector_vector(column_left->get_ptr(),
839
15
                                                          column_right->get_ptr(), type_left,
840
15
                                                          type_right, max_and_multiplier.first,
841
15
                                                          max_and_multiplier.second, type_result,
842
15
                                                          check_overflow_for_decimal);
843
15
                                return true;
844
15
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
13.7k
            }
850
13.8k
        } else {
851
4.13k
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
4.13k
        }
853
13.8k
        return res;
854
18.0k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE20ELS2_20EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_20EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
154
                            bool check_overflow_for_decimal) const {
814
154
        ColumnPtr res = nullptr;
815
154
        if constexpr (result_is_decimal) {
816
154
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
154
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
154
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
154
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
154
                                        type_left, type_right, type_result);
821
154
                                res = Impl::vector_vector(column_left->get_ptr(),
822
154
                                                          column_right->get_ptr(), type_left,
823
154
                                                          type_right, max_and_multiplier.first,
824
154
                                                          max_and_multiplier.second, type_result,
825
154
                                                          check_overflow_for_decimal);
826
154
                                return true;
827
154
                            })) {
828
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
0
                                    type_to_string(res_data_type->get_primitive_type()));
831
0
                }
832
            } else {
833
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
                                         DataTypeDecimal256>(
835
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
                                        type_left, type_right, type_result);
838
                                res = Impl::vector_vector(column_left->get_ptr(),
839
                                                          column_right->get_ptr(), type_left,
840
                                                          type_right, max_and_multiplier.first,
841
                                                          max_and_multiplier.second, type_result,
842
                                                          check_overflow_for_decimal);
843
                                return true;
844
                            })) {
845
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
                                    type_to_string(res_data_type->get_primitive_type()));
848
                }
849
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
154
        return res;
854
154
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_28EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
28
                            bool check_overflow_for_decimal) const {
814
28
        ColumnPtr res = nullptr;
815
28
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
28
            } else {
833
28
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
28
                                         DataTypeDecimal256>(
835
28
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
28
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
28
                                        type_left, type_right, type_result);
838
28
                                res = Impl::vector_vector(column_left->get_ptr(),
839
28
                                                          column_right->get_ptr(), type_left,
840
28
                                                          type_right, max_and_multiplier.first,
841
28
                                                          max_and_multiplier.second, type_result,
842
28
                                                          check_overflow_for_decimal);
843
28
                                return true;
844
28
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
28
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
28
        return res;
854
28
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
6
                            bool check_overflow_for_decimal) const {
814
6
        ColumnPtr res = nullptr;
815
6
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
6
            } else {
833
6
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
6
                                         DataTypeDecimal256>(
835
6
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
6
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
6
                                        type_left, type_right, type_result);
838
6
                                res = Impl::vector_vector(column_left->get_ptr(),
839
6
                                                          column_right->get_ptr(), type_left,
840
6
                                                          type_right, max_and_multiplier.first,
841
6
                                                          max_and_multiplier.second, type_result,
842
6
                                                          check_overflow_for_decimal);
843
6
                                return true;
844
6
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
6
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
6
        return res;
854
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE28ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_28EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
48
                            bool check_overflow_for_decimal) const {
814
48
        ColumnPtr res = nullptr;
815
48
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
48
            } else {
833
48
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
48
                                         DataTypeDecimal256>(
835
48
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
48
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
48
                                        type_left, type_right, type_result);
838
48
                                res = Impl::vector_vector(column_left->get_ptr(),
839
48
                                                          column_right->get_ptr(), type_left,
840
48
                                                          type_right, max_and_multiplier.first,
841
48
                                                          max_and_multiplier.second, type_result,
842
48
                                                          check_overflow_for_decimal);
843
48
                                return true;
844
48
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
48
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
48
        return res;
854
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
813
6
                            bool check_overflow_for_decimal) const {
814
6
        ColumnPtr res = nullptr;
815
6
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
6
            } else {
833
6
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
6
                                         DataTypeDecimal256>(
835
6
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
6
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
6
                                        type_left, type_right, type_result);
838
6
                                res = Impl::vector_vector(column_left->get_ptr(),
839
6
                                                          column_right->get_ptr(), type_left,
840
6
                                                          type_right, max_and_multiplier.first,
841
6
                                                          max_and_multiplier.second, type_result,
842
6
                                                          check_overflow_for_decimal);
843
6
                                return true;
844
6
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
6
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
6
        return res;
854
6
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
8.46k
                            bool check_overflow_for_decimal) const {
814
8.46k
        ColumnPtr res = nullptr;
815
8.46k
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
8.46k
            } else {
833
8.46k
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
8.46k
                                         DataTypeDecimal256>(
835
8.46k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
8.46k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
8.46k
                                        type_left, type_right, type_result);
838
8.46k
                                res = Impl::vector_vector(column_left->get_ptr(),
839
8.46k
                                                          column_right->get_ptr(), type_left,
840
8.46k
                                                          type_right, max_and_multiplier.first,
841
8.46k
                                                          max_and_multiplier.second, type_result,
842
8.46k
                                                          check_overflow_for_decimal);
843
8.46k
                                return true;
844
8.46k
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
8.46k
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
8.46k
        return res;
854
8.46k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE29ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_29EEEPKNSA_ILS2_30EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
11
                            bool check_overflow_for_decimal) const {
814
11
        ColumnPtr res = nullptr;
815
11
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
11
            } else {
833
11
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
11
                                         DataTypeDecimal256>(
835
11
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
11
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
11
                                        type_left, type_right, type_result);
838
11
                                res = Impl::vector_vector(column_left->get_ptr(),
839
11
                                                          column_right->get_ptr(), type_left,
840
11
                                                          type_right, max_and_multiplier.first,
841
11
                                                          max_and_multiplier.second, type_result,
842
11
                                                          check_overflow_for_decimal);
843
11
                                return true;
844
11
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
11
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
11
        return res;
854
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
813
56
                            bool check_overflow_for_decimal) const {
814
56
        ColumnPtr res = nullptr;
815
56
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
56
            } else {
833
56
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
56
                                         DataTypeDecimal256>(
835
56
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
56
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
56
                                        type_left, type_right, type_result);
838
56
                                res = Impl::vector_vector(column_left->get_ptr(),
839
56
                                                          column_right->get_ptr(), type_left,
840
56
                                                          type_right, max_and_multiplier.first,
841
56
                                                          max_and_multiplier.second, type_result,
842
56
                                                          check_overflow_for_decimal);
843
56
                                return true;
844
56
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
56
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
56
        return res;
854
56
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_29EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEEPKNSA_ILS2_29EEESt10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
4.89k
                            bool check_overflow_for_decimal) const {
814
4.89k
        ColumnPtr res = nullptr;
815
4.89k
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
4.89k
            } else {
833
4.89k
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
4.89k
                                         DataTypeDecimal256>(
835
4.89k
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
4.89k
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
4.89k
                                        type_left, type_right, type_result);
838
4.89k
                                res = Impl::vector_vector(column_left->get_ptr(),
839
4.89k
                                                          column_right->get_ptr(), type_left,
840
4.89k
                                                          type_right, max_and_multiplier.first,
841
4.89k
                                                          max_and_multiplier.second, type_result,
842
4.89k
                                                          check_overflow_for_decimal);
843
4.89k
                                return true;
844
4.89k
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
4.89k
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
4.89k
        return res;
854
4.89k
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE30ELS2_30EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_30EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
168
                            bool check_overflow_for_decimal) const {
814
168
        ColumnPtr res = nullptr;
815
168
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
168
            } else {
833
168
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
168
                                         DataTypeDecimal256>(
835
168
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
168
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
168
                                        type_left, type_right, type_result);
838
168
                                res = Impl::vector_vector(column_left->get_ptr(),
839
168
                                                          column_right->get_ptr(), type_left,
840
168
                                                          type_right, max_and_multiplier.first,
841
168
                                                          max_and_multiplier.second, type_result,
842
168
                                                          check_overflow_for_decimal);
843
168
                                return true;
844
168
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
168
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
168
        return res;
854
168
    }
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
813
4
                            bool check_overflow_for_decimal) const {
814
4
        ColumnPtr res = nullptr;
815
4
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
4
            } else {
833
4
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
4
                                         DataTypeDecimal256>(
835
4
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
4
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
4
                                        type_left, type_right, type_result);
838
4
                                res = Impl::vector_vector(column_left->get_ptr(),
839
4
                                                          column_right->get_ptr(), type_left,
840
4
                                                          type_right, max_and_multiplier.first,
841
4
                                                          max_and_multiplier.second, type_result,
842
4
                                                          check_overflow_for_decimal);
843
4
                                return true;
844
4
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
4
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
4
        return res;
854
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
813
43
                            bool check_overflow_for_decimal) const {
814
43
        ColumnPtr res = nullptr;
815
43
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
43
            } else {
833
43
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
43
                                         DataTypeDecimal256>(
835
43
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
43
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
43
                                        type_left, type_right, type_result);
838
43
                                res = Impl::vector_vector(column_left->get_ptr(),
839
43
                                                          column_right->get_ptr(), type_left,
840
43
                                                          type_right, max_and_multiplier.first,
841
43
                                                          max_and_multiplier.second, type_result,
842
43
                                                          check_overflow_for_decimal);
843
43
                                return true;
844
43
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
43
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
43
        return res;
854
43
    }
_ZNK5doris16FunctionMultiplyINS_19MultiplyDecimalImplILNS_13PrimitiveTypeE35ELS2_35EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_15DataTypeDecimalILS2_35EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
15
                            bool check_overflow_for_decimal) const {
814
15
        ColumnPtr res = nullptr;
815
15
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
15
            } else {
833
15
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
15
                                         DataTypeDecimal256>(
835
15
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
15
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
15
                                        type_left, type_right, type_result);
838
15
                                res = Impl::vector_vector(column_left->get_ptr(),
839
15
                                                          column_right->get_ptr(), type_left,
840
15
                                                          type_right, max_and_multiplier.first,
841
15
                                                          max_and_multiplier.second, type_result,
842
15
                                                          check_overflow_for_decimal);
843
15
                                return true;
844
15
                            })) {
845
0
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
0
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
0
                                    type_to_string(res_data_type->get_primitive_type()));
848
0
                }
849
15
            }
850
        } else {
851
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
        }
853
15
        return res;
854
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
813
38
                            bool check_overflow_for_decimal) const {
814
38
        ColumnPtr res = nullptr;
815
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
            } else {
833
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
                                         DataTypeDecimal256>(
835
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
                                        type_left, type_right, type_result);
838
                                res = Impl::vector_vector(column_left->get_ptr(),
839
                                                          column_right->get_ptr(), type_left,
840
                                                          type_right, max_and_multiplier.first,
841
                                                          max_and_multiplier.second, type_result,
842
                                                          check_overflow_for_decimal);
843
                                return true;
844
                            })) {
845
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
                                    type_to_string(res_data_type->get_primitive_type()));
848
                }
849
            }
850
38
        } else {
851
38
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
38
        }
853
38
        return res;
854
38
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE5EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_5EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
64
                            bool check_overflow_for_decimal) const {
814
64
        ColumnPtr res = nullptr;
815
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
            } else {
833
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
                                         DataTypeDecimal256>(
835
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
                                        type_left, type_right, type_result);
838
                                res = Impl::vector_vector(column_left->get_ptr(),
839
                                                          column_right->get_ptr(), type_left,
840
                                                          type_right, max_and_multiplier.first,
841
                                                          max_and_multiplier.second, type_result,
842
                                                          check_overflow_for_decimal);
843
                                return true;
844
                            })) {
845
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
                                    type_to_string(res_data_type->get_primitive_type()));
848
                }
849
            }
850
64
        } else {
851
64
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
64
        }
853
64
        return res;
854
64
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE6EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_6EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
1.07k
                            bool check_overflow_for_decimal) const {
814
1.07k
        ColumnPtr res = nullptr;
815
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
            } else {
833
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
                                         DataTypeDecimal256>(
835
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
                                        type_left, type_right, type_result);
838
                                res = Impl::vector_vector(column_left->get_ptr(),
839
                                                          column_right->get_ptr(), type_left,
840
                                                          type_right, max_and_multiplier.first,
841
                                                          max_and_multiplier.second, type_result,
842
                                                          check_overflow_for_decimal);
843
                                return true;
844
                            })) {
845
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
                                    type_to_string(res_data_type->get_primitive_type()));
848
                }
849
            }
850
1.07k
        } else {
851
1.07k
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
1.07k
        }
853
1.07k
        return res;
854
1.07k
    }
_ZNK5doris16FunctionMultiplyINS_20MultiplyIntegralImplILNS_13PrimitiveTypeE7EEEE13vector_vectorENS_3COWINS_7IColumnEE13immutable_ptrIS6_EES9_PKNS_14DataTypeNumberILS2_7EEESD_St10shared_ptrIKNS_9IDataTypeEEb
Line
Count
Source
813
151
                            bool check_overflow_for_decimal) const {
814
151
        ColumnPtr res = nullptr;
815
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
            } else {
833
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
                                         DataTypeDecimal256>(
835
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
                                        type_left, type_right, type_result);
838
                                res = Impl::vector_vector(column_left->get_ptr(),
839
                                                          column_right->get_ptr(), type_left,
840
                                                          type_right, max_and_multiplier.first,
841
                                                          max_and_multiplier.second, type_result,
842
                                                          check_overflow_for_decimal);
843
                                return true;
844
                            })) {
845
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
                                    type_to_string(res_data_type->get_primitive_type()));
848
                }
849
            }
850
151
        } else {
851
151
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
151
        }
853
151
        return res;
854
151
    }
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
813
2.80k
                            bool check_overflow_for_decimal) const {
814
2.80k
        ColumnPtr res = nullptr;
815
        if constexpr (result_is_decimal) {
816
            if constexpr (Impl::DataTypeA::PType == TYPE_DECIMALV2) {
817
                if (!cast_type_to_either<DataTypeDecimalV2>(
818
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
819
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
820
                                        type_left, type_right, type_result);
821
                                res = Impl::vector_vector(column_left->get_ptr(),
822
                                                          column_right->get_ptr(), type_left,
823
                                                          type_right, max_and_multiplier.first,
824
                                                          max_and_multiplier.second, type_result,
825
                                                          check_overflow_for_decimal);
826
                                return true;
827
                            })) {
828
                    throw Exception(ErrorCode::INTERNAL_ERROR,
829
                                    "Wrong type. Expected: Decimal, Actually: {}",
830
                                    type_to_string(res_data_type->get_primitive_type()));
831
                }
832
            } else {
833
                if (!cast_type_to_either<DataTypeDecimal32, DataTypeDecimal64, DataTypeDecimal128,
834
                                         DataTypeDecimal256>(
835
                            remove_nullable(res_data_type).get(), [&](const auto& type_result) {
836
                                auto max_and_multiplier = Impl::get_max_and_multiplier(
837
                                        type_left, type_right, type_result);
838
                                res = Impl::vector_vector(column_left->get_ptr(),
839
                                                          column_right->get_ptr(), type_left,
840
                                                          type_right, max_and_multiplier.first,
841
                                                          max_and_multiplier.second, type_result,
842
                                                          check_overflow_for_decimal);
843
                                return true;
844
                            })) {
845
                    throw Exception(ErrorCode::INTERNAL_ERROR,
846
                                    "Wrong type. Expected: Decimal, Actually: {}",
847
                                    type_to_string(res_data_type->get_primitive_type()));
848
                }
849
            }
850
2.80k
        } else {
851
2.80k
            res = Impl::vector_vector(column_left->get_ptr(), column_right->get_ptr());
852
2.80k
        }
853
2.80k
        return res;
854
2.80k
    }
855
};
856
857
6
void register_function_multiply(SimpleFunctionFactory& factory) {
858
6
    factory.register_function<
859
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMALV2, TYPE_DECIMALV2>>>();
860
861
6
    factory.register_function<
862
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL32>>>();
863
6
    factory.register_function<
864
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL64>>>();
865
6
    factory.register_function<
866
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL128I>>>();
867
6
    factory.register_function<
868
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL32, TYPE_DECIMAL256>>>();
869
870
6
    factory.register_function<
871
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL32>>>();
872
6
    factory.register_function<
873
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL64>>>();
874
6
    factory.register_function<
875
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL128I>>>();
876
6
    factory.register_function<
877
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL64, TYPE_DECIMAL256>>>();
878
879
6
    factory.register_function<
880
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL32>>>();
881
6
    factory.register_function<
882
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL64>>>();
883
6
    factory.register_function<
884
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL128I>>>();
885
6
    factory.register_function<
886
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL128I, TYPE_DECIMAL256>>>();
887
888
6
    factory.register_function<
889
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL32>>>();
890
6
    factory.register_function<
891
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL64>>>();
892
6
    factory.register_function<
893
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL128I>>>();
894
6
    factory.register_function<
895
6
            FunctionMultiply<MultiplyDecimalImpl<TYPE_DECIMAL256, TYPE_DECIMAL256>>>();
896
897
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_TINYINT>>>();
898
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_SMALLINT>>>();
899
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_INT>>>();
900
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_BIGINT>>>();
901
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_LARGEINT>>>();
902
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_FLOAT>>>();
903
6
    factory.register_function<FunctionMultiply<MultiplyIntegralImpl<TYPE_DOUBLE>>>();
904
6
}
905
#include "common/compile_check_end.h"
906
} // namespace doris