be/src/exprs/aggregate/aggregate_function_window.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/Processors/Transforms/WindowTransform.h |
19 | | // and modified by Doris |
20 | | |
21 | | #pragma once |
22 | | |
23 | | #include <glog/logging.h> |
24 | | |
25 | | #include <algorithm> |
26 | | #include <boost/iterator/iterator_facade.hpp> |
27 | | #include <cstdint> |
28 | | #include <memory> |
29 | | |
30 | | #include "core/assert_cast.h" |
31 | | #include "core/column/column.h" |
32 | | #include "core/column/column_nullable.h" |
33 | | #include "core/column/column_vector.h" |
34 | | #include "core/data_type/data_type_number.h" |
35 | | #include "core/string_ref.h" |
36 | | #include "core/types.h" |
37 | | #include "exprs/aggregate/aggregate_function.h" |
38 | | #include "exprs/aggregate/aggregate_function_reader_first_last.h" |
39 | | |
40 | | namespace doris { |
41 | | class Arena; |
42 | | class BufferReadable; |
43 | | class BufferWritable; |
44 | | |
45 | | struct RowNumberData { |
46 | | int64_t count = 0; |
47 | | }; |
48 | | |
49 | | class WindowFunctionRowNumber final |
50 | | : public IAggregateFunctionDataHelper<RowNumberData, WindowFunctionRowNumber> { |
51 | | public: |
52 | | WindowFunctionRowNumber(const DataTypes& argument_types_) |
53 | 1 | : IAggregateFunctionDataHelper(argument_types_) {} |
54 | | |
55 | 1 | String get_name() const override { return "row_number"; } |
56 | | |
57 | 2 | DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); } |
58 | | |
59 | 0 | void add(AggregateDataPtr place, const IColumn**, ssize_t, Arena&) const override { |
60 | 0 | ++data(place).count; |
61 | 0 | } |
62 | | |
63 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
64 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
65 | 10 | Arena&, UInt8*, UInt8*) const override { |
66 | 10 | ++data(place).count; |
67 | 10 | } |
68 | | |
69 | 1 | void reset(AggregateDataPtr place) const override { |
70 | 1 | WindowFunctionRowNumber::data(place).count = 0; |
71 | 1 | } |
72 | | |
73 | 0 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
74 | 0 | assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to).get_data().push_back( |
75 | 0 | doris::WindowFunctionRowNumber::data(place).count); |
76 | 0 | } |
77 | | |
78 | 1 | bool result_column_could_resize() const override { return true; } |
79 | | |
80 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
81 | 10 | const size_t start, const size_t end) const override { |
82 | 10 | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
83 | 20 | for (size_t i = start; i < end; ++i) { |
84 | 10 | column.get_data()[i] = (doris::WindowFunctionRowNumber::data(place).count); |
85 | 10 | } |
86 | 10 | } |
87 | | |
88 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override {} |
89 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override {} |
90 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override {} |
91 | | }; |
92 | | |
93 | | struct RankData { |
94 | | int64_t rank = 0; |
95 | | int64_t count = 1; |
96 | | int64_t peer_group_start = -1; |
97 | | }; |
98 | | |
99 | | class WindowFunctionRank final : public IAggregateFunctionDataHelper<RankData, WindowFunctionRank> { |
100 | | public: |
101 | | WindowFunctionRank(const DataTypes& argument_types_) |
102 | 0 | : IAggregateFunctionDataHelper(argument_types_) {} |
103 | | |
104 | 0 | String get_name() const override { return "rank"; } |
105 | | |
106 | 0 | DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); } |
107 | | |
108 | 0 | void add(AggregateDataPtr place, const IColumn**, ssize_t, Arena&) const override { |
109 | 0 | ++data(place).rank; |
110 | 0 | } |
111 | | |
112 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
113 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
114 | 0 | Arena&, UInt8*, UInt8*) const override { |
115 | 0 | int64_t peer_group_count = frame_end - frame_start; |
116 | 0 | if (WindowFunctionRank::data(place).peer_group_start != frame_start) { |
117 | 0 | WindowFunctionRank::data(place).peer_group_start = frame_start; |
118 | 0 | WindowFunctionRank::data(place).rank += WindowFunctionRank::data(place).count; |
119 | 0 | } |
120 | 0 | WindowFunctionRank::data(place).count = peer_group_count; |
121 | 0 | } |
122 | | |
123 | 0 | void reset(AggregateDataPtr place) const override { |
124 | 0 | WindowFunctionRank::data(place).rank = 0; |
125 | 0 | WindowFunctionRank::data(place).count = 1; |
126 | 0 | WindowFunctionRank::data(place).peer_group_start = -1; |
127 | 0 | } |
128 | | |
129 | 0 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
130 | 0 | assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to).get_data().push_back( |
131 | 0 | data(place).rank); |
132 | 0 | } |
133 | | |
134 | 0 | bool result_column_could_resize() const override { return true; } |
135 | | |
136 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
137 | 0 | const size_t start, const size_t end) const override { |
138 | 0 | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
139 | 0 | for (size_t i = start; i < end; ++i) { |
140 | 0 | column.get_data()[i] = (doris::WindowFunctionRank::data(place).rank); |
141 | 0 | } |
142 | 0 | } |
143 | | |
144 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override {} |
145 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override {} |
146 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override {} |
147 | | }; |
148 | | |
149 | | struct DenseRankData { |
150 | | int64_t rank = 0; |
151 | | int64_t peer_group_start = -1; |
152 | | }; |
153 | | |
154 | | class WindowFunctionDenseRank final |
155 | | : public IAggregateFunctionDataHelper<DenseRankData, WindowFunctionDenseRank> { |
156 | | public: |
157 | | WindowFunctionDenseRank(const DataTypes& argument_types_) |
158 | 0 | : IAggregateFunctionDataHelper(argument_types_) {} |
159 | | |
160 | 0 | String get_name() const override { return "dense_rank"; } |
161 | | |
162 | 0 | DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); } |
163 | | |
164 | 0 | void add(AggregateDataPtr place, const IColumn**, ssize_t, Arena&) const override { |
165 | 0 | ++data(place).rank; |
166 | 0 | } |
167 | | |
168 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
169 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
170 | 0 | Arena&, UInt8*, UInt8*) const override { |
171 | 0 | if (WindowFunctionDenseRank::data(place).peer_group_start != frame_start) { |
172 | 0 | WindowFunctionDenseRank::data(place).peer_group_start = frame_start; |
173 | 0 | WindowFunctionDenseRank::data(place).rank++; |
174 | 0 | } |
175 | 0 | } |
176 | | |
177 | 0 | void reset(AggregateDataPtr place) const override { |
178 | 0 | WindowFunctionDenseRank::data(place).rank = 0; |
179 | 0 | WindowFunctionDenseRank::data(place).peer_group_start = -1; |
180 | 0 | } |
181 | | |
182 | 0 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
183 | 0 | assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to).get_data().push_back( |
184 | 0 | data(place).rank); |
185 | 0 | } |
186 | | |
187 | 0 | bool result_column_could_resize() const override { return true; } |
188 | | |
189 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
190 | 0 | const size_t start, const size_t end) const override { |
191 | 0 | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
192 | 0 | for (size_t i = start; i < end; ++i) { |
193 | 0 | column.get_data()[i] = (doris::WindowFunctionDenseRank::data(place).rank); |
194 | 0 | } |
195 | 0 | } |
196 | | |
197 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override {} |
198 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override {} |
199 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override {} |
200 | | }; |
201 | | |
202 | | struct PercentRankData { |
203 | | int64_t rank = 0; |
204 | | int64_t count = 1; |
205 | | int64_t peer_group_start = -1; |
206 | | int64_t partition_size = 0; |
207 | | }; |
208 | | |
209 | | class WindowFunctionPercentRank final |
210 | | : public IAggregateFunctionDataHelper<PercentRankData, WindowFunctionPercentRank> { |
211 | | private: |
212 | 0 | static double _cal_percent(int64_t rank, int64_t total_rows) { |
213 | 0 | return total_rows <= 1 ? 0.0 : double(rank - 1) * 1.0 / double(total_rows - 1); |
214 | 0 | } |
215 | | |
216 | | public: |
217 | | WindowFunctionPercentRank(const DataTypes& argument_types_) |
218 | 0 | : IAggregateFunctionDataHelper(argument_types_) {} |
219 | | |
220 | 0 | String get_name() const override { return "percent_rank"; } |
221 | | |
222 | 0 | DataTypePtr get_return_type() const override { return std::make_shared<DataTypeFloat64>(); } |
223 | | |
224 | 0 | void add(AggregateDataPtr place, const IColumn**, ssize_t, Arena&) const override {} |
225 | | |
226 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
227 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
228 | 0 | Arena&, UInt8*, UInt8*) const override { |
229 | 0 | int64_t peer_group_count = frame_end - frame_start; |
230 | 0 | if (WindowFunctionPercentRank::data(place).peer_group_start != frame_start) { |
231 | 0 | WindowFunctionPercentRank::data(place).peer_group_start = frame_start; |
232 | 0 | WindowFunctionPercentRank::data(place).rank += |
233 | 0 | WindowFunctionPercentRank::data(place).count; |
234 | | // some variables are partition related, but there is no chance to init them |
235 | | // when the new partition arrives, so we calculate them every time now. |
236 | 0 | WindowFunctionPercentRank::data(place).partition_size = partition_end - partition_start; |
237 | 0 | } |
238 | 0 | WindowFunctionPercentRank::data(place).count = peer_group_count; |
239 | 0 | } |
240 | | |
241 | 0 | void reset(AggregateDataPtr place) const override { |
242 | 0 | WindowFunctionPercentRank::data(place).rank = 0; |
243 | 0 | WindowFunctionPercentRank::data(place).count = 1; |
244 | 0 | WindowFunctionPercentRank::data(place).peer_group_start = -1; |
245 | 0 | WindowFunctionPercentRank::data(place).partition_size = 0; |
246 | 0 | } |
247 | | |
248 | 0 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
249 | 0 | auto percent_rank = _cal_percent(data(place).rank, data(place).partition_size); |
250 | 0 | assert_cast<ColumnFloat64&, TypeCheckOnRelease::DISABLE>(to).get_data().push_back( |
251 | 0 | percent_rank); |
252 | 0 | } |
253 | | |
254 | 0 | bool result_column_could_resize() const override { return true; } |
255 | | |
256 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
257 | 0 | const size_t start, const size_t end) const override { |
258 | 0 | auto& column = assert_cast<ColumnFloat64&, TypeCheckOnRelease::DISABLE>(to); |
259 | 0 | auto percent_rank = _cal_percent(data(place).rank, data(place).partition_size); |
260 | 0 | for (size_t i = start; i < end; ++i) { |
261 | 0 | column.get_data()[i] = percent_rank; |
262 | 0 | } |
263 | 0 | } |
264 | | |
265 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override {} |
266 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override {} |
267 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override {} |
268 | | }; |
269 | | |
270 | | struct CumeDistData { |
271 | | int64_t numerator = 0; |
272 | | int64_t denominator = 0; |
273 | | int64_t peer_group_start = -1; |
274 | | }; |
275 | | |
276 | | class WindowFunctionCumeDist final |
277 | | : public IAggregateFunctionDataHelper<CumeDistData, WindowFunctionCumeDist> { |
278 | | private: |
279 | | static void check_default(AggregateDataPtr place, int64_t partition_start, |
280 | 0 | int64_t partition_end) { |
281 | 0 | if (data(place).denominator == 0) { |
282 | 0 | data(place).denominator = partition_end - partition_start; |
283 | 0 | } |
284 | 0 | } |
285 | | |
286 | | public: |
287 | | WindowFunctionCumeDist(const DataTypes& argument_types_) |
288 | 0 | : IAggregateFunctionDataHelper(argument_types_) {} |
289 | | |
290 | 0 | String get_name() const override { return "cume_dist"; } |
291 | | |
292 | 0 | DataTypePtr get_return_type() const override { return std::make_shared<DataTypeFloat64>(); } |
293 | | |
294 | 0 | void add(AggregateDataPtr place, const IColumn**, ssize_t, Arena&) const override {} |
295 | | |
296 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
297 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
298 | 0 | Arena&, UInt8*, UInt8*) const override { |
299 | 0 | check_default(place, partition_start, partition_end); |
300 | 0 | int64_t peer_group_count = frame_end - frame_start; |
301 | 0 | if (WindowFunctionCumeDist::data(place).peer_group_start != frame_start) { |
302 | 0 | WindowFunctionCumeDist::data(place).peer_group_start = frame_start; |
303 | 0 | WindowFunctionCumeDist::data(place).numerator += peer_group_count; |
304 | 0 | } |
305 | 0 | } |
306 | | |
307 | 0 | void reset(AggregateDataPtr place) const override { |
308 | 0 | WindowFunctionCumeDist::data(place).numerator = 0; |
309 | 0 | WindowFunctionCumeDist::data(place).denominator = 0; |
310 | 0 | WindowFunctionCumeDist::data(place).peer_group_start = -1; |
311 | 0 | } |
312 | | |
313 | 0 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
314 | 0 | auto cume_dist = (double)data(place).numerator * 1.0 / (double)data(place).denominator; |
315 | 0 | assert_cast<ColumnFloat64&, TypeCheckOnRelease::DISABLE>(to).get_data().push_back( |
316 | 0 | cume_dist); |
317 | 0 | } |
318 | | |
319 | 0 | bool result_column_could_resize() const override { return true; } |
320 | | |
321 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
322 | 0 | const size_t start, const size_t end) const override { |
323 | 0 | auto& column = assert_cast<ColumnFloat64&, TypeCheckOnRelease::DISABLE>(to); |
324 | 0 | auto cume_dist = (double)data(place).numerator * 1.0 / (double)data(place).denominator; |
325 | 0 | for (size_t i = start; i < end; ++i) { |
326 | 0 | column.get_data()[i] = cume_dist; |
327 | 0 | } |
328 | 0 | } |
329 | | |
330 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override {} |
331 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override {} |
332 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override {} |
333 | | }; |
334 | | |
335 | | struct NTileData { |
336 | | int64_t bucket_index = 0; |
337 | | int64_t rows = 0; |
338 | | }; |
339 | | |
340 | | class WindowFunctionNTile final |
341 | | : public IAggregateFunctionDataHelper<NTileData, WindowFunctionNTile>, |
342 | | UnaryExpression, |
343 | | NullableAggregateFunction { |
344 | | public: |
345 | | WindowFunctionNTile(const DataTypes& argument_types_) |
346 | 0 | : IAggregateFunctionDataHelper(argument_types_) {} |
347 | | |
348 | 0 | String get_name() const override { return "ntile"; } |
349 | | |
350 | 0 | DataTypePtr get_return_type() const override { return std::make_shared<DataTypeInt64>(); } |
351 | | |
352 | 0 | void add(AggregateDataPtr place, const IColumn**, ssize_t, Arena&) const override {} |
353 | | |
354 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
355 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
356 | 0 | Arena&, UInt8*, UInt8*) const override { |
357 | | // some variables are partition related, but there is no chance to init them |
358 | | // when the new partition arrives, so we calculate them every time now. |
359 | | // Partition = big_bucket_num * big_bucket_size + small_bucket_num * small_bucket_size |
360 | 0 | int64_t row_index = ++WindowFunctionNTile::data(place).rows - 1; |
361 | 0 | int64_t bucket_num = columns[0]->get_int(0); |
362 | 0 | int64_t partition_size = partition_end - partition_start; |
363 | |
|
364 | 0 | int64_t small_bucket_size = partition_size / bucket_num; |
365 | 0 | int64_t big_bucket_num = partition_size % bucket_num; |
366 | 0 | int64_t first_small_bucket_row_index = big_bucket_num * (small_bucket_size + 1); |
367 | 0 | if (row_index >= first_small_bucket_row_index) { |
368 | | // small_bucket_size can't be zero |
369 | 0 | WindowFunctionNTile::data(place).bucket_index = |
370 | 0 | big_bucket_num + 1 + |
371 | 0 | (row_index - first_small_bucket_row_index) / small_bucket_size; |
372 | 0 | } else { |
373 | 0 | WindowFunctionNTile::data(place).bucket_index = row_index / (small_bucket_size + 1) + 1; |
374 | 0 | } |
375 | 0 | } |
376 | | |
377 | 0 | void reset(AggregateDataPtr place) const override { WindowFunctionNTile::data(place).rows = 0; } |
378 | | |
379 | 0 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
380 | 0 | assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to).get_data().push_back( |
381 | 0 | WindowFunctionNTile::data(place).bucket_index); |
382 | 0 | } |
383 | | |
384 | 0 | bool result_column_could_resize() const override { return true; } |
385 | | |
386 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
387 | 0 | const size_t start, const size_t end) const override { |
388 | 0 | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
389 | 0 | for (size_t i = start; i < end; ++i) { |
390 | 0 | column.get_data()[i] = WindowFunctionNTile::data(place).bucket_index; |
391 | 0 | } |
392 | 0 | } |
393 | | |
394 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override {} |
395 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override {} |
396 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override {} |
397 | | }; |
398 | | |
399 | | template <bool result_is_nullable, bool arg_is_nullable> |
400 | | struct FirstLastData |
401 | | : public ReaderFirstAndLastData<void, result_is_nullable, arg_is_nullable, false> { |
402 | | public: |
403 | 0 | void set_is_null() { this->_data_value.reset(); }Unexecuted instantiation: _ZN5doris13FirstLastDataILb0ELb0EE11set_is_nullEv Unexecuted instantiation: _ZN5doris13FirstLastDataILb0ELb1EE11set_is_nullEv Unexecuted instantiation: _ZN5doris13FirstLastDataILb1ELb0EE11set_is_nullEv Unexecuted instantiation: _ZN5doris13FirstLastDataILb1ELb1EE11set_is_nullEv |
404 | | }; |
405 | | |
406 | | template <bool result_is_nullable, bool arg_is_nullable> |
407 | | struct NthValueData : public FirstLastData<result_is_nullable, arg_is_nullable> { |
408 | | public: |
409 | 0 | void reset() { |
410 | 0 | this->_data_value.reset(); |
411 | 0 | this->_has_value = false; |
412 | 0 | this->_frame_start_pose = 0; |
413 | 0 | this->_frame_total_rows = 0; |
414 | 0 | } Unexecuted instantiation: _ZN5doris12NthValueDataILb0ELb0EE5resetEv Unexecuted instantiation: _ZN5doris12NthValueDataILb0ELb1EE5resetEv Unexecuted instantiation: _ZN5doris12NthValueDataILb1ELb0EE5resetEv Unexecuted instantiation: _ZN5doris12NthValueDataILb1ELb1EE5resetEv |
415 | | |
416 | | int64_t _frame_start_pose = 0; |
417 | | int64_t _frame_total_rows = 0; |
418 | | }; |
419 | | |
420 | | template <bool arg_is_nullable> |
421 | | struct BaseValue : public Value<arg_is_nullable> { |
422 | | public: |
423 | 0 | bool is_null() const { return this->_ptr == nullptr; }Unexecuted instantiation: _ZNK5doris9BaseValueILb0EE7is_nullEv Unexecuted instantiation: _ZNK5doris9BaseValueILb1EE7is_nullEv |
424 | | // because _ptr pointer to first_argument or third argument, so it's difficult to cast ptr |
425 | | // so here will call virtual function |
426 | 0 | StringRef get_value() const { return this->_ptr->get_data_at(this->_offset); }Unexecuted instantiation: _ZNK5doris9BaseValueILb0EE9get_valueEv Unexecuted instantiation: _ZNK5doris9BaseValueILb1EE9get_valueEv |
427 | | }; |
428 | | |
429 | | template <bool result_is_nullable, bool arg_is_nullable> |
430 | | struct LeadLagData { |
431 | | public: |
432 | | static constexpr bool result_nullable = result_is_nullable; |
433 | 0 | void reset() { |
434 | 0 | _data_value.reset(); |
435 | 0 | _is_inited = false; |
436 | 0 | _offset_value = 0; |
437 | 0 | } Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb0EE5resetEv Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE5resetEv Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb0EE5resetEv Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb1EE5resetEv |
438 | | |
439 | 0 | void insert_result_into(IColumn& to) const { |
440 | 0 | if constexpr (result_is_nullable) { |
441 | 0 | if (_data_value.is_null()) { |
442 | 0 | auto& col = assert_cast<ColumnNullable&>(to); |
443 | 0 | col.insert_default(); |
444 | 0 | } else { |
445 | 0 | auto& col = assert_cast<ColumnNullable&>(to); |
446 | 0 | StringRef value = _data_value.get_value(); |
447 | 0 | col.insert_data(value.data, value.size); |
448 | 0 | } |
449 | 0 | } else { |
450 | 0 | StringRef value = _data_value.get_value(); |
451 | 0 | to.insert_data(value.data, value.size); |
452 | 0 | } |
453 | 0 | } Unexecuted instantiation: _ZNK5doris11LeadLagDataILb0ELb0EE18insert_result_intoERNS_7IColumnE Unexecuted instantiation: _ZNK5doris11LeadLagDataILb0ELb1EE18insert_result_intoERNS_7IColumnE Unexecuted instantiation: _ZNK5doris11LeadLagDataILb1ELb0EE18insert_result_intoERNS_7IColumnE Unexecuted instantiation: _ZNK5doris11LeadLagDataILb1ELb1EE18insert_result_intoERNS_7IColumnE |
454 | | |
455 | 0 | void set_value(const IColumn** columns, size_t pos) { |
456 | 0 | if constexpr (arg_is_nullable) { |
457 | 0 | if (assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(columns[0]) |
458 | 0 | ->is_null_at(pos)) { |
459 | | // ptr == nullptr means nullable |
460 | 0 | _data_value.reset(); |
461 | 0 | return; |
462 | 0 | } |
463 | 0 | } |
464 | | // here ptr is pointer to nullable column or not null column from first |
465 | 0 | _data_value.set_value(columns[0], pos); |
466 | 0 | } Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb0EE9set_valueEPPKNS_7IColumnEm Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE9set_valueEPPKNS_7IColumnEm Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb0EE9set_valueEPPKNS_7IColumnEm Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb1EE9set_valueEPPKNS_7IColumnEm |
467 | | |
468 | 0 | void set_value_from_default(const IColumn* column, size_t pos) { |
469 | 0 | DCHECK_GE(pos, 0); |
470 | 0 | if (is_column_nullable(*column)) { |
471 | 0 | const auto* nullable_column = |
472 | 0 | assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(column); |
473 | 0 | if (nullable_column->is_null_at(pos)) { |
474 | 0 | this->_data_value.reset(); |
475 | 0 | } else { |
476 | 0 | this->_data_value.set_value(nullable_column->get_nested_column_ptr().get(), pos); |
477 | 0 | } |
478 | 0 | } else { |
479 | 0 | this->_data_value.set_value(column, pos); |
480 | 0 | } |
481 | 0 | } Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb0EE22set_value_from_defaultEPKNS_7IColumnEm Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE22set_value_from_defaultEPKNS_7IColumnEm Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb0EE22set_value_from_defaultEPKNS_7IColumnEm Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb1EE22set_value_from_defaultEPKNS_7IColumnEm |
482 | | |
483 | 0 | void set_offset_value(const IColumn* column) { |
484 | 0 | if (!_is_inited) { |
485 | 0 | const auto* column_number = assert_cast<const ColumnInt64*>(column); |
486 | 0 | _offset_value = column_number->get_data()[0]; |
487 | 0 | _is_inited = true; |
488 | 0 | } |
489 | 0 | } Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb0EE16set_offset_valueEPKNS_7IColumnE Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE16set_offset_valueEPKNS_7IColumnE Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb0EE16set_offset_valueEPKNS_7IColumnE Unexecuted instantiation: _ZN5doris11LeadLagDataILb1ELb1EE16set_offset_valueEPKNS_7IColumnE |
490 | | |
491 | 0 | int64_t get_offset_value() const { return _offset_value; }Unexecuted instantiation: _ZNK5doris11LeadLagDataILb0ELb0EE16get_offset_valueEv Unexecuted instantiation: _ZNK5doris11LeadLagDataILb0ELb1EE16get_offset_valueEv Unexecuted instantiation: _ZNK5doris11LeadLagDataILb1ELb0EE16get_offset_valueEv Unexecuted instantiation: _ZNK5doris11LeadLagDataILb1ELb1EE16get_offset_valueEv |
492 | | |
493 | | private: |
494 | | BaseValue<arg_is_nullable> _data_value; |
495 | | bool _is_inited = false; |
496 | | int64_t _offset_value = 0; |
497 | | }; |
498 | | |
499 | | template <typename Data, bool = false> |
500 | | struct WindowFunctionLeadImpl : Data { |
501 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
502 | 0 | int64_t frame_end, const IColumn** columns) { |
503 | 0 | if (frame_end > partition_end) { //output default value, win end is under partition |
504 | 0 | this->set_offset_value(columns[1]); |
505 | | // eg: lead(column, 10, default_value), column size maybe 3 rows |
506 | | // offset value 10 is from second argument, pos: 11 is calculated as frame_end |
507 | 0 | auto pos = frame_end - 1 - this->get_offset_value(); |
508 | 0 | this->set_value_from_default(columns[2], pos); |
509 | 0 | return; |
510 | 0 | } |
511 | 0 | this->set_value(columns, frame_end - 1); |
512 | 0 | } Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE |
513 | | |
514 | 0 | static const char* name() { return "lead"; }Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EE4nameEv |
515 | | }; |
516 | | |
517 | | template <typename Data, bool = false> |
518 | | struct WindowFunctionLagImpl : Data { |
519 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
520 | 0 | int64_t frame_end, const IColumn** columns) { |
521 | | // window start is beyond partition |
522 | 0 | if (partition_start >= frame_end) { //[unbound preceding(0), offset preceding(-123)] |
523 | 0 | this->set_offset_value(columns[1]); |
524 | 0 | auto pos = frame_end - 1 + this->get_offset_value(); |
525 | 0 | this->set_value_from_default(columns[2], pos); |
526 | 0 | return; |
527 | 0 | } |
528 | 0 | this->set_value(columns, frame_end - 1); |
529 | 0 | } Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE |
530 | | |
531 | 0 | static const char* name() { return "lag"; }Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EE4nameEv |
532 | | }; |
533 | | |
534 | | template <typename Data, bool arg_ignore_null = false> |
535 | | struct WindowFunctionFirstImpl : Data { |
536 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
537 | 5 | int64_t frame_end, const IColumn** columns) { |
538 | | // case 1: (has_set_value() = true && arg_ignore_null = false) |
539 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) |
540 | 5 | if ((this->has_set_value()) && |
541 | 5 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { |
542 | 2 | return; |
543 | 2 | } |
544 | 5 | DCHECK_LE(frame_start, frame_end); |
545 | 3 | if (frame_start >= partition_end || frame_end <= partition_start) { |
546 | 0 | this->set_is_null(); |
547 | 0 | return; |
548 | 0 | } |
549 | 3 | frame_start = std::max<int64_t>(frame_start, partition_start); |
550 | | |
551 | 3 | if constexpr (arg_ignore_null) { |
552 | 0 | frame_end = std::min<int64_t>(frame_end, partition_end); |
553 | 0 | if (columns[0]->is_nullable()) { |
554 | 0 | const auto& arg_nullable = assert_cast<const ColumnNullable&>(*columns[0]); |
555 | | // the valid range is: [frame_start, frame_end) |
556 | 0 | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { |
557 | 0 | frame_start++; |
558 | 0 | } |
559 | 0 | } |
560 | 0 | } |
561 | 3 | this->set_value(columns, frame_start); |
562 | 3 | } _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 537 | 5 | int64_t frame_end, const IColumn** columns) { | 538 | | // case 1: (has_set_value() = true && arg_ignore_null = false) | 539 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) | 540 | 5 | if ((this->has_set_value()) && | 541 | 5 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 542 | 2 | return; | 543 | 2 | } | 544 | 5 | DCHECK_LE(frame_start, frame_end); | 545 | 3 | if (frame_start >= partition_end || frame_end <= partition_start) { | 546 | 0 | this->set_is_null(); | 547 | 0 | return; | 548 | 0 | } | 549 | 3 | frame_start = std::max<int64_t>(frame_start, partition_start); | 550 | | | 551 | | if constexpr (arg_ignore_null) { | 552 | | frame_end = std::min<int64_t>(frame_end, partition_end); | 553 | | if (columns[0]->is_nullable()) { | 554 | | const auto& arg_nullable = assert_cast<const ColumnNullable&>(*columns[0]); | 555 | | // the valid range is: [frame_start, frame_end) | 556 | | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { | 557 | | frame_start++; | 558 | | } | 559 | | } | 560 | | } | 561 | 3 | this->set_value(columns, frame_start); | 562 | 3 | } |
Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE |
563 | | |
564 | 1 | static const char* name() { return "first_value"; }_ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EE4nameEv Line | Count | Source | 564 | 1 | static const char* name() { return "first_value"; } |
Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EE4nameEv |
565 | | }; |
566 | | |
567 | | template <typename Data, bool arg_ignore_null = false> |
568 | | struct WindowFunctionLastImpl : Data { |
569 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
570 | 0 | int64_t frame_end, const IColumn** columns) { |
571 | 0 | DCHECK_LE(frame_start, frame_end); |
572 | 0 | if ((frame_end <= partition_start) || |
573 | 0 | (frame_start >= partition_end)) { //beyond or under partition, set null |
574 | 0 | if ((this->has_set_value()) && |
575 | 0 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { |
576 | | // have set value, do nothing, because like rows unbouned preceding and M following |
577 | | // it's caculated as the cumulative mode, so it's could reuse the previous |
578 | 0 | } else { |
579 | 0 | this->set_is_null(); |
580 | 0 | } |
581 | 0 | return; |
582 | 0 | } |
583 | 0 | frame_end = std::min<int64_t>(frame_end, partition_end); |
584 | |
|
585 | 0 | if constexpr (arg_ignore_null) { |
586 | 0 | frame_start = std::max<int64_t>(frame_start, partition_start); |
587 | 0 | if (columns[0]->is_nullable()) { |
588 | 0 | const auto& arg_nullable = assert_cast<const ColumnNullable&>(*columns[0]); |
589 | | // wants find a not null value in [frame_start, frame_end) |
590 | | // iff has find: set_value and return directly |
591 | | // iff not find: the while loop is finished |
592 | | // case 1: iff has_set_value, means the previous window have value, could reuse it, so return directly |
593 | | // case 2: iff not has_set_value, means there is none value, set it's to NULL |
594 | 0 | while (frame_start < frame_end) { |
595 | 0 | if (arg_nullable.is_null_at(frame_end - 1)) { |
596 | 0 | frame_end--; |
597 | 0 | } else { |
598 | 0 | this->set_value(columns, frame_end - 1); |
599 | 0 | return; |
600 | 0 | } |
601 | 0 | } |
602 | 0 | if (!this->has_set_value()) { |
603 | 0 | this->set_is_null(); |
604 | 0 | } |
605 | 0 | return; |
606 | 0 | } |
607 | 0 | } |
608 | | |
609 | 0 | this->set_value(columns, frame_end - 1); |
610 | 0 | } Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE |
611 | | |
612 | 0 | static const char* name() { return "last_value"; }Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EE4nameEv |
613 | | }; |
614 | | |
615 | | template <typename Data, bool = false> |
616 | | struct WindowFunctionNthValueImpl : Data { |
617 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
618 | 0 | int64_t frame_end, const IColumn** columns) { |
619 | 0 | DCHECK_LE(frame_start, frame_end); |
620 | 0 | int64_t real_frame_start = std::max<int64_t>(frame_start, partition_start); |
621 | 0 | int64_t real_frame_end = std::min<int64_t>(frame_end, partition_end); |
622 | 0 | this->_frame_start_pose = |
623 | 0 | this->_frame_total_rows ? this->_frame_start_pose : real_frame_start; |
624 | 0 | this->_frame_total_rows += real_frame_end - real_frame_start; |
625 | 0 | int64_t offset = assert_cast<const ColumnInt64&, TypeCheckOnRelease::DISABLE>(*columns[1]) |
626 | 0 | .get_data()[0] - |
627 | 0 | 1; |
628 | 0 | if (offset >= this->_frame_total_rows) { |
629 | | // offset is beyond the frame, so set null |
630 | 0 | this->set_is_null(); |
631 | 0 | return; |
632 | 0 | } |
633 | 0 | this->set_value(columns, offset + this->_frame_start_pose); |
634 | 0 | } Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE |
635 | | |
636 | 0 | static const char* name() { return "nth_value"; }Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EE4nameEv |
637 | | }; |
638 | | |
639 | | template <typename Data> |
640 | | class WindowFunctionData final |
641 | | : public IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>> { |
642 | | public: |
643 | | WindowFunctionData(const DataTypes& argument_types_) |
644 | 1 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), |
645 | 1 | _argument_type(argument_types_[0]) {}_ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 644 | 1 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 645 | 1 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE |
646 | | |
647 | 1 | String get_name() const override { return Data::name(); }_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 647 | 1 | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev |
648 | | |
649 | 2 | DataTypePtr get_return_type() const override { |
650 | 2 | if constexpr (Data::result_nullable) { |
651 | 0 | return make_nullable(_argument_type); |
652 | 2 | } else { |
653 | 2 | return _argument_type; |
654 | 2 | } |
655 | 2 | } _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 649 | 2 | DataTypePtr get_return_type() const override { | 650 | | if constexpr (Data::result_nullable) { | 651 | | return make_nullable(_argument_type); | 652 | 2 | } else { | 653 | 2 | return _argument_type; | 654 | 2 | } | 655 | 2 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE15get_return_typeEv |
656 | | |
657 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
658 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
659 | 5 | Arena&, UInt8*, UInt8*) const override { |
660 | 5 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, |
661 | 5 | frame_end, columns); |
662 | 5 | } _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 659 | 5 | Arena&, UInt8*, UInt8*) const override { | 660 | 5 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 661 | 5 | frame_end, columns); | 662 | 5 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ |
663 | | |
664 | 3 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); }_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE5resetEPc Line | Count | Source | 664 | 3 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE5resetEPc |
665 | | |
666 | 5 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
667 | 5 | this->data(place).insert_result_into(to); |
668 | 5 | } _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 666 | 5 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 667 | 5 | this->data(place).insert_result_into(to); | 668 | 5 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE |
669 | | |
670 | | void add(AggregateDataPtr place, const IColumn** columns, ssize_t row_num, |
671 | 0 | Arena&) const override { |
672 | 0 | throw doris::Exception(Status::FatalError("WindowFunctionLeadLagData do not support add")); |
673 | 0 | } Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE3addEPcPPKNS_7IColumnElRNS_5ArenaE |
674 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override { |
675 | 0 | throw doris::Exception( |
676 | 0 | Status::FatalError("WindowFunctionLeadLagData do not support merge")); |
677 | 0 | } Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE5mergeEPcPKcRNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE5mergeEPcPKcRNS_5ArenaE |
678 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override { |
679 | 0 | throw doris::Exception( |
680 | 0 | Status::FatalError("WindowFunctionLeadLagData do not support serialize")); |
681 | 0 | } Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE9serializeEPKcRNS_14BufferWritableE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE9serializeEPKcRNS_14BufferWritableE |
682 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override { |
683 | 0 | throw doris::Exception( |
684 | 0 | Status::FatalError("WindowFunctionLeadLagData do not support deserialize")); |
685 | 0 | } Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE11deserializeEPcRNS_14BufferReadableERNS_5ArenaE |
686 | | |
687 | | private: |
688 | | DataTypePtr _argument_type; |
689 | | }; |
690 | | |
691 | | } // namespace doris |