Coverage Report

Created: 2026-03-15 20:53

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
be/src/exprs/aggregate/aggregate_function_window_impl.h
Line
Count
Source
1
// Licensed to the Apache Software Foundation (ASF) under one
2
// or more contributor license agreements.  See the NOTICE file
3
// distributed with this work for additional information
4
// regarding copyright ownership.  The ASF licenses this file
5
// to you under the Apache License, Version 2.0 (the
6
// "License"); you may not use this file except in compliance
7
// with the License.  You may obtain a copy of the License at
8
//
9
//   http://www.apache.org/licenses/LICENSE-2.0
10
//
11
// Unless required by applicable law or agreed to in writing,
12
// software distributed under the License is distributed on an
13
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
// KIND, either express or implied.  See the License for the
15
// specific language governing permissions and limitations
16
// under the License.
17
18
#pragma once
19
20
#include <string>
21
#include <variant>
22
23
#include "core/data_type/data_type.h"
24
#include "exec/common/template_helpers.hpp"
25
#include "exprs/aggregate/aggregate_function_simple_factory.h"
26
#include "exprs/aggregate/aggregate_function_window.h"
27
#include "exprs/aggregate/helpers.h"
28
29
namespace doris {
30
#include "common/compile_check_begin.h"
31
32
template <template <typename> class AggregateFunctionTemplate,
33
          template <typename ColVecType, bool, bool> class Data,
34
          template <typename, bool> class Impl, bool result_is_nullable, bool arg_is_nullable>
35
AggregateFunctionPtr create_function_lead_lag_first_last(const String& name,
36
1
                                                         const DataTypes& argument_types) {
37
1
    bool arg_ignore_null_value = false;
38
    // FE have rewrite case first_value(k1,false)--->first_value(k1)
39
    // so size is 2, must will be arg_ignore_null_value
40
1
    if (argument_types.size() == 2) {
41
0
        DCHECK(name == "first_value" || name == "last_value" || name == "nth_value")
42
0
                << "invalid function name: " << name;
43
0
        arg_ignore_null_value = true;
44
0
    }
45
1
    switch (argument_types[0]->get_primitive_type()) {
46
0
    case PrimitiveType::TYPE_BOOLEAN: {
47
0
        if (arg_ignore_null_value) {
48
0
            return std::make_shared<AggregateFunctionTemplate<
49
0
                    Impl<Data<ColumnUInt8, result_is_nullable, arg_is_nullable>, true>>>(
50
0
                    argument_types);
51
0
        } else {
52
0
            return std::make_shared<AggregateFunctionTemplate<
53
0
                    Impl<Data<ColumnUInt8, result_is_nullable, arg_is_nullable>, false>>>(
54
0
                    argument_types);
55
0
        }
56
0
    }
57
0
    case PrimitiveType::TYPE_TINYINT: {
58
0
        if (arg_ignore_null_value) {
59
0
            return std::make_shared<AggregateFunctionTemplate<
60
0
                    Impl<Data<ColumnInt8, result_is_nullable, arg_is_nullable>, true>>>(
61
0
                    argument_types);
62
0
        } else {
63
0
            return std::make_shared<AggregateFunctionTemplate<
64
0
                    Impl<Data<ColumnInt8, result_is_nullable, arg_is_nullable>, false>>>(
65
0
                    argument_types);
66
0
        }
67
0
    }
68
0
    case PrimitiveType::TYPE_SMALLINT: {
69
0
        if (arg_ignore_null_value) {
70
0
            return std::make_shared<AggregateFunctionTemplate<
71
0
                    Impl<Data<ColumnInt16, result_is_nullable, arg_is_nullable>, true>>>(
72
0
                    argument_types);
73
0
        } else {
74
0
            return std::make_shared<AggregateFunctionTemplate<
75
0
                    Impl<Data<ColumnInt16, result_is_nullable, arg_is_nullable>, false>>>(
76
0
                    argument_types);
77
0
        }
78
0
    }
79
0
    case PrimitiveType::TYPE_INT: {
80
0
        if (arg_ignore_null_value) {
81
0
            return std::make_shared<AggregateFunctionTemplate<
82
0
                    Impl<Data<ColumnInt32, result_is_nullable, arg_is_nullable>, true>>>(
83
0
                    argument_types);
84
0
        } else {
85
0
            return std::make_shared<AggregateFunctionTemplate<
86
0
                    Impl<Data<ColumnInt32, result_is_nullable, arg_is_nullable>, false>>>(
87
0
                    argument_types);
88
0
        }
89
0
    }
90
1
    case PrimitiveType::TYPE_BIGINT: {
91
1
        if (arg_ignore_null_value) {
92
0
            return std::make_shared<AggregateFunctionTemplate<
93
0
                    Impl<Data<ColumnInt64, result_is_nullable, arg_is_nullable>, true>>>(
94
0
                    argument_types);
95
1
        } else {
96
1
            return std::make_shared<AggregateFunctionTemplate<
97
1
                    Impl<Data<ColumnInt64, result_is_nullable, arg_is_nullable>, false>>>(
98
1
                    argument_types);
99
1
        }
100
1
    }
101
0
    case PrimitiveType::TYPE_LARGEINT: {
102
0
        if (arg_ignore_null_value) {
103
0
            return std::make_shared<AggregateFunctionTemplate<
104
0
                    Impl<Data<ColumnInt128, result_is_nullable, arg_is_nullable>, true>>>(
105
0
                    argument_types);
106
0
        } else {
107
0
            return std::make_shared<AggregateFunctionTemplate<
108
0
                    Impl<Data<ColumnInt128, result_is_nullable, arg_is_nullable>, false>>>(
109
0
                    argument_types);
110
0
        }
111
0
    }
112
0
    case PrimitiveType::TYPE_FLOAT: {
113
0
        if (arg_ignore_null_value) {
114
0
            return std::make_shared<AggregateFunctionTemplate<
115
0
                    Impl<Data<ColumnFloat32, result_is_nullable, arg_is_nullable>, true>>>(
116
0
                    argument_types);
117
0
        } else {
118
0
            return std::make_shared<AggregateFunctionTemplate<
119
0
                    Impl<Data<ColumnFloat32, result_is_nullable, arg_is_nullable>, false>>>(
120
0
                    argument_types);
121
0
        }
122
0
    }
123
0
    case PrimitiveType::TYPE_DOUBLE: {
124
0
        if (arg_ignore_null_value) {
125
0
            return std::make_shared<AggregateFunctionTemplate<
126
0
                    Impl<Data<ColumnFloat64, result_is_nullable, arg_is_nullable>, true>>>(
127
0
                    argument_types);
128
0
        } else {
129
0
            return std::make_shared<AggregateFunctionTemplate<
130
0
                    Impl<Data<ColumnFloat64, result_is_nullable, arg_is_nullable>, false>>>(
131
0
                    argument_types);
132
0
        }
133
0
    }
134
0
    case PrimitiveType::TYPE_DECIMAL32: {
135
0
        if (arg_ignore_null_value) {
136
0
            return std::make_shared<AggregateFunctionTemplate<
137
0
                    Impl<Data<ColumnDecimal32, result_is_nullable, arg_is_nullable>, true>>>(
138
0
                    argument_types);
139
0
        } else {
140
0
            return std::make_shared<AggregateFunctionTemplate<
141
0
                    Impl<Data<ColumnDecimal32, result_is_nullable, arg_is_nullable>, false>>>(
142
0
                    argument_types);
143
0
        }
144
0
    }
145
0
    case PrimitiveType::TYPE_DECIMAL64: {
146
0
        if (arg_ignore_null_value) {
147
0
            return std::make_shared<AggregateFunctionTemplate<
148
0
                    Impl<Data<ColumnDecimal64, result_is_nullable, arg_is_nullable>, true>>>(
149
0
                    argument_types);
150
0
        } else {
151
0
            return std::make_shared<AggregateFunctionTemplate<
152
0
                    Impl<Data<ColumnDecimal64, result_is_nullable, arg_is_nullable>, false>>>(
153
0
                    argument_types);
154
0
        }
155
0
    }
156
0
    case PrimitiveType::TYPE_DECIMAL128I: {
157
0
        if (arg_ignore_null_value) {
158
0
            return std::make_shared<AggregateFunctionTemplate<
159
0
                    Impl<Data<ColumnDecimal128V3, result_is_nullable, arg_is_nullable>, true>>>(
160
0
                    argument_types);
161
0
        } else {
162
0
            return std::make_shared<AggregateFunctionTemplate<
163
0
                    Impl<Data<ColumnDecimal128V3, result_is_nullable, arg_is_nullable>, false>>>(
164
0
                    argument_types);
165
0
        }
166
0
    }
167
0
    case PrimitiveType::TYPE_DECIMALV2: {
168
0
        if (arg_ignore_null_value) {
169
0
            return std::make_shared<AggregateFunctionTemplate<
170
0
                    Impl<Data<ColumnDecimal128V2, result_is_nullable, arg_is_nullable>, true>>>(
171
0
                    argument_types);
172
0
        } else {
173
0
            return std::make_shared<AggregateFunctionTemplate<
174
0
                    Impl<Data<ColumnDecimal128V2, result_is_nullable, arg_is_nullable>, false>>>(
175
0
                    argument_types);
176
0
        }
177
0
    }
178
0
    case PrimitiveType::TYPE_DECIMAL256: {
179
0
        if (arg_ignore_null_value) {
180
0
            return std::make_shared<AggregateFunctionTemplate<
181
0
                    Impl<Data<ColumnDecimal256, result_is_nullable, arg_is_nullable>, true>>>(
182
0
                    argument_types);
183
0
        } else {
184
0
            return std::make_shared<AggregateFunctionTemplate<
185
0
                    Impl<Data<ColumnDecimal256, result_is_nullable, arg_is_nullable>, false>>>(
186
0
                    argument_types);
187
0
        }
188
0
    }
189
0
    case PrimitiveType::TYPE_STRING:
190
0
    case PrimitiveType::TYPE_CHAR:
191
0
    case PrimitiveType::TYPE_VARCHAR:
192
0
    case PrimitiveType::TYPE_JSONB: {
193
0
        if (arg_ignore_null_value) {
194
0
            return std::make_shared<AggregateFunctionTemplate<
195
0
                    Impl<Data<ColumnString, result_is_nullable, arg_is_nullable>, true>>>(
196
0
                    argument_types);
197
0
        } else {
198
0
            return std::make_shared<AggregateFunctionTemplate<
199
0
                    Impl<Data<ColumnString, result_is_nullable, arg_is_nullable>, false>>>(
200
0
                    argument_types);
201
0
        }
202
0
    }
203
0
    case PrimitiveType::TYPE_DATETIMEV2: {
204
0
        if (arg_ignore_null_value) {
205
0
            return std::make_shared<AggregateFunctionTemplate<
206
0
                    Impl<Data<ColumnDateTimeV2, result_is_nullable, arg_is_nullable>, true>>>(
207
0
                    argument_types);
208
0
        } else {
209
0
            return std::make_shared<AggregateFunctionTemplate<
210
0
                    Impl<Data<ColumnDateTimeV2, result_is_nullable, arg_is_nullable>, false>>>(
211
0
                    argument_types);
212
0
        }
213
0
    }
214
0
    case PrimitiveType::TYPE_DATEV2: {
215
0
        if (arg_ignore_null_value) {
216
0
            return std::make_shared<AggregateFunctionTemplate<
217
0
                    Impl<Data<ColumnDateV2, result_is_nullable, arg_is_nullable>, true>>>(
218
0
                    argument_types);
219
0
        } else {
220
0
            return std::make_shared<AggregateFunctionTemplate<
221
0
                    Impl<Data<ColumnDateV2, result_is_nullable, arg_is_nullable>, false>>>(
222
0
                    argument_types);
223
0
        }
224
0
    }
225
0
    case PrimitiveType::TYPE_IPV4: {
226
0
        if (arg_ignore_null_value) {
227
0
            return std::make_shared<AggregateFunctionTemplate<
228
0
                    Impl<Data<ColumnIPv4, result_is_nullable, arg_is_nullable>, true>>>(
229
0
                    argument_types);
230
0
        } else {
231
0
            return std::make_shared<AggregateFunctionTemplate<
232
0
                    Impl<Data<ColumnIPv4, result_is_nullable, arg_is_nullable>, false>>>(
233
0
                    argument_types);
234
0
        }
235
0
    }
236
0
    case PrimitiveType::TYPE_IPV6: {
237
0
        if (arg_ignore_null_value) {
238
0
            return std::make_shared<AggregateFunctionTemplate<
239
0
                    Impl<Data<ColumnIPv6, result_is_nullable, arg_is_nullable>, true>>>(
240
0
                    argument_types);
241
0
        } else {
242
0
            return std::make_shared<AggregateFunctionTemplate<
243
0
                    Impl<Data<ColumnIPv6, result_is_nullable, arg_is_nullable>, false>>>(
244
0
                    argument_types);
245
0
        }
246
0
    }
247
0
    case PrimitiveType::TYPE_ARRAY: {
248
0
        if (arg_ignore_null_value) {
249
0
            return std::make_shared<AggregateFunctionTemplate<
250
0
                    Impl<Data<ColumnArray, result_is_nullable, arg_is_nullable>, true>>>(
251
0
                    argument_types);
252
0
        } else {
253
0
            return std::make_shared<AggregateFunctionTemplate<
254
0
                    Impl<Data<ColumnArray, result_is_nullable, arg_is_nullable>, false>>>(
255
0
                    argument_types);
256
0
        }
257
0
    }
258
0
    case PrimitiveType::TYPE_MAP: {
259
0
        if (arg_ignore_null_value) {
260
0
            return std::make_shared<AggregateFunctionTemplate<
261
0
                    Impl<Data<ColumnMap, result_is_nullable, arg_is_nullable>, true>>>(
262
0
                    argument_types);
263
0
        } else {
264
0
            return std::make_shared<AggregateFunctionTemplate<
265
0
                    Impl<Data<ColumnMap, result_is_nullable, arg_is_nullable>, false>>>(
266
0
                    argument_types);
267
0
        }
268
0
    }
269
0
    case PrimitiveType::TYPE_STRUCT: {
270
0
        if (arg_ignore_null_value) {
271
0
            return std::make_shared<AggregateFunctionTemplate<
272
0
                    Impl<Data<ColumnStruct, result_is_nullable, arg_is_nullable>, true>>>(
273
0
                    argument_types);
274
0
        } else {
275
0
            return std::make_shared<AggregateFunctionTemplate<
276
0
                    Impl<Data<ColumnStruct, result_is_nullable, arg_is_nullable>, false>>>(
277
0
                    argument_types);
278
0
        }
279
0
    }
280
0
    case PrimitiveType::TYPE_VARIANT: {
281
0
        if (arg_ignore_null_value) {
282
0
            return std::make_shared<AggregateFunctionTemplate<
283
0
                    Impl<Data<ColumnVariant, result_is_nullable, arg_is_nullable>, true>>>(
284
0
                    argument_types);
285
0
        } else {
286
0
            return std::make_shared<AggregateFunctionTemplate<
287
0
                    Impl<Data<ColumnVariant, result_is_nullable, arg_is_nullable>, false>>>(
288
0
                    argument_types);
289
0
        }
290
0
    }
291
0
    case PrimitiveType::TYPE_BITMAP: {
292
0
        if (arg_ignore_null_value) {
293
0
            return std::make_shared<AggregateFunctionTemplate<
294
0
                    Impl<Data<ColumnBitmap, result_is_nullable, arg_is_nullable>, true>>>(
295
0
                    argument_types);
296
0
        } else {
297
0
            return std::make_shared<AggregateFunctionTemplate<
298
0
                    Impl<Data<ColumnBitmap, result_is_nullable, arg_is_nullable>, false>>>(
299
0
                    argument_types);
300
0
        }
301
0
    }
302
0
    case PrimitiveType::TYPE_HLL: {
303
0
        if (arg_ignore_null_value) {
304
0
            return std::make_shared<AggregateFunctionTemplate<
305
0
                    Impl<Data<ColumnHLL, result_is_nullable, arg_is_nullable>, true>>>(
306
0
                    argument_types);
307
0
        } else {
308
0
            return std::make_shared<AggregateFunctionTemplate<
309
0
                    Impl<Data<ColumnHLL, result_is_nullable, arg_is_nullable>, false>>>(
310
0
                    argument_types);
311
0
        }
312
0
    }
313
0
    case PrimitiveType::TYPE_QUANTILE_STATE: {
314
0
        if (arg_ignore_null_value) {
315
0
            return std::make_shared<AggregateFunctionTemplate<
316
0
                    Impl<Data<ColumnQuantileState, result_is_nullable, arg_is_nullable>, true>>>(
317
0
                    argument_types);
318
0
        } else {
319
0
            return std::make_shared<AggregateFunctionTemplate<
320
0
                    Impl<Data<ColumnQuantileState, result_is_nullable, arg_is_nullable>, false>>>(
321
0
                    argument_types);
322
0
        }
323
0
    }
324
0
    default:
325
0
        LOG(WARNING) << "with unknowed type, failed in  create_aggregate_function_" << name
326
0
                     << " and type is: " << argument_types[0]->get_name();
327
0
        return nullptr;
328
1
    }
329
1
}
_ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_23WindowFunctionFirstImplELb0ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Line
Count
Source
36
1
                                                         const DataTypes& argument_types) {
37
1
    bool arg_ignore_null_value = false;
38
    // FE have rewrite case first_value(k1,false)--->first_value(k1)
39
    // so size is 2, must will be arg_ignore_null_value
40
1
    if (argument_types.size() == 2) {
41
0
        DCHECK(name == "first_value" || name == "last_value" || name == "nth_value")
42
0
                << "invalid function name: " << name;
43
0
        arg_ignore_null_value = true;
44
0
    }
45
1
    switch (argument_types[0]->get_primitive_type()) {
46
0
    case PrimitiveType::TYPE_BOOLEAN: {
47
0
        if (arg_ignore_null_value) {
48
0
            return std::make_shared<AggregateFunctionTemplate<
49
0
                    Impl<Data<ColumnUInt8, result_is_nullable, arg_is_nullable>, true>>>(
50
0
                    argument_types);
51
0
        } else {
52
0
            return std::make_shared<AggregateFunctionTemplate<
53
0
                    Impl<Data<ColumnUInt8, result_is_nullable, arg_is_nullable>, false>>>(
54
0
                    argument_types);
55
0
        }
56
0
    }
57
0
    case PrimitiveType::TYPE_TINYINT: {
58
0
        if (arg_ignore_null_value) {
59
0
            return std::make_shared<AggregateFunctionTemplate<
60
0
                    Impl<Data<ColumnInt8, result_is_nullable, arg_is_nullable>, true>>>(
61
0
                    argument_types);
62
0
        } else {
63
0
            return std::make_shared<AggregateFunctionTemplate<
64
0
                    Impl<Data<ColumnInt8, result_is_nullable, arg_is_nullable>, false>>>(
65
0
                    argument_types);
66
0
        }
67
0
    }
68
0
    case PrimitiveType::TYPE_SMALLINT: {
69
0
        if (arg_ignore_null_value) {
70
0
            return std::make_shared<AggregateFunctionTemplate<
71
0
                    Impl<Data<ColumnInt16, result_is_nullable, arg_is_nullable>, true>>>(
72
0
                    argument_types);
73
0
        } else {
74
0
            return std::make_shared<AggregateFunctionTemplate<
75
0
                    Impl<Data<ColumnInt16, result_is_nullable, arg_is_nullable>, false>>>(
76
0
                    argument_types);
77
0
        }
78
0
    }
79
0
    case PrimitiveType::TYPE_INT: {
80
0
        if (arg_ignore_null_value) {
81
0
            return std::make_shared<AggregateFunctionTemplate<
82
0
                    Impl<Data<ColumnInt32, result_is_nullable, arg_is_nullable>, true>>>(
83
0
                    argument_types);
84
0
        } else {
85
0
            return std::make_shared<AggregateFunctionTemplate<
86
0
                    Impl<Data<ColumnInt32, result_is_nullable, arg_is_nullable>, false>>>(
87
0
                    argument_types);
88
0
        }
89
0
    }
90
1
    case PrimitiveType::TYPE_BIGINT: {
91
1
        if (arg_ignore_null_value) {
92
0
            return std::make_shared<AggregateFunctionTemplate<
93
0
                    Impl<Data<ColumnInt64, result_is_nullable, arg_is_nullable>, true>>>(
94
0
                    argument_types);
95
1
        } else {
96
1
            return std::make_shared<AggregateFunctionTemplate<
97
1
                    Impl<Data<ColumnInt64, result_is_nullable, arg_is_nullable>, false>>>(
98
1
                    argument_types);
99
1
        }
100
1
    }
101
0
    case PrimitiveType::TYPE_LARGEINT: {
102
0
        if (arg_ignore_null_value) {
103
0
            return std::make_shared<AggregateFunctionTemplate<
104
0
                    Impl<Data<ColumnInt128, result_is_nullable, arg_is_nullable>, true>>>(
105
0
                    argument_types);
106
0
        } else {
107
0
            return std::make_shared<AggregateFunctionTemplate<
108
0
                    Impl<Data<ColumnInt128, result_is_nullable, arg_is_nullable>, false>>>(
109
0
                    argument_types);
110
0
        }
111
0
    }
112
0
    case PrimitiveType::TYPE_FLOAT: {
113
0
        if (arg_ignore_null_value) {
114
0
            return std::make_shared<AggregateFunctionTemplate<
115
0
                    Impl<Data<ColumnFloat32, result_is_nullable, arg_is_nullable>, true>>>(
116
0
                    argument_types);
117
0
        } else {
118
0
            return std::make_shared<AggregateFunctionTemplate<
119
0
                    Impl<Data<ColumnFloat32, result_is_nullable, arg_is_nullable>, false>>>(
120
0
                    argument_types);
121
0
        }
122
0
    }
123
0
    case PrimitiveType::TYPE_DOUBLE: {
124
0
        if (arg_ignore_null_value) {
125
0
            return std::make_shared<AggregateFunctionTemplate<
126
0
                    Impl<Data<ColumnFloat64, result_is_nullable, arg_is_nullable>, true>>>(
127
0
                    argument_types);
128
0
        } else {
129
0
            return std::make_shared<AggregateFunctionTemplate<
130
0
                    Impl<Data<ColumnFloat64, result_is_nullable, arg_is_nullable>, false>>>(
131
0
                    argument_types);
132
0
        }
133
0
    }
134
0
    case PrimitiveType::TYPE_DECIMAL32: {
135
0
        if (arg_ignore_null_value) {
136
0
            return std::make_shared<AggregateFunctionTemplate<
137
0
                    Impl<Data<ColumnDecimal32, result_is_nullable, arg_is_nullable>, true>>>(
138
0
                    argument_types);
139
0
        } else {
140
0
            return std::make_shared<AggregateFunctionTemplate<
141
0
                    Impl<Data<ColumnDecimal32, result_is_nullable, arg_is_nullable>, false>>>(
142
0
                    argument_types);
143
0
        }
144
0
    }
145
0
    case PrimitiveType::TYPE_DECIMAL64: {
146
0
        if (arg_ignore_null_value) {
147
0
            return std::make_shared<AggregateFunctionTemplate<
148
0
                    Impl<Data<ColumnDecimal64, result_is_nullable, arg_is_nullable>, true>>>(
149
0
                    argument_types);
150
0
        } else {
151
0
            return std::make_shared<AggregateFunctionTemplate<
152
0
                    Impl<Data<ColumnDecimal64, result_is_nullable, arg_is_nullable>, false>>>(
153
0
                    argument_types);
154
0
        }
155
0
    }
156
0
    case PrimitiveType::TYPE_DECIMAL128I: {
157
0
        if (arg_ignore_null_value) {
158
0
            return std::make_shared<AggregateFunctionTemplate<
159
0
                    Impl<Data<ColumnDecimal128V3, result_is_nullable, arg_is_nullable>, true>>>(
160
0
                    argument_types);
161
0
        } else {
162
0
            return std::make_shared<AggregateFunctionTemplate<
163
0
                    Impl<Data<ColumnDecimal128V3, result_is_nullable, arg_is_nullable>, false>>>(
164
0
                    argument_types);
165
0
        }
166
0
    }
167
0
    case PrimitiveType::TYPE_DECIMALV2: {
168
0
        if (arg_ignore_null_value) {
169
0
            return std::make_shared<AggregateFunctionTemplate<
170
0
                    Impl<Data<ColumnDecimal128V2, result_is_nullable, arg_is_nullable>, true>>>(
171
0
                    argument_types);
172
0
        } else {
173
0
            return std::make_shared<AggregateFunctionTemplate<
174
0
                    Impl<Data<ColumnDecimal128V2, result_is_nullable, arg_is_nullable>, false>>>(
175
0
                    argument_types);
176
0
        }
177
0
    }
178
0
    case PrimitiveType::TYPE_DECIMAL256: {
179
0
        if (arg_ignore_null_value) {
180
0
            return std::make_shared<AggregateFunctionTemplate<
181
0
                    Impl<Data<ColumnDecimal256, result_is_nullable, arg_is_nullable>, true>>>(
182
0
                    argument_types);
183
0
        } else {
184
0
            return std::make_shared<AggregateFunctionTemplate<
185
0
                    Impl<Data<ColumnDecimal256, result_is_nullable, arg_is_nullable>, false>>>(
186
0
                    argument_types);
187
0
        }
188
0
    }
189
0
    case PrimitiveType::TYPE_STRING:
190
0
    case PrimitiveType::TYPE_CHAR:
191
0
    case PrimitiveType::TYPE_VARCHAR:
192
0
    case PrimitiveType::TYPE_JSONB: {
193
0
        if (arg_ignore_null_value) {
194
0
            return std::make_shared<AggregateFunctionTemplate<
195
0
                    Impl<Data<ColumnString, result_is_nullable, arg_is_nullable>, true>>>(
196
0
                    argument_types);
197
0
        } else {
198
0
            return std::make_shared<AggregateFunctionTemplate<
199
0
                    Impl<Data<ColumnString, result_is_nullable, arg_is_nullable>, false>>>(
200
0
                    argument_types);
201
0
        }
202
0
    }
203
0
    case PrimitiveType::TYPE_DATETIMEV2: {
204
0
        if (arg_ignore_null_value) {
205
0
            return std::make_shared<AggregateFunctionTemplate<
206
0
                    Impl<Data<ColumnDateTimeV2, result_is_nullable, arg_is_nullable>, true>>>(
207
0
                    argument_types);
208
0
        } else {
209
0
            return std::make_shared<AggregateFunctionTemplate<
210
0
                    Impl<Data<ColumnDateTimeV2, result_is_nullable, arg_is_nullable>, false>>>(
211
0
                    argument_types);
212
0
        }
213
0
    }
214
0
    case PrimitiveType::TYPE_DATEV2: {
215
0
        if (arg_ignore_null_value) {
216
0
            return std::make_shared<AggregateFunctionTemplate<
217
0
                    Impl<Data<ColumnDateV2, result_is_nullable, arg_is_nullable>, true>>>(
218
0
                    argument_types);
219
0
        } else {
220
0
            return std::make_shared<AggregateFunctionTemplate<
221
0
                    Impl<Data<ColumnDateV2, result_is_nullable, arg_is_nullable>, false>>>(
222
0
                    argument_types);
223
0
        }
224
0
    }
225
0
    case PrimitiveType::TYPE_IPV4: {
226
0
        if (arg_ignore_null_value) {
227
0
            return std::make_shared<AggregateFunctionTemplate<
228
0
                    Impl<Data<ColumnIPv4, result_is_nullable, arg_is_nullable>, true>>>(
229
0
                    argument_types);
230
0
        } else {
231
0
            return std::make_shared<AggregateFunctionTemplate<
232
0
                    Impl<Data<ColumnIPv4, result_is_nullable, arg_is_nullable>, false>>>(
233
0
                    argument_types);
234
0
        }
235
0
    }
236
0
    case PrimitiveType::TYPE_IPV6: {
237
0
        if (arg_ignore_null_value) {
238
0
            return std::make_shared<AggregateFunctionTemplate<
239
0
                    Impl<Data<ColumnIPv6, result_is_nullable, arg_is_nullable>, true>>>(
240
0
                    argument_types);
241
0
        } else {
242
0
            return std::make_shared<AggregateFunctionTemplate<
243
0
                    Impl<Data<ColumnIPv6, result_is_nullable, arg_is_nullable>, false>>>(
244
0
                    argument_types);
245
0
        }
246
0
    }
247
0
    case PrimitiveType::TYPE_ARRAY: {
248
0
        if (arg_ignore_null_value) {
249
0
            return std::make_shared<AggregateFunctionTemplate<
250
0
                    Impl<Data<ColumnArray, result_is_nullable, arg_is_nullable>, true>>>(
251
0
                    argument_types);
252
0
        } else {
253
0
            return std::make_shared<AggregateFunctionTemplate<
254
0
                    Impl<Data<ColumnArray, result_is_nullable, arg_is_nullable>, false>>>(
255
0
                    argument_types);
256
0
        }
257
0
    }
258
0
    case PrimitiveType::TYPE_MAP: {
259
0
        if (arg_ignore_null_value) {
260
0
            return std::make_shared<AggregateFunctionTemplate<
261
0
                    Impl<Data<ColumnMap, result_is_nullable, arg_is_nullable>, true>>>(
262
0
                    argument_types);
263
0
        } else {
264
0
            return std::make_shared<AggregateFunctionTemplate<
265
0
                    Impl<Data<ColumnMap, result_is_nullable, arg_is_nullable>, false>>>(
266
0
                    argument_types);
267
0
        }
268
0
    }
269
0
    case PrimitiveType::TYPE_STRUCT: {
270
0
        if (arg_ignore_null_value) {
271
0
            return std::make_shared<AggregateFunctionTemplate<
272
0
                    Impl<Data<ColumnStruct, result_is_nullable, arg_is_nullable>, true>>>(
273
0
                    argument_types);
274
0
        } else {
275
0
            return std::make_shared<AggregateFunctionTemplate<
276
0
                    Impl<Data<ColumnStruct, result_is_nullable, arg_is_nullable>, false>>>(
277
0
                    argument_types);
278
0
        }
279
0
    }
280
0
    case PrimitiveType::TYPE_VARIANT: {
281
0
        if (arg_ignore_null_value) {
282
0
            return std::make_shared<AggregateFunctionTemplate<
283
0
                    Impl<Data<ColumnVariant, result_is_nullable, arg_is_nullable>, true>>>(
284
0
                    argument_types);
285
0
        } else {
286
0
            return std::make_shared<AggregateFunctionTemplate<
287
0
                    Impl<Data<ColumnVariant, result_is_nullable, arg_is_nullable>, false>>>(
288
0
                    argument_types);
289
0
        }
290
0
    }
291
0
    case PrimitiveType::TYPE_BITMAP: {
292
0
        if (arg_ignore_null_value) {
293
0
            return std::make_shared<AggregateFunctionTemplate<
294
0
                    Impl<Data<ColumnBitmap, result_is_nullable, arg_is_nullable>, true>>>(
295
0
                    argument_types);
296
0
        } else {
297
0
            return std::make_shared<AggregateFunctionTemplate<
298
0
                    Impl<Data<ColumnBitmap, result_is_nullable, arg_is_nullable>, false>>>(
299
0
                    argument_types);
300
0
        }
301
0
    }
302
0
    case PrimitiveType::TYPE_HLL: {
303
0
        if (arg_ignore_null_value) {
304
0
            return std::make_shared<AggregateFunctionTemplate<
305
0
                    Impl<Data<ColumnHLL, result_is_nullable, arg_is_nullable>, true>>>(
306
0
                    argument_types);
307
0
        } else {
308
0
            return std::make_shared<AggregateFunctionTemplate<
309
0
                    Impl<Data<ColumnHLL, result_is_nullable, arg_is_nullable>, false>>>(
310
0
                    argument_types);
311
0
        }
312
0
    }
313
0
    case PrimitiveType::TYPE_QUANTILE_STATE: {
314
0
        if (arg_ignore_null_value) {
315
0
            return std::make_shared<AggregateFunctionTemplate<
316
0
                    Impl<Data<ColumnQuantileState, result_is_nullable, arg_is_nullable>, true>>>(
317
0
                    argument_types);
318
0
        } else {
319
0
            return std::make_shared<AggregateFunctionTemplate<
320
0
                    Impl<Data<ColumnQuantileState, result_is_nullable, arg_is_nullable>, false>>>(
321
0
                    argument_types);
322
0
        }
323
0
    }
324
0
    default:
325
        LOG(WARNING) << "with unknowed type, failed in  create_aggregate_function_" << name
326
0
                     << " and type is: " << argument_types[0]->get_name();
327
0
        return nullptr;
328
1
    }
329
1
}
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_23WindowFunctionFirstImplELb0ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_23WindowFunctionFirstImplELb1ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_23WindowFunctionFirstImplELb1ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_21WindowFunctionLagImplELb0ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_21WindowFunctionLagImplELb0ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_21WindowFunctionLagImplELb1ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_21WindowFunctionLagImplELb1ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_22WindowFunctionLastImplELb0ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_22WindowFunctionLastImplELb0ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_22WindowFunctionLastImplELb1ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_13FirstLastDataENS_22WindowFunctionLastImplELb1ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_22WindowFunctionLeadImplELb0ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_22WindowFunctionLeadImplELb0ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_22WindowFunctionLeadImplELb1ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_11LeadLagDataENS_22WindowFunctionLeadImplELb1ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_12NthValueDataENS_26WindowFunctionNthValueImplELb0ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_12NthValueDataENS_26WindowFunctionNthValueImplELb0ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_12NthValueDataENS_26WindowFunctionNthValueImplELb1ELb0EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
Unexecuted instantiation: _ZN5doris35create_function_lead_lag_first_lastINS_18WindowFunctionDataENS_12NthValueDataENS_26WindowFunctionNthValueImplELb1ELb1EEESt10shared_ptrINS_18IAggregateFunctionEERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorIS4_IKNS_9IDataTypeEESaISI_EE
330
331
#define CREATE_WINDOW_FUNCTION_WITH_NAME_AND_DATA(CREATE_FUNCTION_NAME, FUNCTION_DATA,             \
332
                                                  FUNCTION_IMPL)                                   \
