Coverage Report

Created: 2026-06-29 08:30

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/aggregate/aggregate_function_uniq.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
// This file is copied from
18
// https://github.com/ClickHouse/ClickHouse/blob/master/src/AggregateFunctions/AggregateFunctionUniq.h
19
// and modified by Doris
20
21
#pragma once
22
23
#include <stddef.h>
24
25
#include <boost/iterator/iterator_facade.hpp>
26
#include <memory>
27
#include <type_traits>
28
#include <vector>
29
30
#include "common/compiler_util.h" // IWYU pragma: keep
31
#include "core/assert_cast.h"
32
#include "core/column/column.h"
33
#include "core/column/column_decimal.h"
34
#include "core/column/column_vector.h"
35
#include "core/data_type/data_type_number.h"
36
#include "core/data_type/primitive_type.h"
37
#include "core/string_buffer.hpp"
38
#include "core/string_ref.h"
39
#include "core/types.h"
40
#include "core/uint128.h"
41
#include "exec/common/hash_table/hash.h"
42
#include "exec/common/hash_table/phmap_fwd_decl.h"
43
#include "exprs/aggregate/aggregate_function.h"
44
#include "util/var_int.h"
45
46
template <typename T>
47
struct HashCRC32;
48
49
namespace doris {
50
51
class Arena;
52
class BufferReadable;
53
class BufferWritable;
54
template <PrimitiveType T>
55
class ColumnDecimal;
56
/// uniqExact
57
58
template <PrimitiveType T>
59
struct AggregateFunctionUniqExactData {
60
    static constexpr bool is_string_key = is_string_type(T) || is_varbinary(T);
61
    using Key = std::conditional_t<
62
            is_string_key, UInt128,
63
            std::conditional_t<T == TYPE_ARRAY, UInt64,
64
                               std::conditional_t<T == TYPE_BOOLEAN, UInt8,
65
                                                  typename PrimitiveTypeTraits<T>::CppType>>>;
66
    using Hash = HashCRC32<Key>;
67
68
    using Set = flat_hash_set<Key, Hash>;
69
70
5.63k
    static UInt128 ALWAYS_INLINE get_key(const StringRef& value) {
71
5.63k
        auto hash_value = XXH_INLINE_XXH128(value.data, value.size, 0);
72
5.63k
        return UInt128 {hash_value.high64, hash_value.low64};
73
5.63k
    }
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE10EE7get_keyERKNS_9StringRefE
Line
Count
Source
70
5.62k
    static UInt128 ALWAYS_INLINE get_key(const StringRef& value) {
71
5.62k
        auto hash_value = XXH_INLINE_XXH128(value.data, value.size, 0);
72
5.62k
        return UInt128 {hash_value.high64, hash_value.low64};
73
5.62k
    }
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE41EE7get_keyERKNS_9StringRefE
Line
Count
Source
70
12
    static UInt128 ALWAYS_INLINE get_key(const StringRef& value) {
71
12
        auto hash_value = XXH_INLINE_XXH128(value.data, value.size, 0);
72
12
        return UInt128 {hash_value.high64, hash_value.low64};
73
12
    }
74
14
    static UInt64 ALWAYS_INLINE get_key(const IColumn& column, size_t row_num) {
75
14
        UInt64 hash_value = 0;
76
14
        column.update_xxHash_with_value(row_num, row_num + 1, hash_value, nullptr);
77
14
        return hash_value;
78
14
    }
79
80
    Set set;
81
82
40
    static String get_name() { return "multi_distinct"; }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE2EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE3EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE4EE8get_nameB5cxx11Ev
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE5EE8get_nameB5cxx11Ev
Line
Count
Source
82
27
    static String get_name() { return "multi_distinct"; }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE6EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE7EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE28EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE29EE8get_nameB5cxx11Ev
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE30EE8get_nameB5cxx11Ev
Line
Count
Source
82
10
    static String get_name() { return "multi_distinct"; }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE35EE8get_nameB5cxx11Ev
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE10EE8get_nameB5cxx11Ev
Line
Count
Source
82
3
    static String get_name() { return "multi_distinct"; }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE17EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE8EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE9EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE25EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE26EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE42EE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE41EE8get_nameB5cxx11Ev
83
84
34
    void reset() { set.clear(); }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE2EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE3EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE4EE5resetEv
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE5EE5resetEv
Line
Count
Source
84
31
    void reset() { set.clear(); }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE6EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE7EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE28EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE29EE5resetEv
_ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE30EE5resetEv
Line
Count
Source
84
3
    void reset() { set.clear(); }
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE35EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE10EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE17EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE8EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE9EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE25EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE26EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE42EE5resetEv
Unexecuted instantiation: _ZN5doris30AggregateFunctionUniqExactDataILNS_13PrimitiveTypeE41EE5resetEv
85
};
86
87
namespace detail {
88
89
/** The structure for the delegation work to add one element to the `uniq` aggregate functions.
90
  * Used for partial specialization to add strings.
91
  */
92
template <PrimitiveType T, typename Data>
93
struct OneAdder {
94
698
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
698
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
455
            StringRef value = column.get_data_at(row_num);
97
455
            data.set.insert(Data::get_key(value));
98
455
        } else if constexpr (T == TYPE_ARRAY) {
99
14
            data.set.insert(Data::get_key(column, row_num));
100
229
        } else {
101
229
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
229
                                        TypeCheckOnRelease::DISABLE>(column)
103
229
                                    .get_data()[row_num]);
104
229
        }
105
698
    }
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS2_2EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
2
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
2
        } else {
101
2
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
2
                                        TypeCheckOnRelease::DISABLE>(column)
103
2
                                    .get_data()[row_num]);
104
2
        }
105
2
    }
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS2_3EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS2_4EEEE3addERS4_RKNS_7IColumnEm
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS2_5EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
174
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
174
        } else {
101
174
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
174
                                        TypeCheckOnRelease::DISABLE>(column)
103
174
                                    .get_data()[row_num]);
104
174
        }
105
174
    }
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS2_6EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
5
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
5
        } else {
101
5
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
5
                                        TypeCheckOnRelease::DISABLE>(column)
103
5
                                    .get_data()[row_num]);
104
5
        }
105
5
    }
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS2_7EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS2_28EEEE3addERS4_RKNS_7IColumnEm
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS2_29EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
4
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
4
        } else {
101
4
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
4
                                        TypeCheckOnRelease::DISABLE>(column)
103
4
                                    .get_data()[row_num]);
104
4
        }
105
4
    }
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS2_30EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
17
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
17
        } else {
101
17
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
17
                                        TypeCheckOnRelease::DISABLE>(column)
103
17
                                    .get_data()[row_num]);
104
17
        }
105
17
    }
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS2_35EEEE3addERS4_RKNS_7IColumnEm
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS2_10EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
455
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
455
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
455
            StringRef value = column.get_data_at(row_num);
97
455
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
        } else {
101
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
                                        TypeCheckOnRelease::DISABLE>(column)
103
                                    .get_data()[row_num]);
104
        }
105
455
    }
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS2_17EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
14
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
14
        } else if constexpr (T == TYPE_ARRAY) {
99
14
            data.set.insert(Data::get_key(column, row_num));
100
        } else {
101
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
                                        TypeCheckOnRelease::DISABLE>(column)
103
                                    .get_data()[row_num]);
104
        }
105
14
    }
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS2_8EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS2_9EEEE3addERS4_RKNS_7IColumnEm
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS2_25EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
6
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
6
        } else {
101
6
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
6
                                        TypeCheckOnRelease::DISABLE>(column)
103
6
                                    .get_data()[row_num]);
104
6
        }
105
6
    }
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS2_26EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
15
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
15
        } else {
101
15
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
15
                                        TypeCheckOnRelease::DISABLE>(column)
103
15
                                    .get_data()[row_num]);
104
15
        }
105
15
    }
_ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS2_42EEEE3addERS4_RKNS_7IColumnEm
Line
Count
Source
94
6
    static void ALWAYS_INLINE add(Data& data, const IColumn& column, size_t row_num) {
95
        if constexpr (is_string_type(T) || is_varbinary(T)) {
96
            StringRef value = column.get_data_at(row_num);
97
            data.set.insert(Data::get_key(value));
98
        } else if constexpr (T == TYPE_ARRAY) {
99
            data.set.insert(Data::get_key(column, row_num));
100
6
        } else {
101
6
            data.set.insert(assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&,
102
6
                                        TypeCheckOnRelease::DISABLE>(column)
103
6
                                    .get_data()[row_num]);
104
6
        }
105
6
    }
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS2_41EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE3ENS_38AggregateFunctionUniqDistributeKeyDataILS2_3EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE4ENS_38AggregateFunctionUniqDistributeKeyDataILS2_4EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE5ENS_38AggregateFunctionUniqDistributeKeyDataILS2_5EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE6ENS_38AggregateFunctionUniqDistributeKeyDataILS2_6EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE7ENS_38AggregateFunctionUniqDistributeKeyDataILS2_7EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE28ENS_38AggregateFunctionUniqDistributeKeyDataILS2_28EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE29ENS_38AggregateFunctionUniqDistributeKeyDataILS2_29EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE30ENS_38AggregateFunctionUniqDistributeKeyDataILS2_30EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE35ENS_38AggregateFunctionUniqDistributeKeyDataILS2_35EEEE3addERS4_RKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris6detail8OneAdderILNS_13PrimitiveTypeE10ENS_38AggregateFunctionUniqDistributeKeyDataILS2_10EEEE3addERS4_RKNS_7IColumnEm
106
};
107
108
} // namespace detail
109
110
/// Calculates the number of different values approximately or exactly.
111
template <PrimitiveType T, typename Data>
112
class AggregateFunctionUniq final
113
        : public IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>,
114
          VarargsExpression,