333
    AggregateFunctionPtr CREATE_FUNCTION_NAME(                                                     \
334
            const std::string& name, const DataTypes& argument_types,                              \
335
            const DataTypePtr& result_type, const bool result_is_nullable,                         \
336
1
            const AggregateFunctionAttr& attr) {                                                   \
337
1
        const bool arg_is_nullable = argument_types[0]->is_nullable();                             \
338
1
        AggregateFunctionPtr res = nullptr;                                                        \
339
1
                                                                                                   \
340
1
        std::visit(                                                                                \
341
1
                [&](auto result_is_nullable, auto arg_is_nullable) {                               \
342
1
                    res = AggregateFunctionPtr(                                                    \
343
1
                            create_function_lead_lag_first_last<WindowFunctionData, FUNCTION_DATA, \
344
1
                                                                FUNCTION_IMPL, result_is_nullable, \
345
1
                                                                arg_is_nullable>(name,             \
346
1
                                                                                 argument_types)); \
347
1
                },                                                                                 \
aggregate_function_window_first.cpp:_ZZN5doris38create_aggregate_function_window_firstERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESP_EEDaT_T0_
Line
Count
Source
341
1
                [&](auto result_is_nullable, auto arg_is_nullable) {                               \
342
1
                    res = AggregateFunctionPtr(                                                    \
343
1
                            create_function_lead_lag_first_last<WindowFunctionData, FUNCTION_DATA, \
344
1
                                                                FUNCTION_IMPL, result_is_nullable, \
345
1
                                                                arg_is_nullable>(name,             \
346
1
                                                                                 argument_types)); \
347
1
                },                                                                                 \
Unexecuted instantiation: aggregate_function_window_first.cpp:_ZZN5doris38create_aggregate_function_window_firstERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESO_IbLb1EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_first.cpp:_ZZN5doris38create_aggregate_function_window_firstERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESO_IbLb0EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_first.cpp:_ZZN5doris38create_aggregate_function_window_firstERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lag.cpp:_ZZN5doris36create_aggregate_function_window_lagERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lag.cpp:_ZZN5doris36create_aggregate_function_window_lagERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESO_IbLb1EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lag.cpp:_ZZN5doris36create_aggregate_function_window_lagERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESO_IbLb0EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lag.cpp:_ZZN5doris36create_aggregate_function_window_lagERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_last.cpp:_ZZN5doris37create_aggregate_function_window_lastERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_last.cpp:_ZZN5doris37create_aggregate_function_window_lastERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESO_IbLb1EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_last.cpp:_ZZN5doris37create_aggregate_function_window_lastERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESO_IbLb0EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_last.cpp:_ZZN5doris37create_aggregate_function_window_lastERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lead.cpp:_ZZN5doris37create_aggregate_function_window_leadERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lead.cpp:_ZZN5doris37create_aggregate_function_window_leadERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESO_IbLb1EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lead.cpp:_ZZN5doris37create_aggregate_function_window_leadERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESO_IbLb0EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_lead.cpp:_ZZN5doris37create_aggregate_function_window_leadERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_nth_value.cpp:_ZZN5doris42create_aggregate_function_window_nth_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESP_EEDaT_T0_
Unexecuted instantiation: aggregate_function_window_nth_value.cpp:_ZZN5doris42create_aggregate_function_window_nth_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb0EESO_IbLb1EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_nth_value.cpp:_ZZN5doris42create_aggregate_function_window_nth_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESO_IbLb0EEEEDaT_T0_
Unexecuted instantiation: aggregate_function_window_nth_value.cpp:_ZZN5doris42create_aggregate_function_window_nth_valueERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISC_EERKSC_bRKNS_21AggregateFunctionAttrEENK3$_0clISt17integral_constantIbLb1EESP_EEDaT_T0_
348
1
                make_bool_variant(result_is_nullable), make_bool_variant(arg_is_nullable));        \
349
1
        if (!res) {                                                                                \
350
0
            LOG(WARNING) << " failed in  create_aggregate_function_" << name                       \
351
0
                         << " and type is: " << argument_types[0]->get_name();                     \
352
0
        }                                                                                          \
353
1
        return res;                                                                                \
354
1
    }
355
356
#include "common/compile_check_end.h"
357
} // namespace doris