115
          NotNullableAggregateFunction {
116
public:
117
    using KeyType = std::conditional_t<
118
            is_string_type(T) || is_varbinary(T), UInt128,
119
            std::conditional_t<T == TYPE_ARRAY, UInt64, typename PrimitiveTypeTraits<T>::CppType>>;
120
    AggregateFunctionUniq(const DataTypes& argument_types_)
121
1.37k
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
2
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
10
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
679
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
72
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
2
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
12
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
1
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
13
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
557
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
4
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
9
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
2
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
4
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaIS9_EE
Line
Count
Source
121
8
            : IAggregateFunctionDataHelper<Data, AggregateFunctionUniq<T, Data>>(argument_types_) {}
122
123
40
    String get_name() const override { return Data::get_name(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE8get_nameB5cxx11Ev
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE8get_nameB5cxx11Ev
Line
Count
Source
123
27
    String get_name() const override { return Data::get_name(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE8get_nameB5cxx11Ev
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE8get_nameB5cxx11Ev
Line
Count
Source
123
10
    String get_name() const override { return Data::get_name(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE8get_nameB5cxx11Ev
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE8get_nameB5cxx11Ev
Line
Count
Source
123
3
    String get_name() const override { return Data::get_name(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE8get_nameB5cxx11Ev
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE8get_nameB5cxx11Ev
124
125
1.76k
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE15get_return_typeEv
Line
Count
Source
125
3
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE15get_return_typeEv
Line
Count
Source
125
24
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE15get_return_typeEv
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE15get_return_typeEv
Line
Count
Source
125
773
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE15get_return_typeEv
Line
Count
Source
125
227
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE15get_return_typeEv
Line
Count
Source
125
14
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE15get_return_typeEv
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE15get_return_typeEv
Line
Count
Source
125
18
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE15get_return_typeEv
Line
Count
Source
125
11
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE15get_return_typeEv
Line
Count
Source
125
21
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE15get_return_typeEv
Line
Count
Source
125
620
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE15get_return_typeEv
Line
Count
Source
125
8
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE15get_return_typeEv
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE15get_return_typeEv
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE15get_return_typeEv
Line
Count
Source
125
16
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE15get_return_typeEv
Line
Count
Source
125
4
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE15get_return_typeEv
Line
Count
Source
125
8
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE15get_return_typeEv
Line
Count
Source
125
16
    DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); }
126
127
34
    void reset(AggregateDataPtr __restrict place) const override { this->data(place).reset(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE5resetEPc
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE5resetEPc
Line
Count
Source
127
31
    void reset(AggregateDataPtr __restrict place) const override { this->data(place).reset(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE5resetEPc
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE5resetEPc
Line
Count
Source
127
3
    void reset(AggregateDataPtr __restrict place) const override { this->data(place).reset(); }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE5resetEPc
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE5resetEPc
128
129
    void add(AggregateDataPtr __restrict place, const IColumn** columns, ssize_t row_num,
130
698
             Arena&) const override {
131
698
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
698
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
2
             Arena&) const override {
131
2
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
2
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
174
             Arena&) const override {
131
174
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
174
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
5
             Arena&) const override {
131
5
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
5
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
4
             Arena&) const override {
131
4
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
4
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
17
             Arena&) const override {
131
17
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
17
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
455
             Arena&) const override {
131
455
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
455
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
14
             Arena&) const override {
131
14
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
14
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
6
             Arena&) const override {
131
6
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
6
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
15
             Arena&) const override {
131
15
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
15
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
Line
Count
Source
130
6
             Arena&) const override {
131
6
        detail::OneAdder<T, Data>::add(this->data(place), *columns[0], row_num);
132
6
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE
133
134
    static ALWAYS_INLINE const KeyType* get_keys(std::vector<KeyType>& keys_container,
135
1.19k
                                                 const IColumn& column, size_t batch_size) {
136
1.19k
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
168
            keys_container.resize(batch_size);
138
5.39k
            for (size_t i = 0; i != batch_size; ++i) {
139
5.22k
                StringRef value = column.get_data_at(i);
140
5.22k
                keys_container[i] = Data::get_key(value);
141
5.22k
            }
142
168
            return keys_container.data();
143
168
        } else if constexpr (T == TYPE_ARRAY) {
144
0
            keys_container.resize(batch_size);
145
0
            for (size_t i = 0; i != batch_size; ++i) {
146
0
                keys_container[i] = Data::get_key(column, i);
147
0
            }
148
0
            return keys_container.data();
149
1.02k
        } else {
150
1.02k
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
1.02k
                    .get_data()
152
1.02k
                    .data();
153
1.02k
        }
154
1.19k
    }
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE8get_keysERSt6vectorIhSaIhEERKNS_7IColumnEm
Line
Count
Source
135
3
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
3
        } else {
150
3
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
3
                    .get_data()
152
3
                    .data();
153
3
        }
154
3
    }
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE8get_keysERSt6vectorIaSaIaEERKNS_7IColumnEm
Line
Count
Source
135
16
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
16
        } else {
150
16
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
16
                    .get_data()
152
16
                    .data();
153
16
        }
154
16
    }
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE8get_keysERSt6vectorIsSaIsEERKNS_7IColumnEm
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE8get_keysERSt6vectorIiSaIiEERKNS_7IColumnEm
Line
Count
Source
135
604
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
604
        } else {
150
604
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
604
                    .get_data()
152
604
                    .data();
153
604
        }
154
604
    }
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE8get_keysERSt6vectorIlSaIlEERKNS_7IColumnEm
Line
Count
Source
135
192
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
192
        } else {
150
192
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
192
                    .get_data()
152
192
                    .data();
153
192
        }
154
192
    }
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE8get_keysERSt6vectorInSaInEERKNS_7IColumnEm
Line
Count
Source
135
4
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
4
        } else {
150
4
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
4
                    .get_data()
152
4
                    .data();
153
4
        }
154
4
    }
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE8get_keysERSt6vectorINS_7DecimalIiEESaIS7_EERKNS_7IColumnEm
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE8get_keysERSt6vectorINS_7DecimalIlEESaIS7_EERKNS_7IColumnEm
Line
Count
Source
135
5
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
5
        } else {
150
5
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
5
                    .get_data()
152
5
                    .data();
153
5
        }
154
5
    }
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE8get_keysERSt6vectorINS_12Decimal128V3ESaIS6_EERKNS_7IColumnEm
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE8get_keysERSt6vectorINS_7DecimalIN4wide7integerILm256EiEEEESaISA_EERKNS_7IColumnEm
Line
Count
Source
135
11
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
11
        } else {
150
11
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
11
                    .get_data()
152
11
                    .data();
153
11
        }
154
11
    }
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE8get_keysERSt6vectorIN4wide7integerILm128EjEESaIS8_EERKNS_7IColumnEm
Line
Count
Source
135
156
                                                 const IColumn& column, size_t batch_size) {
136
156
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
156
            keys_container.resize(batch_size);
138
5.37k
            for (size_t i = 0; i != batch_size; ++i) {
139
5.21k
                StringRef value = column.get_data_at(i);
140
5.21k
                keys_container[i] = Data::get_key(value);
141
5.21k
            }
142
156
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
        } else {
150
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
                    .get_data()
152
                    .data();
153
        }
154
156
    }
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE8get_keysERSt6vectorImSaImEERKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE8get_keysERSt6vectorIfSaIfEERKNS_7IColumnEm
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE8get_keysERSt6vectorIdSaIdEERKNS_7IColumnEm
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE8get_keysERSt6vectorINS_11DateV2ValueINS_15DateV2ValueTypeEEESaIS8_EERKNS_7IColumnEm
Line
Count
Source
135
156
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
156
        } else {
150
156
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
156
                    .get_data()
152
156
                    .data();
153
156
        }
154
156
    }
Unexecuted instantiation: _ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE8get_keysERSt6vectorINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEESaIS8_EERKNS_7IColumnEm
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE8get_keysERSt6vectorINS_16TimestampTzValueESaIS6_EERKNS_7IColumnEm
Line
Count
Source
135
36
                                                 const IColumn& column, size_t batch_size) {
136
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
            keys_container.resize(batch_size);
138
            for (size_t i = 0; i != batch_size; ++i) {
139
                StringRef value = column.get_data_at(i);
140
                keys_container[i] = Data::get_key(value);
141
            }
142
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
36
        } else {
150
36
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
36
                    .get_data()
152
36
                    .data();
153
36
        }
154
36
    }
_ZN5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE8get_keysERSt6vectorIN4wide7integerILm128EjEESaIS8_EERKNS_7IColumnEm
Line
Count
Source
135
12
                                                 const IColumn& column, size_t batch_size) {
136
12
        if constexpr (is_string_type(T) || is_varbinary(T)) {
137
12
            keys_container.resize(batch_size);
138
24
            for (size_t i = 0; i != batch_size; ++i) {
139
12
                StringRef value = column.get_data_at(i);
140
12
                keys_container[i] = Data::get_key(value);
141
12
            }
142
12
            return keys_container.data();
143
        } else if constexpr (T == TYPE_ARRAY) {
144
            keys_container.resize(batch_size);
145
            for (size_t i = 0; i != batch_size; ++i) {
146
                keys_container[i] = Data::get_key(column, i);
147
            }
148
            return keys_container.data();
149
        } else {
150
            return assert_cast<const typename PrimitiveTypeTraits<T>::ColumnType&>(column)
151
                    .get_data()
152
                    .data();
153
        }
154
12
    }
155
156
    void add_batch(size_t batch_size, AggregateDataPtr* places, size_t place_offset,
157
800
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
800
        std::vector<KeyType> keys_container;
159
800
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
800
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
40.3k
        for (size_t i = 0; i != batch_size; ++i) {
164
39.5k
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
39.5k
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
800
        std::vector<size_t> hash_values(batch_size);
169
40.3k
        for (size_t i = 0; i < batch_size; ++i) {
170
39.5k
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
39.5k
        }
172
173
40.3k
        for (size_t i = 0; i != batch_size; ++i) {
174
39.5k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
35.5k
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
35.5k
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
35.5k
            }
178
179
39.5k
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
39.5k
        }
181
800
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
3
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
3
        std::vector<KeyType> keys_container;
159
3
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
3
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
16
        for (size_t i = 0; i != batch_size; ++i) {
164
13
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
13
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
3
        std::vector<size_t> hash_values(batch_size);
169
16
        for (size_t i = 0; i < batch_size; ++i) {
170
13
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
13
        }
172
173
16
        for (size_t i = 0; i != batch_size; ++i) {
174
13
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
0
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
0
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
0
            }
178
179
13
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
13
        }
181
3
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
4
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
4
        std::vector<KeyType> keys_container;
159
4
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
4
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
10
        for (size_t i = 0; i != batch_size; ++i) {
164
6
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
6
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
4
        std::vector<size_t> hash_values(batch_size);
169
10
        for (size_t i = 0; i < batch_size; ++i) {
170
6
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
6
        }
172
173
10
        for (size_t i = 0; i != batch_size; ++i) {
174
6
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
0
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
0
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
0
            }
178
179
6
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
6
        }
181
4
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
403
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
403
        std::vector<KeyType> keys_container;
159
403
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
403
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
38.1k
        for (size_t i = 0; i != batch_size; ++i) {
164
37.7k
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
37.7k
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
403
        std::vector<size_t> hash_values(batch_size);
169
38.1k
        for (size_t i = 0; i < batch_size; ++i) {
170
37.7k
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
37.7k
        }
172
173
38.1k
        for (size_t i = 0; i != batch_size; ++i) {
174
37.7k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
35.4k
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
35.4k
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
35.4k
            }
178
179
37.7k
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
37.7k
        }
181
403
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
76
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
76
        std::vector<KeyType> keys_container;
159
76
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
76
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
269
        for (size_t i = 0; i != batch_size; ++i) {
164
193
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
193
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
76
        std::vector<size_t> hash_values(batch_size);
169
269
        for (size_t i = 0; i < batch_size; ++i) {
170
193
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
193
        }
172
173
269
        for (size_t i = 0; i != batch_size; ++i) {
174
193
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
0
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
0
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
0
            }
178
179
193
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
193
        }
181
76
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
5
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
5
        std::vector<KeyType> keys_container;
159
5
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
5
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
35
        for (size_t i = 0; i != batch_size; ++i) {
164
30
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
30
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
5
        std::vector<size_t> hash_values(batch_size);
169
35
        for (size_t i = 0; i < batch_size; ++i) {
170
30
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
30
        }
172
173
35
        for (size_t i = 0; i != batch_size; ++i) {
174
30
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
0
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
0
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
0
            }
178
179
30
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
30
        }
181
5
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
11
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
11
        std::vector<KeyType> keys_container;
159
11
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
11
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
65
        for (size_t i = 0; i != batch_size; ++i) {
164
54
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
54
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
11
        std::vector<size_t> hash_values(batch_size);
169
65
        for (size_t i = 0; i < batch_size; ++i) {
170
54
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
54
        }
172
173
65
        for (size_t i = 0; i != batch_size; ++i) {
174
54
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
0
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
0
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
0
            }
178
179
54
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
54
        }
181
11
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
106
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
106
        std::vector<KeyType> keys_container;
159
106
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
106
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
458
        for (size_t i = 0; i != batch_size; ++i) {
164
352
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
352
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
106
        std::vector<size_t> hash_values(batch_size);
169
458
        for (size_t i = 0; i < batch_size; ++i) {
170
352
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
352
        }
172
173
458
        for (size_t i = 0; i != batch_size; ++i) {
174
352
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
27
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
27
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
27
            }
178
179
352
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
352
        }
181
106
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
156
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
156
        std::vector<KeyType> keys_container;
159
156
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
156
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
1.21k
        for (size_t i = 0; i != batch_size; ++i) {
164
1.05k
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
1.05k
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
156
        std::vector<size_t> hash_values(batch_size);
169
1.21k
        for (size_t i = 0; i < batch_size; ++i) {
170
1.05k
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
1.05k
        }
172
173
1.21k
        for (size_t i = 0; i != batch_size; ++i) {
174
1.05k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
152
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
152
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
152
            }
178
179
1.05k
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
1.05k
        }
181
156
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
Line
Count
Source
157
36
                   const IColumn** columns, Arena&, bool /*agg_many*/) const override {
158
36
        std::vector<KeyType> keys_container;
159
36
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
160
161
36
        std::vector<typename Data::Set*> array_of_data_set(batch_size);
162
163
106
        for (size_t i = 0; i != batch_size; ++i) {
164
70
            array_of_data_set[i] = &(this->data(places[i] + place_offset).set);
165
70
        }
166
167
        // Precompute hash values to avoid double computation in prefetch + insert
168
36
        std::vector<size_t> hash_values(batch_size);
169
106
        for (size_t i = 0; i < batch_size; ++i) {
170
70
            hash_values[i] = array_of_data_set[i]->hash(keys[i]);
171
70
        }
172
173
106
        for (size_t i = 0; i != batch_size; ++i) {
174
70
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
175
0
                array_of_data_set[i + HASH_MAP_PREFETCH_DIST]->prefetch_hash(
176
0
                        hash_values[i + HASH_MAP_PREFETCH_DIST]);
177
0
            }
178
179
70
            array_of_data_set[i]->emplace_with_hash(hash_values[i], keys[i]);
180
70
        }
181
36
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE9add_batchEmPPcmPPKNS_7IColumnERNS_5ArenaEb
182
183
    void merge(AggregateDataPtr __restrict place, ConstAggregateDataPtr rhs,
184
80
               Arena&) const override {
185
80
        auto& rhs_set = this->data(rhs).set;
186
80
        if (rhs_set.size() == 0) return;
187
188
80
        auto& set = this->data(place).set;
189
80
        set.rehash(set.size() + rhs_set.size());
190
191
91
        for (auto elem : rhs_set) {
192
91
            set.insert(elem);
193
91
        }
194
80
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE5mergeEPcPKcRNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE5mergeEPcPKcRNS_5ArenaE
Line
Count
Source
184
80
               Arena&) const override {
185
80
        auto& rhs_set = this->data(rhs).set;
186
80
        if (rhs_set.size() == 0) return;
187
188
80
        auto& set = this->data(place).set;
189
80
        set.rehash(set.size() + rhs_set.size());
190
191
91
        for (auto elem : rhs_set) {
192
91
            set.insert(elem);
193
91
        }
194
80
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE5mergeEPcPKcRNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE5mergeEPcPKcRNS_5ArenaE
195
196
    void add_batch_single_place(size_t batch_size, AggregateDataPtr place, const IColumn** columns,
197
396
                                Arena&) const override {
198
396
        std::vector<KeyType> keys_container;
199
396
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
396
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
396
        std::vector<size_t> hash_values(batch_size);
204
51.1k
        for (size_t i = 0; i < batch_size; ++i) {
205
50.7k
            hash_values[i] = set.hash(keys[i]);
206
50.7k
        }
207
208
51.2k
        for (size_t i = 0; i != batch_size; ++i) {
209
50.8k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
47.9k
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
47.9k
            }
212
50.8k
            set.emplace_with_hash(hash_values[i], keys[i]);
213
50.8k
        }
214
396
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Line
Count
Source
197
12
                                Arena&) const override {
198
12
        std::vector<KeyType> keys_container;
199
12
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
12
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
12
        std::vector<size_t> hash_values(batch_size);
204
39
        for (size_t i = 0; i < batch_size; ++i) {
205
27
            hash_values[i] = set.hash(keys[i]);
206
27
        }
207
208
39
        for (size_t i = 0; i != batch_size; ++i) {
209
27
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
0
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
0
            }
212
27
            set.emplace_with_hash(hash_values[i], keys[i]);
213
27
        }
214
12
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Line
Count
Source
197
202
                                Arena&) const override {
198
202
        std::vector<KeyType> keys_container;
199
202
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
202
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
202
        std::vector<size_t> hash_values(batch_size);
204
1.45k
        for (size_t i = 0; i < batch_size; ++i) {
205
1.24k
            hash_values[i] = set.hash(keys[i]);
206
1.24k
        }
207
208
1.46k
        for (size_t i = 0; i != batch_size; ++i) {
209
1.26k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
282
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
282
            }
212
1.26k
            set.emplace_with_hash(hash_values[i], keys[i]);
213
1.26k
        }
214
202
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Line
Count
Source
197
116
                                Arena&) const override {
198
116
        std::vector<KeyType> keys_container;
199
116
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
116
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
116
        std::vector<size_t> hash_values(batch_size);
204
44.6k
        for (size_t i = 0; i < batch_size; ++i) {
205
44.5k
            hash_values[i] = set.hash(keys[i]);
206
44.5k
        }
207
208
44.7k
        for (size_t i = 0; i != batch_size; ++i) {
209
44.6k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
43.5k
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
43.5k
            }
212
44.6k
            set.emplace_with_hash(hash_values[i], keys[i]);
213
44.6k
        }
214
116
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Line
Count
Source
197
4
                                Arena&) const override {
198
4
        std::vector<KeyType> keys_container;
199
4
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
4
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
4
        std::vector<size_t> hash_values(batch_size);
204
8
        for (size_t i = 0; i < batch_size; ++i) {
205
4
            hash_values[i] = set.hash(keys[i]);
206
4
        }
207
208
8
        for (size_t i = 0; i != batch_size; ++i) {
209
4
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
0
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
0
            }
212
4
            set.emplace_with_hash(hash_values[i], keys[i]);
213
4
        }
214
4
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Line
Count
Source
197
50
                                Arena&) const override {
198
50
        std::vector<KeyType> keys_container;
199
50
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
50
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
50
        std::vector<size_t> hash_values(batch_size);
204
4.95k
        for (size_t i = 0; i < batch_size; ++i) {
205
4.90k
            hash_values[i] = set.hash(keys[i]);
206
4.90k
        }
207
208
4.93k
        for (size_t i = 0; i != batch_size; ++i) {
209
4.88k
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
4.09k
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
4.09k
            }
212
4.88k
            set.emplace_with_hash(hash_values[i], keys[i]);
213
4.88k
        }
214
50
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE22add_batch_single_placeEmPcPPKNS_7IColumnERNS_5ArenaE
Line
Count
Source
197
12
                                Arena&) const override {
198
12
        std::vector<KeyType> keys_container;
199
12
        const KeyType* keys = get_keys(keys_container, *columns[0], batch_size);
200
12
        auto& set = this->data(place).set;
201
202
        // Precompute hash values to avoid double computation in prefetch + insert
203
12
        std::vector<size_t> hash_values(batch_size);
204
24
        for (size_t i = 0; i < batch_size; ++i) {
205
12
            hash_values[i] = set.hash(keys[i]);
206
12
        }
207
208
24
        for (size_t i = 0; i != batch_size; ++i) {
209
12
            if (i + HASH_MAP_PREFETCH_DIST < batch_size) {
210
0
                set.prefetch_hash(hash_values[i + HASH_MAP_PREFETCH_DIST]);
211
0
            }
212
12
            set.emplace_with_hash(hash_values[i], keys[i]);
213
12
        }
214
12
    }
215
216
7.35k
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
7.35k
        auto& set = this->data(place).set;
218
7.35k
        buf.write_var_uint(set.size());
219
24.7k
        for (const auto& elem : set) {
220
24.7k
            buf.write_binary(elem);
221
24.7k
        }
222
7.35k
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
12
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
12
        auto& set = this->data(place).set;
218
12
        buf.write_var_uint(set.size());
219
12
        for (const auto& elem : set) {
220
11
            buf.write_binary(elem);
221
11
        }
222
12
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
6
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
6
        auto& set = this->data(place).set;
218
6
        buf.write_var_uint(set.size());
219
6
        for (const auto& elem : set) {
220
6
            buf.write_binary(elem);
221
6
        }
222
6
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE9serializeEPKcRNS_14BufferWritableE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
6.29k
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
6.29k
        auto& set = this->data(place).set;
218
6.29k
        buf.write_var_uint(set.size());
219
23.9k
        for (const auto& elem : set) {
220
23.9k
            buf.write_binary(elem);
221
23.9k
        }
222
6.29k
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
61
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
61
        auto& set = this->data(place).set;
218
61
        buf.write_var_uint(set.size());
219
62
        for (const auto& elem : set) {
220
62
            buf.write_binary(elem);
221
62
        }
222
61
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE9serializeEPKcRNS_14BufferWritableE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE9serializeEPKcRNS_14BufferWritableE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
11
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
11
        auto& set = this->data(place).set;
218
11
        buf.write_var_uint(set.size());
219
24
        for (const auto& elem : set) {
220
24
            buf.write_binary(elem);
221
24
        }
222
11
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE9serializeEPKcRNS_14BufferWritableE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
10
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
10
        auto& set = this->data(place).set;
218
10
        buf.write_var_uint(set.size());
219
20
        for (const auto& elem : set) {
220
20
            buf.write_binary(elem);
221
20
        }
222
10
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
892
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
892
        auto& set = this->data(place).set;
218
892
        buf.write_var_uint(set.size());
219
892
        for (const auto& elem : set) {
220
599
            buf.write_binary(elem);
221
599
        }
222
892
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
2
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
2
        auto& set = this->data(place).set;
218
2
        buf.write_var_uint(set.size());
219
12
        for (const auto& elem : set) {
220
12
            buf.write_binary(elem);
221
12
        }
222
2
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE9serializeEPKcRNS_14BufferWritableE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE9serializeEPKcRNS_14BufferWritableE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
50
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
50
        auto& set = this->data(place).set;
218
50
        buf.write_var_uint(set.size());
219
54
        for (const auto& elem : set) {
220
54
            buf.write_binary(elem);
221
54
        }
222
50
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
1
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
1
        auto& set = this->data(place).set;
218
1
        buf.write_var_uint(set.size());
219
12
        for (const auto& elem : set) {
220
12
            buf.write_binary(elem);
221
12
        }
222
1
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE9serializeEPKcRNS_14BufferWritableE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE9serializeEPKcRNS_14BufferWritableE
Line
Count
Source
216
12
    void serialize(ConstAggregateDataPtr __restrict place, BufferWritable& buf) const override {
217
12
        auto& set = this->data(place).set;
218
12
        buf.write_var_uint(set.size());
219
12
        for (const auto& elem : set) {
220
12
            buf.write_binary(elem);
221
12
        }
222
12
    }
223
224
    void deserialize_and_merge(AggregateDataPtr __restrict place, AggregateDataPtr __restrict rhs,
225
7.21k
                               BufferReadable& buf, Arena&) const override {
226
7.21k
        auto& set = this->data(place).set;
227
7.21k
        UInt64 size;
228
7.21k
        buf.read_var_uint(size);
229
230
7.21k
        set.rehash(size + set.size());
231
232
31.8k
        for (size_t i = 0; i < size; ++i) {
233
24.6k
            KeyType ref;
234
24.6k
            buf.read_binary(ref);
235
24.6k
            set.insert(ref);
236
24.6k
        }
237
7.21k
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
12
                               BufferReadable& buf, Arena&) const override {
226
12
        auto& set = this->data(place).set;
227
12
        UInt64 size;
228
12
        buf.read_var_uint(size);
229
230
12
        set.rehash(size + set.size());
231
232
23
        for (size_t i = 0; i < size; ++i) {
233
11
            KeyType ref;
234
11
            buf.read_binary(ref);
235
11
            set.insert(ref);
236
11
        }
237
12
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
6
                               BufferReadable& buf, Arena&) const override {
226
6
        auto& set = this->data(place).set;
227
6
        UInt64 size;
228
6
        buf.read_var_uint(size);
229
230
6
        set.rehash(size + set.size());
231
232
12
        for (size_t i = 0; i < size; ++i) {
233
6
            KeyType ref;
234
6
            buf.read_binary(ref);
235
6
            set.insert(ref);
236
6
        }
237
6
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
6.25k
                               BufferReadable& buf, Arena&) const override {
226
6.25k
        auto& set = this->data(place).set;
227
6.25k
        UInt64 size;
228
6.25k
        buf.read_var_uint(size);
229
230
6.25k
        set.rehash(size + set.size());
231
232
30.1k
        for (size_t i = 0; i < size; ++i) {
233
23.9k
            KeyType ref;
234
23.9k
            buf.read_binary(ref);
235
23.9k
            set.insert(ref);
236
23.9k
        }
237
6.25k
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
61
                               BufferReadable& buf, Arena&) const override {
226
61
        auto& set = this->data(place).set;
227
61
        UInt64 size;
228
61
        buf.read_var_uint(size);
229
230
61
        set.rehash(size + set.size());
231
232
123
        for (size_t i = 0; i < size; ++i) {
233
62
            KeyType ref;
234
62
            buf.read_binary(ref);
235
62
            set.insert(ref);
236
62
        }
237
61
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
11
                               BufferReadable& buf, Arena&) const override {
226
11
        auto& set = this->data(place).set;
227
11
        UInt64 size;
228
11
        buf.read_var_uint(size);
229
230
11
        set.rehash(size + set.size());
231
232
35
        for (size_t i = 0; i < size; ++i) {
233
24
            KeyType ref;
234
24
            buf.read_binary(ref);
235
24
            set.insert(ref);
236
24
        }
237
11
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
10
                               BufferReadable& buf, Arena&) const override {
226
10
        auto& set = this->data(place).set;
227
10
        UInt64 size;
228
10
        buf.read_var_uint(size);
229
230
10
        set.rehash(size + set.size());
231
232
30
        for (size_t i = 0; i < size; ++i) {
233
20
            KeyType ref;
234
20
            buf.read_binary(ref);
235
20
            set.insert(ref);
236
20
        }
237
10
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
791
                               BufferReadable& buf, Arena&) const override {
226
791
        auto& set = this->data(place).set;
227
791
        UInt64 size;
228
791
        buf.read_var_uint(size);
229
230
791
        set.rehash(size + set.size());
231
232
1.27k
        for (size_t i = 0; i < size; ++i) {
233
482
            KeyType ref;
234
482
            buf.read_binary(ref);
235
482
            set.insert(ref);
236
482
        }
237
791
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
2
                               BufferReadable& buf, Arena&) const override {
226
2
        auto& set = this->data(place).set;
227
2
        UInt64 size;
228
2
        buf.read_var_uint(size);
229
230
2
        set.rehash(size + set.size());
231
232
14
        for (size_t i = 0; i < size; ++i) {
233
12
            KeyType ref;
234
12
            buf.read_binary(ref);
235
12
            set.insert(ref);
236
12
        }
237
2
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
50
                               BufferReadable& buf, Arena&) const override {
226
50
        auto& set = this->data(place).set;
227
50
        UInt64 size;
228
50
        buf.read_var_uint(size);
229
230
50
        set.rehash(size + set.size());
231
232
104
        for (size_t i = 0; i < size; ++i) {
233
54
            KeyType ref;
234
54
            buf.read_binary(ref);
235
54
            set.insert(ref);
236
54
        }
237
50
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
1
                               BufferReadable& buf, Arena&) const override {
226
1
        auto& set = this->data(place).set;
227
1
        UInt64 size;
228
1
        buf.read_var_uint(size);
229
230
1
        set.rehash(size + set.size());
231
232
13
        for (size_t i = 0; i < size; ++i) {
233
12
            KeyType ref;
234
12
            buf.read_binary(ref);
235
12
            set.insert(ref);
236
12
        }
237
1
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE21deserialize_and_mergeEPcS5_RNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
225
12
                               BufferReadable& buf, Arena&) const override {
226
12
        auto& set = this->data(place).set;
227
12
        UInt64 size;
228
12
        buf.read_var_uint(size);
229
230
12
        set.rehash(size + set.size());
231
232
24
        for (size_t i = 0; i < size; ++i) {
233
12
            KeyType ref;
234
12
            buf.read_binary(ref);
235
12
            set.insert(ref);
236
12
        }
237
12
    }
238
239
    void deserialize(AggregateDataPtr __restrict place, BufferReadable& buf,
240
80
                     Arena&) const override {
241
80
        auto& set = this->data(place).set;
242
80
        UInt64 size;
243
80
        buf.read_var_uint(size);
244
245
80
        set.rehash(size + set.size());
246
247
171
        for (size_t i = 0; i < size; ++i) {
248
91
            KeyType ref;
249
91
            buf.read_binary(ref);
250
91
            set.insert(ref);
251
91
        }
252
80
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Line
Count
Source
240
80
                     Arena&) const override {
241
80
        auto& set = this->data(place).set;
242
80
        UInt64 size;
243
80
        buf.read_var_uint(size);
244
245
80
        set.rehash(size + set.size());
246
247
171
        for (size_t i = 0; i < size; ++i) {
248
91
            KeyType ref;
249
91
            buf.read_binary(ref);
250
91
            set.insert(ref);
251
91
        }
252
80
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE
253
254
10.6k
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
10.6k
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
10.6k
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE2ENS_30AggregateFunctionUniqExactDataILS1_2EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
11
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
11
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
11
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE3ENS_30AggregateFunctionUniqExactDataILS1_3EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
12
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
12
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
12
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE4ENS_30AggregateFunctionUniqExactDataILS1_4EEEE18insert_result_intoEPKcRNS_7IColumnE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE5ENS_30AggregateFunctionUniqExactDataILS1_5EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
9.29k
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
9.29k
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
9.29k
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE6ENS_30AggregateFunctionUniqExactDataILS1_6EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
257
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
257
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
257
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE7ENS_30AggregateFunctionUniqExactDataILS1_7EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
10
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
10
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
10
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE28ENS_30AggregateFunctionUniqExactDataILS1_28EEEE18insert_result_intoEPKcRNS_7IColumnE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE29ENS_30AggregateFunctionUniqExactDataILS1_29EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
11
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
11
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
11
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE30ENS_30AggregateFunctionUniqExactDataILS1_30EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
17
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
17
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
17
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE35ENS_30AggregateFunctionUniqExactDataILS1_35EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
16
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
16
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
16
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE10ENS_30AggregateFunctionUniqExactDataILS1_10EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
825
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
825
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
825
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE17ENS_30AggregateFunctionUniqExactDataILS1_17EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
2
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
2
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
2
    }
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE8ENS_30AggregateFunctionUniqExactDataILS1_8EEEE18insert_result_intoEPKcRNS_7IColumnE
Unexecuted instantiation: _ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE9ENS_30AggregateFunctionUniqExactDataILS1_9EEEE18insert_result_intoEPKcRNS_7IColumnE
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE25ENS_30AggregateFunctionUniqExactDataILS1_25EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
95
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
95
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
95
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE26ENS_30AggregateFunctionUniqExactDataILS1_26EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
1
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
1
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
1
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE42ENS_30AggregateFunctionUniqExactDataILS1_42EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
42
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
42
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
42
    }
_ZNK5doris21AggregateFunctionUniqILNS_13PrimitiveTypeE41ENS_30AggregateFunctionUniqExactDataILS1_41EEEE18insert_result_intoEPKcRNS_7IColumnE
Line
Count
Source
254
4
    void insert_result_into(ConstAggregateDataPtr __restrict place, IColumn& to) const override {
255
4
        assert_cast<ColumnInt64&>(to).get_data().push_back(this->data(place).set.size());
256
4
    }
257
};
258
259
} // namespace doris