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 | 276 | : IAggregateFunctionDataHelper(argument_types_) {} |
54 | | |
55 | 991 | String get_name() const override { return "row_number"; } |
56 | | |
57 | 29.0k | 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 | 27.8k | Arena&, UInt8*, UInt8*) const override { |
66 | 27.8k | ++data(place).count; |
67 | 27.8k | } |
68 | | |
69 | 391 | void reset(AggregateDataPtr place) const override { |
70 | 391 | WindowFunctionRowNumber::data(place).count = 0; |
71 | 391 | } |
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 | 992 | bool result_column_could_resize() const override { return true; } |
79 | | |
80 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
81 | 27.8k | const size_t start, const size_t end) const override { |
82 | 27.8k | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
83 | 55.6k | for (size_t i = start; i < end; ++i) { |
84 | 27.8k | column.get_data()[i] = (doris::WindowFunctionRowNumber::data(place).count); |
85 | 27.8k | } |
86 | 27.8k | } |
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 | 221 | : IAggregateFunctionDataHelper(argument_types_) {} |
103 | | |
104 | 851 | String get_name() const override { return "rank"; } |
105 | | |
106 | 2.27k | 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 | 1.17k | Arena&, UInt8*, UInt8*) const override { |
115 | 1.17k | int64_t peer_group_count = frame_end - frame_start; |
116 | 1.17k | if (WindowFunctionRank::data(place).peer_group_start != frame_start) { |
117 | 1.17k | WindowFunctionRank::data(place).peer_group_start = frame_start; |
118 | 1.17k | WindowFunctionRank::data(place).rank += WindowFunctionRank::data(place).count; |
119 | 1.17k | } |
120 | 1.17k | WindowFunctionRank::data(place).count = peer_group_count; |
121 | 1.17k | } |
122 | | |
123 | 618 | void reset(AggregateDataPtr place) const override { |
124 | 618 | WindowFunctionRank::data(place).rank = 0; |
125 | 618 | WindowFunctionRank::data(place).count = 1; |
126 | 618 | WindowFunctionRank::data(place).peer_group_start = -1; |
127 | 618 | } |
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 | 851 | bool result_column_could_resize() const override { return true; } |
135 | | |
136 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
137 | 1.20k | const size_t start, const size_t end) const override { |
138 | 1.20k | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
139 | 24.4k | for (size_t i = start; i < end; ++i) { |
140 | 23.2k | column.get_data()[i] = (doris::WindowFunctionRank::data(place).rank); |
141 | 23.2k | } |
142 | 1.20k | } |
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 | 57 | : IAggregateFunctionDataHelper(argument_types_) {} |
159 | | |
160 | 98 | String get_name() const override { return "dense_rank"; } |
161 | | |
162 | 378 | 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 | 195 | Arena&, UInt8*, UInt8*) const override { |
171 | 195 | if (WindowFunctionDenseRank::data(place).peer_group_start != frame_start) { |
172 | 195 | WindowFunctionDenseRank::data(place).peer_group_start = frame_start; |
173 | 195 | WindowFunctionDenseRank::data(place).rank++; |
174 | 195 | } |
175 | 195 | } |
176 | | |
177 | 86 | void reset(AggregateDataPtr place) const override { |
178 | 86 | WindowFunctionDenseRank::data(place).rank = 0; |
179 | 86 | WindowFunctionDenseRank::data(place).peer_group_start = -1; |
180 | 86 | } |
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 | 98 | bool result_column_could_resize() const override { return true; } |
188 | | |
189 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
190 | 224 | const size_t start, const size_t end) const override { |
191 | 224 | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
192 | 21.7k | for (size_t i = start; i < end; ++i) { |
193 | 21.5k | column.get_data()[i] = (doris::WindowFunctionDenseRank::data(place).rank); |
194 | 21.5k | } |
195 | 224 | } |
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 | 147 | static double _cal_percent(int64_t rank, int64_t total_rows) { |
213 | 147 | return total_rows <= 1 ? 0.0 : double(rank - 1) * 1.0 / double(total_rows - 1); |
214 | 147 | } |
215 | | |
216 | | public: |
217 | | WindowFunctionPercentRank(const DataTypes& argument_types_) |
218 | 41 | : IAggregateFunctionDataHelper(argument_types_) {} |
219 | | |
220 | 80 | String get_name() const override { return "percent_rank"; } |
221 | | |
222 | 268 | 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 | 147 | Arena&, UInt8*, UInt8*) const override { |
229 | 147 | int64_t peer_group_count = frame_end - frame_start; |
230 | 147 | if (WindowFunctionPercentRank::data(place).peer_group_start != frame_start) { |
231 | 147 | WindowFunctionPercentRank::data(place).peer_group_start = frame_start; |
232 | 147 | WindowFunctionPercentRank::data(place).rank += |
233 | 147 | 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 | 147 | WindowFunctionPercentRank::data(place).partition_size = partition_end - partition_start; |
237 | 147 | } |
238 | 147 | WindowFunctionPercentRank::data(place).count = peer_group_count; |
239 | 147 | } |
240 | | |
241 | 94 | void reset(AggregateDataPtr place) const override { |
242 | 94 | WindowFunctionPercentRank::data(place).rank = 0; |
243 | 94 | WindowFunctionPercentRank::data(place).count = 1; |
244 | 94 | WindowFunctionPercentRank::data(place).peer_group_start = -1; |
245 | 94 | WindowFunctionPercentRank::data(place).partition_size = 0; |
246 | 94 | } |
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 | 80 | bool result_column_could_resize() const override { return true; } |
255 | | |
256 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
257 | 147 | const size_t start, const size_t end) const override { |
258 | 147 | auto& column = assert_cast<ColumnFloat64&, TypeCheckOnRelease::DISABLE>(to); |
259 | 147 | auto percent_rank = _cal_percent(data(place).rank, data(place).partition_size); |
260 | 586 | for (size_t i = start; i < end; ++i) { |
261 | 439 | column.get_data()[i] = percent_rank; |
262 | 439 | } |
263 | 147 | } |
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 | 107 | int64_t partition_end) { |
281 | 107 | if (data(place).denominator == 0) { |
282 | 54 | data(place).denominator = partition_end - partition_start; |
283 | 54 | } |
284 | 107 | } |
285 | | |
286 | | public: |
287 | | WindowFunctionCumeDist(const DataTypes& argument_types_) |
288 | 39 | : IAggregateFunctionDataHelper(argument_types_) {} |
289 | | |
290 | 69 | String get_name() const override { return "cume_dist"; } |
291 | | |
292 | 215 | 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 | 107 | Arena&, UInt8*, UInt8*) const override { |
299 | 107 | check_default(place, partition_start, partition_end); |
300 | 107 | int64_t peer_group_count = frame_end - frame_start; |
301 | 107 | if (WindowFunctionCumeDist::data(place).peer_group_start != frame_start) { |
302 | 107 | WindowFunctionCumeDist::data(place).peer_group_start = frame_start; |
303 | 107 | WindowFunctionCumeDist::data(place).numerator += peer_group_count; |
304 | 107 | } |
305 | 107 | } |
306 | | |
307 | 54 | void reset(AggregateDataPtr place) const override { |
308 | 54 | WindowFunctionCumeDist::data(place).numerator = 0; |
309 | 54 | WindowFunctionCumeDist::data(place).denominator = 0; |
310 | 54 | WindowFunctionCumeDist::data(place).peer_group_start = -1; |
311 | 54 | } |
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 | 69 | bool result_column_could_resize() const override { return true; } |
320 | | |
321 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
322 | 107 | const size_t start, const size_t end) const override { |
323 | 107 | auto& column = assert_cast<ColumnFloat64&, TypeCheckOnRelease::DISABLE>(to); |
324 | 107 | auto cume_dist = (double)data(place).numerator * 1.0 / (double)data(place).denominator; |
325 | 506 | for (size_t i = start; i < end; ++i) { |
326 | 399 | column.get_data()[i] = cume_dist; |
327 | 399 | } |
328 | 107 | } |
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 | 43 | : IAggregateFunctionDataHelper(argument_types_) {} |
347 | | |
348 | 76 | String get_name() const override { return "ntile"; } |
349 | | |
350 | 560 | 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 | 440 | 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 | 440 | int64_t row_index = ++WindowFunctionNTile::data(place).rows - 1; |
361 | 440 | int64_t bucket_num = columns[0]->get_int(0); |
362 | 440 | int64_t partition_size = partition_end - partition_start; |
363 | | |
364 | 440 | int64_t small_bucket_size = partition_size / bucket_num; |
365 | 440 | int64_t big_bucket_num = partition_size % bucket_num; |
366 | 440 | int64_t first_small_bucket_row_index = big_bucket_num * (small_bucket_size + 1); |
367 | 440 | if (row_index >= first_small_bucket_row_index) { |
368 | | // small_bucket_size can't be zero |
369 | 252 | WindowFunctionNTile::data(place).bucket_index = |
370 | 252 | big_bucket_num + 1 + |
371 | 252 | (row_index - first_small_bucket_row_index) / small_bucket_size; |
372 | 252 | } else { |
373 | 188 | WindowFunctionNTile::data(place).bucket_index = row_index / (small_bucket_size + 1) + 1; |
374 | 188 | } |
375 | 440 | } |
376 | | |
377 | 62 | 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 | 77 | bool result_column_could_resize() const override { return true; } |
385 | | |
386 | | void insert_result_into_range(ConstAggregateDataPtr __restrict place, IColumn& to, |
387 | 440 | const size_t start, const size_t end) const override { |
388 | 440 | auto& column = assert_cast<ColumnInt64&, TypeCheckOnRelease::DISABLE>(to); |
389 | 880 | for (size_t i = start; i < end; ++i) { |
390 | 440 | column.get_data()[i] = WindowFunctionNTile::data(place).bucket_index; |
391 | 440 | } |
392 | 440 | } |
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 : public ReaderFirstAndLastData<result_is_nullable, arg_is_nullable> { |
401 | | public: |
402 | 405 | void set_is_null() { this->_data_value.reset(); }Unexecuted instantiation: _ZN5doris13FirstLastDataILb0ELb0EE11set_is_nullEv Unexecuted instantiation: _ZN5doris13FirstLastDataILb0ELb1EE11set_is_nullEv _ZN5doris13FirstLastDataILb1ELb0EE11set_is_nullEv Line | Count | Source | 402 | 227 | void set_is_null() { this->_data_value.reset(); } |
_ZN5doris13FirstLastDataILb1ELb1EE11set_is_nullEv Line | Count | Source | 402 | 178 | void set_is_null() { this->_data_value.reset(); } |
|
403 | | }; |
404 | | |
405 | | template <bool result_is_nullable, bool arg_is_nullable> |
406 | | struct NthValueData : public FirstLastData<result_is_nullable, arg_is_nullable> { |
407 | | public: |
408 | 284 | void reset() { |
409 | 284 | this->_data_value.reset(); |
410 | 284 | this->_has_value = false; |
411 | 284 | this->_frame_start_pose = 0; |
412 | 284 | this->_frame_total_rows = 0; |
413 | 284 | } Unexecuted instantiation: _ZN5doris12NthValueDataILb0ELb0EE5resetEv Unexecuted instantiation: _ZN5doris12NthValueDataILb0ELb1EE5resetEv _ZN5doris12NthValueDataILb1ELb0EE5resetEv Line | Count | Source | 408 | 54 | void reset() { | 409 | 54 | this->_data_value.reset(); | 410 | 54 | this->_has_value = false; | 411 | 54 | this->_frame_start_pose = 0; | 412 | 54 | this->_frame_total_rows = 0; | 413 | 54 | } |
_ZN5doris12NthValueDataILb1ELb1EE5resetEv Line | Count | Source | 408 | 230 | void reset() { | 409 | 230 | this->_data_value.reset(); | 410 | 230 | this->_has_value = false; | 411 | 230 | this->_frame_start_pose = 0; | 412 | 230 | this->_frame_total_rows = 0; | 413 | 230 | } |
|
414 | | |
415 | | int64_t _frame_start_pose = 0; |
416 | | int64_t _frame_total_rows = 0; |
417 | | }; |
418 | | |
419 | | template <bool result_is_nullable, bool arg_is_nullable> |
420 | | struct LeadLagData { |
421 | | public: |
422 | | static constexpr bool result_nullable = result_is_nullable; |
423 | | |
424 | 589 | void reset() { |
425 | 589 | _data_value.reset(); |
426 | 589 | _is_inited = false; |
427 | 589 | _offset_value = 0; |
428 | 589 | } _ZN5doris11LeadLagDataILb0ELb0EE5resetEv Line | Count | Source | 424 | 182 | void reset() { | 425 | 182 | _data_value.reset(); | 426 | 182 | _is_inited = false; | 427 | 182 | _offset_value = 0; | 428 | 182 | } |
Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE5resetEv _ZN5doris11LeadLagDataILb1ELb0EE5resetEv Line | Count | Source | 424 | 59 | void reset() { | 425 | 59 | _data_value.reset(); | 426 | 59 | _is_inited = false; | 427 | 59 | _offset_value = 0; | 428 | 59 | } |
_ZN5doris11LeadLagDataILb1ELb1EE5resetEv Line | Count | Source | 424 | 348 | void reset() { | 425 | 348 | _data_value.reset(); | 426 | 348 | _is_inited = false; | 427 | 348 | _offset_value = 0; | 428 | 348 | } |
|
429 | | |
430 | 16.3k | void insert_result_into(IColumn& to) const { |
431 | 16.3k | if constexpr (result_is_nullable) { |
432 | 14.3k | if (!_data_value.has()) { |
433 | 1.02k | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); |
434 | 1.02k | col.insert_default(); |
435 | 13.3k | } else { |
436 | 13.3k | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); |
437 | 13.3k | col.get_null_map_data().push_back(0); |
438 | 13.3k | _data_value.insert_result_into(col.get_nested_column()); |
439 | 13.3k | } |
440 | 14.3k | } else { |
441 | 1.97k | _data_value.insert_result_into(to); |
442 | 1.97k | } |
443 | 16.3k | } _ZNK5doris11LeadLagDataILb0ELb0EE18insert_result_intoERNS_7IColumnE Line | Count | Source | 430 | 1.97k | void insert_result_into(IColumn& to) const { | 431 | | if constexpr (result_is_nullable) { | 432 | | if (!_data_value.has()) { | 433 | | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); | 434 | | col.insert_default(); | 435 | | } else { | 436 | | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); | 437 | | col.get_null_map_data().push_back(0); | 438 | | _data_value.insert_result_into(col.get_nested_column()); | 439 | | } | 440 | 1.97k | } else { | 441 | 1.97k | _data_value.insert_result_into(to); | 442 | 1.97k | } | 443 | 1.97k | } |
Unexecuted instantiation: _ZNK5doris11LeadLagDataILb0ELb1EE18insert_result_intoERNS_7IColumnE _ZNK5doris11LeadLagDataILb1ELb0EE18insert_result_intoERNS_7IColumnE Line | Count | Source | 430 | 1.46k | void insert_result_into(IColumn& to) const { | 431 | 1.46k | if constexpr (result_is_nullable) { | 432 | 1.46k | if (!_data_value.has()) { | 433 | 100 | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); | 434 | 100 | col.insert_default(); | 435 | 1.36k | } else { | 436 | 1.36k | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); | 437 | 1.36k | col.get_null_map_data().push_back(0); | 438 | 1.36k | _data_value.insert_result_into(col.get_nested_column()); | 439 | 1.36k | } | 440 | | } else { | 441 | | _data_value.insert_result_into(to); | 442 | | } | 443 | 1.46k | } |
_ZNK5doris11LeadLagDataILb1ELb1EE18insert_result_intoERNS_7IColumnE Line | Count | Source | 430 | 12.8k | void insert_result_into(IColumn& to) const { | 431 | 12.8k | if constexpr (result_is_nullable) { | 432 | 12.8k | if (!_data_value.has()) { | 433 | 920 | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); | 434 | 920 | col.insert_default(); | 435 | 11.9k | } else { | 436 | 11.9k | auto& col = assert_cast<ColumnNullable&, TypeCheckOnRelease::DISABLE>(to); | 437 | 11.9k | col.get_null_map_data().push_back(0); | 438 | 11.9k | _data_value.insert_result_into(col.get_nested_column()); | 439 | 11.9k | } | 440 | | } else { | 441 | | _data_value.insert_result_into(to); | 442 | | } | 443 | 12.8k | } |
|
444 | | |
445 | 13.4k | void set_value(const IColumn** columns, size_t pos) { |
446 | 13.4k | if constexpr (arg_is_nullable) { |
447 | 11.1k | if (assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(columns[0]) |
448 | 11.1k | ->is_null_at(pos)) { |
449 | 439 | _data_value.reset(); |
450 | 439 | return; |
451 | 439 | } |
452 | 10.7k | const auto& nullable = |
453 | 10.7k | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>(*columns[0]); |
454 | 10.7k | _data_value.set(nullable.get_nested_column(), pos); |
455 | 10.7k | } else { |
456 | 2.27k | _data_value.set(*columns[0], pos); |
457 | 2.27k | } |
458 | 13.4k | } _ZN5doris11LeadLagDataILb0ELb0EE9set_valueEPPKNS_7IColumnEm Line | Count | Source | 445 | 1.25k | void set_value(const IColumn** columns, size_t pos) { | 446 | | if constexpr (arg_is_nullable) { | 447 | | if (assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(columns[0]) | 448 | | ->is_null_at(pos)) { | 449 | | _data_value.reset(); | 450 | | return; | 451 | | } | 452 | | const auto& nullable = | 453 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>(*columns[0]); | 454 | | _data_value.set(nullable.get_nested_column(), pos); | 455 | 1.25k | } else { | 456 | 1.25k | _data_value.set(*columns[0], pos); | 457 | 1.25k | } | 458 | 1.25k | } |
Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE9set_valueEPPKNS_7IColumnEm _ZN5doris11LeadLagDataILb1ELb0EE9set_valueEPPKNS_7IColumnEm Line | Count | Source | 445 | 1.02k | void set_value(const IColumn** columns, size_t pos) { | 446 | | if constexpr (arg_is_nullable) { | 447 | | if (assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(columns[0]) | 448 | | ->is_null_at(pos)) { | 449 | | _data_value.reset(); | 450 | | return; | 451 | | } | 452 | | const auto& nullable = | 453 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>(*columns[0]); | 454 | | _data_value.set(nullable.get_nested_column(), pos); | 455 | 1.02k | } else { | 456 | 1.02k | _data_value.set(*columns[0], pos); | 457 | 1.02k | } | 458 | 1.02k | } |
_ZN5doris11LeadLagDataILb1ELb1EE9set_valueEPPKNS_7IColumnEm Line | Count | Source | 445 | 11.1k | void set_value(const IColumn** columns, size_t pos) { | 446 | 11.1k | if constexpr (arg_is_nullable) { | 447 | 11.1k | if (assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(columns[0]) | 448 | 11.1k | ->is_null_at(pos)) { | 449 | 439 | _data_value.reset(); | 450 | 439 | return; | 451 | 439 | } | 452 | 10.7k | const auto& nullable = | 453 | 10.7k | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>(*columns[0]); | 454 | 10.7k | _data_value.set(nullable.get_nested_column(), pos); | 455 | | } else { | 456 | | _data_value.set(*columns[0], pos); | 457 | | } | 458 | 11.1k | } |
|
459 | | |
460 | 2.88k | void set_value_from_default(const IColumn* column, size_t pos) { |
461 | 2.88k | DCHECK_GE(pos, 0); |
462 | 2.88k | if (is_column_nullable(*column)) { |
463 | 1.67k | const auto* nullable_column = |
464 | 1.67k | assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(column); |
465 | 1.67k | if (nullable_column->is_null_at(pos)) { |
466 | 582 | this->_data_value.reset(); |
467 | 1.09k | } else { |
468 | 1.09k | this->_data_value.set(nullable_column->get_nested_column(), pos); |
469 | 1.09k | } |
470 | 1.67k | } else { |
471 | 1.21k | this->_data_value.set(*column, pos); |
472 | 1.21k | } |
473 | 2.88k | } _ZN5doris11LeadLagDataILb0ELb0EE22set_value_from_defaultEPKNS_7IColumnEm Line | Count | Source | 460 | 724 | void set_value_from_default(const IColumn* column, size_t pos) { | 461 | 724 | DCHECK_GE(pos, 0); | 462 | 724 | if (is_column_nullable(*column)) { | 463 | 0 | const auto* nullable_column = | 464 | 0 | assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(column); | 465 | 0 | if (nullable_column->is_null_at(pos)) { | 466 | 0 | this->_data_value.reset(); | 467 | 0 | } else { | 468 | 0 | this->_data_value.set(nullable_column->get_nested_column(), pos); | 469 | 0 | } | 470 | 724 | } else { | 471 | 724 | this->_data_value.set(*column, pos); | 472 | 724 | } | 473 | 724 | } |
Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE22set_value_from_defaultEPKNS_7IColumnEm _ZN5doris11LeadLagDataILb1ELb0EE22set_value_from_defaultEPKNS_7IColumnEm Line | Count | Source | 460 | 442 | void set_value_from_default(const IColumn* column, size_t pos) { | 461 | 442 | DCHECK_GE(pos, 0); | 462 | 442 | if (is_column_nullable(*column)) { | 463 | 442 | const auto* nullable_column = | 464 | 442 | assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(column); | 465 | 442 | if (nullable_column->is_null_at(pos)) { | 466 | 100 | this->_data_value.reset(); | 467 | 342 | } else { | 468 | 342 | this->_data_value.set(nullable_column->get_nested_column(), pos); | 469 | 342 | } | 470 | 442 | } else { | 471 | 0 | this->_data_value.set(*column, pos); | 472 | 0 | } | 473 | 442 | } |
_ZN5doris11LeadLagDataILb1ELb1EE22set_value_from_defaultEPKNS_7IColumnEm Line | Count | Source | 460 | 1.72k | void set_value_from_default(const IColumn* column, size_t pos) { | 461 | 1.72k | DCHECK_GE(pos, 0); | 462 | 1.72k | if (is_column_nullable(*column)) { | 463 | 1.23k | const auto* nullable_column = | 464 | 1.23k | assert_cast<const ColumnNullable*, TypeCheckOnRelease::DISABLE>(column); | 465 | 1.23k | if (nullable_column->is_null_at(pos)) { | 466 | 482 | this->_data_value.reset(); | 467 | 752 | } else { | 468 | 752 | this->_data_value.set(nullable_column->get_nested_column(), pos); | 469 | 752 | } | 470 | 1.23k | } else { | 471 | 488 | this->_data_value.set(*column, pos); | 472 | 488 | } | 473 | 1.72k | } |
|
474 | | |
475 | 2.88k | void set_offset_value(const IColumn* column) { |
476 | 2.88k | if (!_is_inited) { |
477 | 1.07k | const auto* column_number = |
478 | 1.07k | assert_cast<const ColumnInt64*, TypeCheckOnRelease::DISABLE>(column); |
479 | 1.07k | _offset_value = column_number->get_data()[0]; |
480 | 1.07k | _is_inited = true; |
481 | 1.07k | } |
482 | 2.88k | } _ZN5doris11LeadLagDataILb0ELb0EE16set_offset_valueEPKNS_7IColumnE Line | Count | Source | 475 | 724 | void set_offset_value(const IColumn* column) { | 476 | 724 | if (!_is_inited) { | 477 | 385 | const auto* column_number = | 478 | 385 | assert_cast<const ColumnInt64*, TypeCheckOnRelease::DISABLE>(column); | 479 | 385 | _offset_value = column_number->get_data()[0]; | 480 | 385 | _is_inited = true; | 481 | 385 | } | 482 | 724 | } |
Unexecuted instantiation: _ZN5doris11LeadLagDataILb0ELb1EE16set_offset_valueEPKNS_7IColumnE _ZN5doris11LeadLagDataILb1ELb0EE16set_offset_valueEPKNS_7IColumnE Line | Count | Source | 475 | 442 | void set_offset_value(const IColumn* column) { | 476 | 442 | if (!_is_inited) { | 477 | 118 | const auto* column_number = | 478 | 118 | assert_cast<const ColumnInt64*, TypeCheckOnRelease::DISABLE>(column); | 479 | 118 | _offset_value = column_number->get_data()[0]; | 480 | 118 | _is_inited = true; | 481 | 118 | } | 482 | 442 | } |
_ZN5doris11LeadLagDataILb1ELb1EE16set_offset_valueEPKNS_7IColumnE Line | Count | Source | 475 | 1.72k | void set_offset_value(const IColumn* column) { | 476 | 1.72k | if (!_is_inited) { | 477 | 573 | const auto* column_number = | 478 | 573 | assert_cast<const ColumnInt64*, TypeCheckOnRelease::DISABLE>(column); | 479 | 573 | _offset_value = column_number->get_data()[0]; | 480 | 573 | _is_inited = true; | 481 | 573 | } | 482 | 1.72k | } |
|
483 | | |
484 | 2.88k | int64_t get_offset_value() const { return _offset_value; }_ZNK5doris11LeadLagDataILb0ELb0EE16get_offset_valueEv Line | Count | Source | 484 | 724 | int64_t get_offset_value() const { return _offset_value; } |
Unexecuted instantiation: _ZNK5doris11LeadLagDataILb0ELb1EE16get_offset_valueEv _ZNK5doris11LeadLagDataILb1ELb0EE16get_offset_valueEv Line | Count | Source | 484 | 442 | int64_t get_offset_value() const { return _offset_value; } |
_ZNK5doris11LeadLagDataILb1ELb1EE16get_offset_valueEv Line | Count | Source | 484 | 1.72k | int64_t get_offset_value() const { return _offset_value; } |
|
485 | | |
486 | | private: |
487 | | SingleValueDataColumn _data_value; |
488 | | bool _is_inited = false; |
489 | | int64_t _offset_value = 0; |
490 | | }; |
491 | | |
492 | | template <typename Data, bool = false> |
493 | | struct WindowFunctionLeadImpl : Data { |
494 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
495 | 7.78k | int64_t frame_end, const IColumn** columns) { |
496 | 7.78k | if (frame_end > partition_end) { //output default value, win end is under partition |
497 | 1.32k | this->set_offset_value(columns[1]); |
498 | | // eg: lead(column, 10, default_value), column size maybe 3 rows |
499 | | // offset value 10 is from second argument, pos: 11 is calculated as frame_end |
500 | 1.32k | auto pos = frame_end - 1 - this->get_offset_value(); |
501 | 1.32k | this->set_value_from_default(columns[2], pos); |
502 | 1.32k | return; |
503 | 1.32k | } |
504 | 6.45k | this->set_value(columns, frame_end - 1); |
505 | 6.45k | } _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 495 | 602 | int64_t frame_end, const IColumn** columns) { | 496 | 602 | if (frame_end > partition_end) { //output default value, win end is under partition | 497 | 221 | this->set_offset_value(columns[1]); | 498 | | // eg: lead(column, 10, default_value), column size maybe 3 rows | 499 | | // offset value 10 is from second argument, pos: 11 is calculated as frame_end | 500 | 221 | auto pos = frame_end - 1 - this->get_offset_value(); | 501 | 221 | this->set_value_from_default(columns[2], pos); | 502 | 221 | return; | 503 | 221 | } | 504 | 381 | this->set_value(columns, frame_end - 1); | 505 | 381 | } |
Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 495 | 733 | int64_t frame_end, const IColumn** columns) { | 496 | 733 | if (frame_end > partition_end) { //output default value, win end is under partition | 497 | 221 | this->set_offset_value(columns[1]); | 498 | | // eg: lead(column, 10, default_value), column size maybe 3 rows | 499 | | // offset value 10 is from second argument, pos: 11 is calculated as frame_end | 500 | 221 | auto pos = frame_end - 1 - this->get_offset_value(); | 501 | 221 | this->set_value_from_default(columns[2], pos); | 502 | 221 | return; | 503 | 221 | } | 504 | 512 | this->set_value(columns, frame_end - 1); | 505 | 512 | } |
_ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 495 | 6.44k | int64_t frame_end, const IColumn** columns) { | 496 | 6.44k | if (frame_end > partition_end) { //output default value, win end is under partition | 497 | 883 | this->set_offset_value(columns[1]); | 498 | | // eg: lead(column, 10, default_value), column size maybe 3 rows | 499 | | // offset value 10 is from second argument, pos: 11 is calculated as frame_end | 500 | 883 | auto pos = frame_end - 1 - this->get_offset_value(); | 501 | 883 | this->set_value_from_default(columns[2], pos); | 502 | 883 | return; | 503 | 883 | } | 504 | 5.56k | this->set_value(columns, frame_end - 1); | 505 | 5.56k | } |
|
506 | | |
507 | 8.35k | static const char* name() { return "lead"; }_ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EE4nameEv Line | Count | Source | 507 | 687 | static const char* name() { return "lead"; } |
Unexecuted instantiation: _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EE4nameEv _ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EE4nameEv Line | Count | Source | 507 | 811 | static const char* name() { return "lead"; } |
_ZN5doris22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EE4nameEv Line | Count | Source | 507 | 6.86k | static const char* name() { return "lead"; } |
|
508 | | }; |
509 | | |
510 | | template <typename Data, bool = false> |
511 | | struct WindowFunctionLagImpl : Data { |
512 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
513 | 8.54k | int64_t frame_end, const IColumn** columns) { |
514 | | // window start is beyond partition |
515 | 8.54k | if (partition_start >= frame_end) { //[unbound preceding(0), offset preceding(-123)] |
516 | 1.56k | this->set_offset_value(columns[1]); |
517 | 1.56k | auto pos = frame_end - 1 + this->get_offset_value(); |
518 | 1.56k | this->set_value_from_default(columns[2], pos); |
519 | 1.56k | return; |
520 | 1.56k | } |
521 | 6.98k | this->set_value(columns, frame_end - 1); |
522 | 6.98k | } _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 513 | 1.37k | int64_t frame_end, const IColumn** columns) { | 514 | | // window start is beyond partition | 515 | 1.37k | if (partition_start >= frame_end) { //[unbound preceding(0), offset preceding(-123)] | 516 | 503 | this->set_offset_value(columns[1]); | 517 | 503 | auto pos = frame_end - 1 + this->get_offset_value(); | 518 | 503 | this->set_value_from_default(columns[2], pos); | 519 | 503 | return; | 520 | 503 | } | 521 | 871 | this->set_value(columns, frame_end - 1); | 522 | 871 | } |
Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 513 | 733 | int64_t frame_end, const IColumn** columns) { | 514 | | // window start is beyond partition | 515 | 733 | if (partition_start >= frame_end) { //[unbound preceding(0), offset preceding(-123)] | 516 | 221 | this->set_offset_value(columns[1]); | 517 | 221 | auto pos = frame_end - 1 + this->get_offset_value(); | 518 | 221 | this->set_value_from_default(columns[2], pos); | 519 | 221 | return; | 520 | 221 | } | 521 | 512 | this->set_value(columns, frame_end - 1); | 522 | 512 | } |
_ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 513 | 6.43k | int64_t frame_end, const IColumn** columns) { | 514 | | // window start is beyond partition | 515 | 6.43k | if (partition_start >= frame_end) { //[unbound preceding(0), offset preceding(-123)] | 516 | 839 | this->set_offset_value(columns[1]); | 517 | 839 | auto pos = frame_end - 1 + this->get_offset_value(); | 518 | 839 | this->set_value_from_default(columns[2], pos); | 519 | 839 | return; | 520 | 839 | } | 521 | 5.59k | this->set_value(columns, frame_end - 1); | 522 | 5.59k | } |
|
523 | | |
524 | 9.56k | static const char* name() { return "lag"; }_ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EE4nameEv Line | Count | Source | 524 | 1.93k | static const char* name() { return "lag"; } |
Unexecuted instantiation: _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EE4nameEv _ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EE4nameEv Line | Count | Source | 524 | 811 | static const char* name() { return "lag"; } |
_ZN5doris21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EE4nameEv Line | Count | Source | 524 | 6.82k | static const char* name() { return "lag"; } |
|
525 | | }; |
526 | | |
527 | | template <typename Data, bool arg_ignore_null = false> |
528 | | struct WindowFunctionFirstImpl : Data { |
529 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
530 | 6.07k | int64_t frame_end, const IColumn** columns) { |
531 | | // case 1: (has_set_value() = true && arg_ignore_null = false) |
532 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) |
533 | 6.07k | if ((this->has_set_value()) && |
534 | 6.07k | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { |
535 | 5.19k | return; |
536 | 5.19k | } |
537 | 6.07k | DCHECK_LE(frame_start, frame_end); |
538 | 896 | if (frame_start >= partition_end || frame_end <= partition_start) { |
539 | 26 | this->set_is_null(); |
540 | 26 | return; |
541 | 26 | } |
542 | 855 | frame_start = std::max<int64_t>(frame_start, partition_start); |
543 | | |
544 | 855 | if constexpr (arg_ignore_null) { |
545 | 66 | frame_end = std::min<int64_t>(frame_end, partition_end); |
546 | 66 | if (is_column_nullable(*columns[0])) { |
547 | 44 | const auto& arg_nullable = |
548 | 44 | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( |
549 | 44 | *columns[0]); |
550 | | // the valid range is: [frame_start, frame_end) |
551 | 83 | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { |
552 | 39 | frame_start++; |
553 | 39 | } |
554 | 44 | } |
555 | 66 | } |
556 | 855 | this->set_value(columns, frame_start); |
557 | 855 | } _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 530 | 5 | int64_t frame_end, const IColumn** columns) { | 531 | | // case 1: (has_set_value() = true && arg_ignore_null = false) | 532 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) | 533 | 5 | if ((this->has_set_value()) && | 534 | 5 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 535 | 2 | return; | 536 | 2 | } | 537 | 5 | DCHECK_LE(frame_start, frame_end); | 538 | 3 | if (frame_start >= partition_end || frame_end <= partition_start) { | 539 | 0 | this->set_is_null(); | 540 | 0 | return; | 541 | 0 | } | 542 | 3 | frame_start = std::max<int64_t>(frame_start, partition_start); | 543 | | | 544 | | if constexpr (arg_ignore_null) { | 545 | | frame_end = std::min<int64_t>(frame_end, partition_end); | 546 | | if (is_column_nullable(*columns[0])) { | 547 | | const auto& arg_nullable = | 548 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 549 | | *columns[0]); | 550 | | // the valid range is: [frame_start, frame_end) | 551 | | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { | 552 | | frame_start++; | 553 | | } | 554 | | } | 555 | | } | 556 | 3 | this->set_value(columns, frame_start); | 557 | 3 | } |
Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 530 | 720 | int64_t frame_end, const IColumn** columns) { | 531 | | // case 1: (has_set_value() = true && arg_ignore_null = false) | 532 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) | 533 | 720 | if ((this->has_set_value()) && | 534 | 720 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 535 | 398 | return; | 536 | 398 | } | 537 | 720 | DCHECK_LE(frame_start, frame_end); | 538 | 322 | if (frame_start >= partition_end || frame_end <= partition_start) { | 539 | 4 | this->set_is_null(); | 540 | 4 | return; | 541 | 4 | } | 542 | 318 | frame_start = std::max<int64_t>(frame_start, partition_start); | 543 | | | 544 | | if constexpr (arg_ignore_null) { | 545 | | frame_end = std::min<int64_t>(frame_end, partition_end); | 546 | | if (is_column_nullable(*columns[0])) { | 547 | | const auto& arg_nullable = | 548 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 549 | | *columns[0]); | 550 | | // the valid range is: [frame_start, frame_end) | 551 | | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { | 552 | | frame_start++; | 553 | | } | 554 | | } | 555 | | } | 556 | 318 | this->set_value(columns, frame_start); | 557 | 318 | } |
_ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 530 | 5.26k | int64_t frame_end, const IColumn** columns) { | 531 | | // case 1: (has_set_value() = true && arg_ignore_null = false) | 532 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) | 533 | 5.26k | if ((this->has_set_value()) && | 534 | 5.26k | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 535 | 4.77k | return; | 536 | 4.77k | } | 537 | 5.26k | DCHECK_LE(frame_start, frame_end); | 538 | 505 | if (frame_start >= partition_end || frame_end <= partition_start) { | 539 | 16 | this->set_is_null(); | 540 | 16 | return; | 541 | 16 | } | 542 | 468 | frame_start = std::max<int64_t>(frame_start, partition_start); | 543 | | | 544 | | if constexpr (arg_ignore_null) { | 545 | | frame_end = std::min<int64_t>(frame_end, partition_end); | 546 | | if (is_column_nullable(*columns[0])) { | 547 | | const auto& arg_nullable = | 548 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 549 | | *columns[0]); | 550 | | // the valid range is: [frame_start, frame_end) | 551 | | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { | 552 | | frame_start++; | 553 | | } | 554 | | } | 555 | | } | 556 | 468 | this->set_value(columns, frame_start); | 557 | 468 | } |
Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 530 | 22 | int64_t frame_end, const IColumn** columns) { | 531 | | // case 1: (has_set_value() = true && arg_ignore_null = false) | 532 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) | 533 | 22 | if ((this->has_set_value()) && | 534 | 22 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 535 | 0 | return; | 536 | 0 | } | 537 | 22 | DCHECK_LE(frame_start, frame_end); | 538 | 22 | if (frame_start >= partition_end || frame_end <= partition_start) { | 539 | 0 | this->set_is_null(); | 540 | 0 | return; | 541 | 0 | } | 542 | 22 | frame_start = std::max<int64_t>(frame_start, partition_start); | 543 | | | 544 | 22 | if constexpr (arg_ignore_null) { | 545 | 22 | frame_end = std::min<int64_t>(frame_end, partition_end); | 546 | 22 | if (is_column_nullable(*columns[0])) { | 547 | 0 | const auto& arg_nullable = | 548 | 0 | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 549 | 0 | *columns[0]); | 550 | | // the valid range is: [frame_start, frame_end) | 551 | 0 | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { | 552 | 0 | frame_start++; | 553 | 0 | } | 554 | 0 | } | 555 | 22 | } | 556 | 22 | this->set_value(columns, frame_start); | 557 | 22 | } |
_ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 530 | 64 | int64_t frame_end, const IColumn** columns) { | 531 | | // case 1: (has_set_value() = true && arg_ignore_null = false) | 532 | | // case 2: (has_set_value() = true && arg_ignore_null = true && is_null() = false) | 533 | 64 | if ((this->has_set_value()) && | 534 | 64 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 535 | 14 | return; | 536 | 14 | } | 537 | 64 | DCHECK_LE(frame_start, frame_end); | 538 | 50 | if (frame_start >= partition_end || frame_end <= partition_start) { | 539 | 6 | this->set_is_null(); | 540 | 6 | return; | 541 | 6 | } | 542 | 44 | frame_start = std::max<int64_t>(frame_start, partition_start); | 543 | | | 544 | 44 | if constexpr (arg_ignore_null) { | 545 | 44 | frame_end = std::min<int64_t>(frame_end, partition_end); | 546 | 44 | if (is_column_nullable(*columns[0])) { | 547 | 44 | const auto& arg_nullable = | 548 | 44 | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 549 | 44 | *columns[0]); | 550 | | // the valid range is: [frame_start, frame_end) | 551 | 83 | while (frame_start < frame_end - 1 && arg_nullable.is_null_at(frame_start)) { | 552 | 39 | frame_start++; | 553 | 39 | } | 554 | 44 | } | 555 | 44 | } | 556 | 44 | this->set_value(columns, frame_start); | 557 | 44 | } |
|
558 | | |
559 | 7.14k | static const char* name() { return "first_value"; }_ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EE4nameEv Line | Count | Source | 559 | 6 | static const char* name() { return "first_value"; } |
Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EE4nameEv _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EE4nameEv Line | Count | Source | 559 | 1.27k | static const char* name() { return "first_value"; } |
_ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EE4nameEv Line | Count | Source | 559 | 5.73k | static const char* name() { return "first_value"; } |
Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EE4nameEv _ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EE4nameEv Line | Count | Source | 559 | 42 | static const char* name() { return "first_value"; } |
_ZN5doris23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EE4nameEv Line | Count | Source | 559 | 89 | static const char* name() { return "first_value"; } |
|
560 | | }; |
561 | | |
562 | | template <typename Data, bool arg_ignore_null = false> |
563 | | struct WindowFunctionLastImpl : Data { |
564 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
565 | 1.28k | int64_t frame_end, const IColumn** columns) { |
566 | 1.28k | DCHECK_LE(frame_start, frame_end); |
567 | 1.28k | if ((frame_end <= partition_start) || |
568 | 1.28k | (frame_start >= partition_end)) { //beyond or under partition, set null |
569 | 257 | if ((this->has_set_value()) && |
570 | 257 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { |
571 | | // have set value, do nothing, because like rows unbouned preceding and M following |
572 | | // it's caculated as the cumulative mode, so it's could reuse the previous |
573 | 228 | } else { |
574 | 228 | this->set_is_null(); |
575 | 228 | } |
576 | 257 | return; |
577 | 257 | } |
578 | 1.02k | frame_end = std::min<int64_t>(frame_end, partition_end); |
579 | | |
580 | 1.02k | if constexpr (arg_ignore_null) { |
581 | 97 | frame_start = std::max<int64_t>(frame_start, partition_start); |
582 | 97 | if (is_column_nullable(*columns[0])) { |
583 | 79 | const auto& arg_nullable = |
584 | 79 | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( |
585 | 79 | *columns[0]); |
586 | | // wants find a not null value in [frame_start, frame_end) |
587 | | // iff has find: set_value and return directly |
588 | | // iff not find: the while loop is finished |
589 | | // case 1: iff has_set_value, means the previous window have value, could reuse it, so return directly |
590 | | // case 2: iff not has_set_value, means there is none value, set it's to NULL |
591 | 150 | while (frame_start < frame_end) { |
592 | 123 | if (arg_nullable.is_null_at(frame_end - 1)) { |
593 | 71 | frame_end--; |
594 | 71 | } else { |
595 | 52 | this->set_value(columns, frame_end - 1); |
596 | 52 | return; |
597 | 52 | } |
598 | 123 | } |
599 | 27 | if (!this->has_set_value()) { |
600 | 12 | this->set_is_null(); |
601 | 12 | } |
602 | 27 | return; |
603 | 79 | } |
604 | 97 | } |
605 | | |
606 | 18 | this->set_value(columns, frame_end - 1); |
607 | 1.02k | } Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 565 | 439 | int64_t frame_end, const IColumn** columns) { | 566 | 439 | DCHECK_LE(frame_start, frame_end); | 567 | 439 | if ((frame_end <= partition_start) || | 568 | 439 | (frame_start >= partition_end)) { //beyond or under partition, set null | 569 | 216 | if ((this->has_set_value()) && | 570 | 216 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 571 | | // have set value, do nothing, because like rows unbouned preceding and M following | 572 | | // it's caculated as the cumulative mode, so it's could reuse the previous | 573 | 204 | } else { | 574 | 204 | this->set_is_null(); | 575 | 204 | } | 576 | 216 | return; | 577 | 216 | } | 578 | 223 | frame_end = std::min<int64_t>(frame_end, partition_end); | 579 | | | 580 | | if constexpr (arg_ignore_null) { | 581 | | frame_start = std::max<int64_t>(frame_start, partition_start); | 582 | | if (is_column_nullable(*columns[0])) { | 583 | | const auto& arg_nullable = | 584 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 585 | | *columns[0]); | 586 | | // wants find a not null value in [frame_start, frame_end) | 587 | | // iff has find: set_value and return directly | 588 | | // iff not find: the while loop is finished | 589 | | // case 1: iff has_set_value, means the previous window have value, could reuse it, so return directly | 590 | | // case 2: iff not has_set_value, means there is none value, set it's to NULL | 591 | | while (frame_start < frame_end) { | 592 | | if (arg_nullable.is_null_at(frame_end - 1)) { | 593 | | frame_end--; | 594 | | } else { | 595 | | this->set_value(columns, frame_end - 1); | 596 | | return; | 597 | | } | 598 | | } | 599 | | if (!this->has_set_value()) { | 600 | | this->set_is_null(); | 601 | | } | 602 | | return; | 603 | | } | 604 | | } | 605 | | | 606 | 223 | this->set_value(columns, frame_end - 1); | 607 | 223 | } |
_ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 565 | 749 | int64_t frame_end, const IColumn** columns) { | 566 | 749 | DCHECK_LE(frame_start, frame_end); | 567 | 749 | if ((frame_end <= partition_start) || | 568 | 749 | (frame_start >= partition_end)) { //beyond or under partition, set null | 569 | 41 | if ((this->has_set_value()) && | 570 | 41 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 571 | | // have set value, do nothing, because like rows unbouned preceding and M following | 572 | | // it's caculated as the cumulative mode, so it's could reuse the previous | 573 | 24 | } else { | 574 | 24 | this->set_is_null(); | 575 | 24 | } | 576 | 41 | return; | 577 | 41 | } | 578 | 708 | frame_end = std::min<int64_t>(frame_end, partition_end); | 579 | | | 580 | | if constexpr (arg_ignore_null) { | 581 | | frame_start = std::max<int64_t>(frame_start, partition_start); | 582 | | if (is_column_nullable(*columns[0])) { | 583 | | const auto& arg_nullable = | 584 | | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 585 | | *columns[0]); | 586 | | // wants find a not null value in [frame_start, frame_end) | 587 | | // iff has find: set_value and return directly | 588 | | // iff not find: the while loop is finished | 589 | | // case 1: iff has_set_value, means the previous window have value, could reuse it, so return directly | 590 | | // case 2: iff not has_set_value, means there is none value, set it's to NULL | 591 | | while (frame_start < frame_end) { | 592 | | if (arg_nullable.is_null_at(frame_end - 1)) { | 593 | | frame_end--; | 594 | | } else { | 595 | | this->set_value(columns, frame_end - 1); | 596 | | return; | 597 | | } | 598 | | } | 599 | | if (!this->has_set_value()) { | 600 | | this->set_is_null(); | 601 | | } | 602 | | return; | 603 | | } | 604 | | } | 605 | | | 606 | 708 | this->set_value(columns, frame_end - 1); | 607 | 708 | } |
Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 565 | 18 | int64_t frame_end, const IColumn** columns) { | 566 | 18 | DCHECK_LE(frame_start, frame_end); | 567 | 18 | if ((frame_end <= partition_start) || | 568 | 18 | (frame_start >= partition_end)) { //beyond or under partition, set null | 569 | 0 | if ((this->has_set_value()) && | 570 | 0 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 571 | | // have set value, do nothing, because like rows unbouned preceding and M following | 572 | | // it's caculated as the cumulative mode, so it's could reuse the previous | 573 | 0 | } else { | 574 | 0 | this->set_is_null(); | 575 | 0 | } | 576 | 0 | return; | 577 | 0 | } | 578 | 18 | frame_end = std::min<int64_t>(frame_end, partition_end); | 579 | | | 580 | 18 | if constexpr (arg_ignore_null) { | 581 | 18 | frame_start = std::max<int64_t>(frame_start, partition_start); | 582 | 18 | if (is_column_nullable(*columns[0])) { | 583 | 0 | const auto& arg_nullable = | 584 | 0 | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 585 | 0 | *columns[0]); | 586 | | // wants find a not null value in [frame_start, frame_end) | 587 | | // iff has find: set_value and return directly | 588 | | // iff not find: the while loop is finished | 589 | | // case 1: iff has_set_value, means the previous window have value, could reuse it, so return directly | 590 | | // case 2: iff not has_set_value, means there is none value, set it's to NULL | 591 | 0 | while (frame_start < frame_end) { | 592 | 0 | if (arg_nullable.is_null_at(frame_end - 1)) { | 593 | 0 | frame_end--; | 594 | 0 | } else { | 595 | 0 | this->set_value(columns, frame_end - 1); | 596 | 0 | return; | 597 | 0 | } | 598 | 0 | } | 599 | 0 | if (!this->has_set_value()) { | 600 | 0 | this->set_is_null(); | 601 | 0 | } | 602 | 0 | return; | 603 | 0 | } | 604 | 18 | } | 605 | | | 606 | 18 | this->set_value(columns, frame_end - 1); | 607 | 18 | } |
_ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 565 | 79 | int64_t frame_end, const IColumn** columns) { | 566 | 79 | DCHECK_LE(frame_start, frame_end); | 567 | 79 | if ((frame_end <= partition_start) || | 568 | 79 | (frame_start >= partition_end)) { //beyond or under partition, set null | 569 | 0 | if ((this->has_set_value()) && | 570 | 0 | (!arg_ignore_null || (arg_ignore_null && !this->is_null()))) { | 571 | | // have set value, do nothing, because like rows unbouned preceding and M following | 572 | | // it's caculated as the cumulative mode, so it's could reuse the previous | 573 | 0 | } else { | 574 | 0 | this->set_is_null(); | 575 | 0 | } | 576 | 0 | return; | 577 | 0 | } | 578 | 79 | frame_end = std::min<int64_t>(frame_end, partition_end); | 579 | | | 580 | 79 | if constexpr (arg_ignore_null) { | 581 | 79 | frame_start = std::max<int64_t>(frame_start, partition_start); | 582 | 79 | if (is_column_nullable(*columns[0])) { | 583 | 79 | const auto& arg_nullable = | 584 | 79 | assert_cast<const ColumnNullable&, TypeCheckOnRelease::DISABLE>( | 585 | 79 | *columns[0]); | 586 | | // wants find a not null value in [frame_start, frame_end) | 587 | | // iff has find: set_value and return directly | 588 | | // iff not find: the while loop is finished | 589 | | // case 1: iff has_set_value, means the previous window have value, could reuse it, so return directly | 590 | | // case 2: iff not has_set_value, means there is none value, set it's to NULL | 591 | 150 | while (frame_start < frame_end) { | 592 | 123 | if (arg_nullable.is_null_at(frame_end - 1)) { | 593 | 71 | frame_end--; | 594 | 71 | } else { | 595 | 52 | this->set_value(columns, frame_end - 1); | 596 | 52 | return; | 597 | 52 | } | 598 | 123 | } | 599 | 27 | if (!this->has_set_value()) { | 600 | 12 | this->set_is_null(); | 601 | 12 | } | 602 | 27 | return; | 603 | 79 | } | 604 | 79 | } | 605 | | | 606 | 0 | this->set_value(columns, frame_end - 1); | 607 | 79 | } |
|
608 | | |
609 | 1.71k | static const char* name() { return "last_value"; }Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EE4nameEv _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EE4nameEv Line | Count | Source | 609 | 584 | static const char* name() { return "last_value"; } |
_ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EE4nameEv Line | Count | Source | 609 | 989 | static const char* name() { return "last_value"; } |
Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EE4nameEv Unexecuted instantiation: _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EE4nameEv _ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EE4nameEv Line | Count | Source | 609 | 36 | static const char* name() { return "last_value"; } |
_ZN5doris22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EE4nameEv Line | Count | Source | 609 | 107 | static const char* name() { return "last_value"; } |
|
610 | | }; |
611 | | |
612 | | template <typename Data, bool = false> |
613 | | struct WindowFunctionNthValueImpl : Data { |
614 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
615 | 341 | int64_t frame_end, const IColumn** columns) { |
616 | 341 | DCHECK_LE(frame_start, frame_end); |
617 | 341 | int64_t real_frame_start = std::max<int64_t>(frame_start, partition_start); |
618 | 341 | int64_t real_frame_end = std::min<int64_t>(frame_end, partition_end); |
619 | 341 | this->_frame_start_pose = |
620 | 341 | this->_frame_total_rows ? this->_frame_start_pose : real_frame_start; |
621 | 341 | this->_frame_total_rows += real_frame_end - real_frame_start; |
622 | 341 | int64_t offset = assert_cast<const ColumnInt64&, TypeCheckOnRelease::DISABLE>(*columns[1]) |
623 | 341 | .get_data()[0]; |
624 | 341 | DCHECK_NE(offset, 0); |
625 | 341 | int64_t row_position = offset > 0 ? offset - 1 : this->_frame_total_rows + offset; |
626 | 341 | if (row_position < 0 || row_position >= this->_frame_total_rows) { |
627 | | // offset is beyond the frame, so set null |
628 | 139 | this->set_is_null(); |
629 | 139 | return; |
630 | 139 | } |
631 | 202 | this->set_value(columns, row_position + this->_frame_start_pose); |
632 | 202 | } Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 615 | 58 | int64_t frame_end, const IColumn** columns) { | 616 | 58 | DCHECK_LE(frame_start, frame_end); | 617 | 58 | int64_t real_frame_start = std::max<int64_t>(frame_start, partition_start); | 618 | 58 | int64_t real_frame_end = std::min<int64_t>(frame_end, partition_end); | 619 | 58 | this->_frame_start_pose = | 620 | 58 | this->_frame_total_rows ? this->_frame_start_pose : real_frame_start; | 621 | 58 | this->_frame_total_rows += real_frame_end - real_frame_start; | 622 | 58 | int64_t offset = assert_cast<const ColumnInt64&, TypeCheckOnRelease::DISABLE>(*columns[1]) | 623 | 58 | .get_data()[0]; | 624 | 58 | DCHECK_NE(offset, 0); | 625 | 58 | int64_t row_position = offset > 0 ? offset - 1 : this->_frame_total_rows + offset; | 626 | 58 | if (row_position < 0 || row_position >= this->_frame_total_rows) { | 627 | | // offset is beyond the frame, so set null | 628 | 19 | this->set_is_null(); | 629 | 19 | return; | 630 | 19 | } | 631 | 39 | this->set_value(columns, row_position + this->_frame_start_pose); | 632 | 39 | } |
_ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EE22add_range_single_placeEllllPPKNS_7IColumnE Line | Count | Source | 615 | 283 | int64_t frame_end, const IColumn** columns) { | 616 | 283 | DCHECK_LE(frame_start, frame_end); | 617 | 283 | int64_t real_frame_start = std::max<int64_t>(frame_start, partition_start); | 618 | 283 | int64_t real_frame_end = std::min<int64_t>(frame_end, partition_end); | 619 | 283 | this->_frame_start_pose = | 620 | 283 | this->_frame_total_rows ? this->_frame_start_pose : real_frame_start; | 621 | 283 | this->_frame_total_rows += real_frame_end - real_frame_start; | 622 | 283 | int64_t offset = assert_cast<const ColumnInt64&, TypeCheckOnRelease::DISABLE>(*columns[1]) | 623 | 283 | .get_data()[0]; | 624 | 283 | DCHECK_NE(offset, 0); | 625 | 283 | int64_t row_position = offset > 0 ? offset - 1 : this->_frame_total_rows + offset; | 626 | 283 | if (row_position < 0 || row_position >= this->_frame_total_rows) { | 627 | | // offset is beyond the frame, so set null | 628 | 120 | this->set_is_null(); | 629 | 120 | return; | 630 | 120 | } | 631 | 163 | this->set_value(columns, row_position + this->_frame_start_pose); | 632 | 163 | } |
|
633 | | |
634 | 522 | static const char* name() { return "nth_value"; }Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EE4nameEv Unexecuted instantiation: _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EE4nameEv _ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EE4nameEv Line | Count | Source | 634 | 108 | static const char* name() { return "nth_value"; } |
_ZN5doris26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EE4nameEv Line | Count | Source | 634 | 414 | static const char* name() { return "nth_value"; } |
|
635 | | }; |
636 | | |
637 | | template <typename Data> |
638 | | class WindowFunctionData final |
639 | | : public IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>> { |
640 | | public: |
641 | | WindowFunctionData(const DataTypes& argument_types_) |
642 | 1.45k | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), |
643 | 1.45k | _argument_type(argument_types_[0]) {}_ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 151 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 151 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 76 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 76 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 248 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 248 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 42 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 42 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 76 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 76 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 18 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 18 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 24 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 24 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 64 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 64 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 76 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 76 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 261 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 261 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 56 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 56 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 62 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 62 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 1 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 1 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 138 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 138 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 115 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 115 | _argument_type(argument_types_[0]) {} |
Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Unexecuted instantiation: _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE _ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 19 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 19 | _argument_type(argument_types_[0]) {} |
_ZN5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEEC2ERKSt6vectorISt10shared_ptrIKNS_9IDataTypeEESaISA_EE Line | Count | Source | 642 | 25 | : IAggregateFunctionDataHelper<Data, WindowFunctionData<Data>>(argument_types_), | 643 | 25 | _argument_type(argument_types_[0]) {} |
|
644 | | |
645 | 27.3k | String get_name() const override { return Data::name(); }_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 1.93k | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 811 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 6.82k | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 585 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 991 | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 36 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 107 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 687 | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 811 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 6.86k | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 108 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 415 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 6 | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 1.27k | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 5.73k | String get_name() const override { return Data::name(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE8get_nameB5cxx11Ev Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE8get_nameB5cxx11Ev _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 42 | String get_name() const override { return Data::name(); } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE8get_nameB5cxx11Ev Line | Count | Source | 645 | 89 | String get_name() const override { return Data::name(); } |
|
646 | | |
647 | 28.7k | DataTypePtr get_return_type() const override { |
648 | 28.7k | if constexpr (Data::result_nullable) { |
649 | 25.9k | return make_nullable(_argument_type); |
650 | 25.9k | } else { |
651 | 2.84k | return _argument_type; |
652 | 2.84k | } |
653 | 28.7k | } _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 2.08k | DataTypePtr get_return_type() const override { | 648 | | if constexpr (Data::result_nullable) { | 649 | | return make_nullable(_argument_type); | 650 | 2.08k | } else { | 651 | 2.08k | return _argument_type; | 652 | 2.08k | } | 653 | 2.08k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 886 | DataTypePtr get_return_type() const override { | 648 | 886 | if constexpr (Data::result_nullable) { | 649 | 886 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 886 | } |
_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 7.07k | DataTypePtr get_return_type() const override { | 648 | 7.07k | if constexpr (Data::result_nullable) { | 649 | 7.07k | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 7.07k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 627 | DataTypePtr get_return_type() const override { | 648 | 627 | if constexpr (Data::result_nullable) { | 649 | 627 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 627 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 1.08k | DataTypePtr get_return_type() const override { | 648 | 1.08k | if constexpr (Data::result_nullable) { | 649 | 1.08k | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 1.08k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE15get_return_typeEv Line | Count | Source | 647 | 54 | DataTypePtr get_return_type() const override { | 648 | 54 | if constexpr (Data::result_nullable) { | 649 | 54 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 54 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE15get_return_typeEv Line | Count | Source | 647 | 135 | DataTypePtr get_return_type() const override { | 648 | 135 | if constexpr (Data::result_nullable) { | 649 | 135 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 135 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 751 | DataTypePtr get_return_type() const override { | 648 | | if constexpr (Data::result_nullable) { | 649 | | return make_nullable(_argument_type); | 650 | 751 | } else { | 651 | 751 | return _argument_type; | 652 | 751 | } | 653 | 751 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 886 | DataTypePtr get_return_type() const override { | 648 | 886 | if constexpr (Data::result_nullable) { | 649 | 886 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 886 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 7.12k | DataTypePtr get_return_type() const override { | 648 | 7.12k | if constexpr (Data::result_nullable) { | 649 | 7.12k | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 7.12k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 162 | DataTypePtr get_return_type() const override { | 648 | 162 | if constexpr (Data::result_nullable) { | 649 | 162 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 162 | } |
_ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 476 | DataTypePtr get_return_type() const override { | 648 | 476 | if constexpr (Data::result_nullable) { | 649 | 476 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 476 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 7 | DataTypePtr get_return_type() const override { | 648 | | if constexpr (Data::result_nullable) { | 649 | | return make_nullable(_argument_type); | 650 | 7 | } else { | 651 | 7 | return _argument_type; | 652 | 7 | } | 653 | 7 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 1.40k | DataTypePtr get_return_type() const override { | 648 | 1.40k | if constexpr (Data::result_nullable) { | 649 | 1.40k | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 1.40k | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE15get_return_typeEv Line | Count | Source | 647 | 5.83k | DataTypePtr get_return_type() const override { | 648 | 5.83k | if constexpr (Data::result_nullable) { | 649 | 5.83k | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 5.83k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE15get_return_typeEv Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE15get_return_typeEv _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE15get_return_typeEv Line | Count | Source | 647 | 61 | DataTypePtr get_return_type() const override { | 648 | 61 | if constexpr (Data::result_nullable) { | 649 | 61 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 61 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE15get_return_typeEv Line | Count | Source | 647 | 134 | DataTypePtr get_return_type() const override { | 648 | 134 | if constexpr (Data::result_nullable) { | 649 | 134 | return make_nullable(_argument_type); | 650 | | } else { | 651 | | return _argument_type; | 652 | | } | 653 | 134 | } |
|
654 | | |
655 | 24.0k | void check_input_columns_type(const IColumn** columns) const override { |
656 | 24.0k | IAggregateFunction::check_input_columns_type(columns); |
657 | 24.0k | const auto function_name = get_name(); |
658 | 24.0k | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { |
659 | 16.6k | this->template check_argument_column_type<ColumnInt64>(columns[1]); |
660 | 16.6k | } |
661 | 24.0k | } _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 1.37k | void check_input_columns_type(const IColumn** columns) const override { | 656 | 1.37k | IAggregateFunction::check_input_columns_type(columns); | 657 | 1.37k | const auto function_name = get_name(); | 658 | 1.37k | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 1.37k | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 1.37k | } | 661 | 1.37k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 732 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 732 | IAggregateFunction::check_input_columns_type(columns); | 657 | 732 | const auto function_name = get_name(); | 658 | 732 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 732 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 732 | } | 661 | 732 | } |
_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 6.43k | void check_input_columns_type(const IColumn** columns) const override { | 656 | 6.43k | IAggregateFunction::check_input_columns_type(columns); | 657 | 6.43k | const auto function_name = get_name(); | 658 | 6.43k | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 6.43k | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 6.43k | } | 661 | 6.43k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 438 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 438 | IAggregateFunction::check_input_columns_type(columns); | 657 | 438 | const auto function_name = get_name(); | 658 | 438 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 438 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 749 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 749 | IAggregateFunction::check_input_columns_type(columns); | 657 | 749 | const auto function_name = get_name(); | 658 | 749 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 749 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 18 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 18 | IAggregateFunction::check_input_columns_type(columns); | 657 | 18 | const auto function_name = get_name(); | 658 | 18 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 18 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 79 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 79 | IAggregateFunction::check_input_columns_type(columns); | 657 | 79 | const auto function_name = get_name(); | 658 | 79 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 79 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 602 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 602 | IAggregateFunction::check_input_columns_type(columns); | 657 | 602 | const auto function_name = get_name(); | 658 | 602 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 602 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 602 | } | 661 | 602 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 732 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 732 | IAggregateFunction::check_input_columns_type(columns); | 657 | 732 | const auto function_name = get_name(); | 658 | 732 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 732 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 732 | } | 661 | 732 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 6.44k | void check_input_columns_type(const IColumn** columns) const override { | 656 | 6.44k | IAggregateFunction::check_input_columns_type(columns); | 657 | 6.44k | const auto function_name = get_name(); | 658 | 6.44k | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 6.44k | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 6.44k | } | 661 | 6.44k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 54 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 54 | IAggregateFunction::check_input_columns_type(columns); | 657 | 54 | const auto function_name = get_name(); | 658 | 54 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 54 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 54 | } | 661 | 54 | } |
_ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 282 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 282 | IAggregateFunction::check_input_columns_type(columns); | 657 | 282 | const auto function_name = get_name(); | 658 | 283 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 283 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 283 | } | 661 | 282 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 5 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 5 | IAggregateFunction::check_input_columns_type(columns); | 657 | 5 | const auto function_name = get_name(); | 658 | 5 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 5 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 719 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 719 | IAggregateFunction::check_input_columns_type(columns); | 657 | 719 | const auto function_name = get_name(); | 658 | 719 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 719 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 5.28k | void check_input_columns_type(const IColumn** columns) const override { | 656 | 5.28k | IAggregateFunction::check_input_columns_type(columns); | 657 | 5.28k | const auto function_name = get_name(); | 658 | 5.32k | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 5.28k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 22 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 22 | IAggregateFunction::check_input_columns_type(columns); | 657 | 22 | const auto function_name = get_name(); | 658 | 22 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 22 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE24check_input_columns_typeEPPKNS_7IColumnE Line | Count | Source | 655 | 64 | void check_input_columns_type(const IColumn** columns) const override { | 656 | 64 | IAggregateFunction::check_input_columns_type(columns); | 657 | 64 | const auto function_name = get_name(); | 658 | 64 | if (function_name == "lead" || function_name == "lag" || function_name == "nth_value") { | 659 | 0 | this->template check_argument_column_type<ColumnInt64>(columns[1]); | 660 | 0 | } | 661 | 64 | } |
|
662 | | |
663 | | void add_range_single_place(int64_t partition_start, int64_t partition_end, int64_t frame_start, |
664 | | int64_t frame_end, AggregateDataPtr place, const IColumn** columns, |
665 | 24.0k | Arena&, UInt8*, UInt8*) const override { |
666 | 24.0k | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, |
667 | 24.0k | frame_end, columns); |
668 | 24.0k | } _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 1.37k | Arena&, UInt8*, UInt8*) const override { | 666 | 1.37k | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 1.37k | frame_end, columns); | 668 | 1.37k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 733 | Arena&, UInt8*, UInt8*) const override { | 666 | 733 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 733 | frame_end, columns); | 668 | 733 | } |
_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 6.43k | Arena&, UInt8*, UInt8*) const override { | 666 | 6.43k | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 6.43k | frame_end, columns); | 668 | 6.43k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 439 | Arena&, UInt8*, UInt8*) const override { | 666 | 439 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 439 | frame_end, columns); | 668 | 439 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 749 | Arena&, UInt8*, UInt8*) const override { | 666 | 749 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 749 | frame_end, columns); | 668 | 749 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 18 | Arena&, UInt8*, UInt8*) const override { | 666 | 18 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 18 | frame_end, columns); | 668 | 18 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 79 | Arena&, UInt8*, UInt8*) const override { | 666 | 79 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 79 | frame_end, columns); | 668 | 79 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 602 | Arena&, UInt8*, UInt8*) const override { | 666 | 602 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 602 | frame_end, columns); | 668 | 602 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 733 | Arena&, UInt8*, UInt8*) const override { | 666 | 733 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 733 | frame_end, columns); | 668 | 733 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 6.44k | Arena&, UInt8*, UInt8*) const override { | 666 | 6.44k | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 6.44k | frame_end, columns); | 668 | 6.44k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 58 | Arena&, UInt8*, UInt8*) const override { | 666 | 58 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 58 | frame_end, columns); | 668 | 58 | } |
_ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 283 | Arena&, UInt8*, UInt8*) const override { | 666 | 283 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 283 | frame_end, columns); | 668 | 283 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 5 | Arena&, UInt8*, UInt8*) const override { | 666 | 5 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 5 | frame_end, columns); | 668 | 5 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 720 | Arena&, UInt8*, UInt8*) const override { | 666 | 720 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 720 | frame_end, columns); | 668 | 720 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 5.30k | Arena&, UInt8*, UInt8*) const override { | 666 | 5.30k | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 5.30k | frame_end, columns); | 668 | 5.30k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 22 | Arena&, UInt8*, UInt8*) const override { | 666 | 22 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 22 | frame_end, columns); | 668 | 22 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE22add_range_single_placeEllllPcPPKNS_7IColumnERNS_5ArenaEPhSD_ Line | Count | Source | 665 | 64 | Arena&, UInt8*, UInt8*) const override { | 666 | 64 | this->data(place).add_range_single_place(partition_start, partition_end, frame_start, | 667 | 64 | frame_end, columns); | 668 | 64 | } |
|
669 | | |
670 | 2.60k | void reset(AggregateDataPtr place) const override { this->data(place).reset(); }_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 132 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE5resetEPc Line | Count | Source | 670 | 50 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 370 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE5resetEPc Line | Count | Source | 670 | 443 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE5resetEPc Line | Count | Source | 670 | 18 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE5resetEPc Line | Count | Source | 670 | 49 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 50 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 59 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE5resetEPc Line | Count | Source | 670 | 298 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 54 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE5resetEPc Line | Count | Source | 670 | 230 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 3 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE5resetEPc Line | Count | Source | 670 | 306 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE5resetEPc Line | Count | Source | 670 | 469 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE5resetEPc Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE5resetEPc _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE5resetEPc Line | Count | Source | 670 | 22 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE5resetEPc Line | Count | Source | 670 | 49 | void reset(AggregateDataPtr place) const override { this->data(place).reset(); } |
|
671 | | |
672 | 26.7k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { |
673 | 26.7k | this->data(place).insert_result_into(to); |
674 | 26.7k | } _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 1.37k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 1.37k | this->data(place).insert_result_into(to); | 674 | 1.37k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 733 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 733 | this->data(place).insert_result_into(to); | 674 | 733 | } |
_ZNK5doris18WindowFunctionDataINS_21WindowFunctionLagImplINS_11LeadLagDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 6.43k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 6.43k | this->data(place).insert_result_into(to); | 674 | 6.43k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 628 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 628 | this->data(place).insert_result_into(to); | 674 | 628 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 1.07k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 1.07k | this->data(place).insert_result_into(to); | 674 | 1.07k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb0ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 180 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 180 | this->data(place).insert_result_into(to); | 674 | 180 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLastImplINS_13FirstLastDataILb1ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 233 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 233 | this->data(place).insert_result_into(to); | 674 | 233 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 602 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 602 | this->data(place).insert_result_into(to); | 674 | 602 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 733 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 733 | this->data(place).insert_result_into(to); | 674 | 733 | } |
_ZNK5doris18WindowFunctionDataINS_22WindowFunctionLeadImplINS_11LeadLagDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 6.44k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 6.44k | this->data(place).insert_result_into(to); | 674 | 6.44k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 544 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 544 | this->data(place).insert_result_into(to); | 674 | 544 | } |
_ZNK5doris18WindowFunctionDataINS_26WindowFunctionNthValueImplINS_12NthValueDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 688 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 688 | this->data(place).insert_result_into(to); | 674 | 688 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 5 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 5 | this->data(place).insert_result_into(to); | 674 | 5 | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 1.05k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 1.05k | this->data(place).insert_result_into(to); | 674 | 1.05k | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb0EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 5.56k | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 5.56k | this->data(place).insert_result_into(to); | 674 | 5.56k | } |
Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Unexecuted instantiation: _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb0ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE _ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb0EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 185 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 185 | this->data(place).insert_result_into(to); | 674 | 185 | } |
_ZNK5doris18WindowFunctionDataINS_23WindowFunctionFirstImplINS_13FirstLastDataILb1ELb1EEELb1EEEE18insert_result_intoEPKcRNS_7IColumnE Line | Count | Source | 672 | 264 | void insert_result_into(ConstAggregateDataPtr place, IColumn& to) const override { | 673 | 264 | this->data(place).insert_result_into(to); | 674 | 264 | } |
|
675 | | |
676 | | void add(AggregateDataPtr place, const IColumn** columns, ssize_t row_num, |
677 | 0 | Arena&) const override { |
678 | 0 | throw doris::Exception(Status::FatalError("WindowFunctionLeadLagData do not support add")); |
679 | 0 | } 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 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 |
680 | 0 | void merge(AggregateDataPtr place, ConstAggregateDataPtr rhs, Arena&) const override { |
681 | 0 | throw doris::Exception( |
682 | 0 | Status::FatalError("WindowFunctionLeadLagData do not support merge")); |
683 | 0 | } 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 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 |
684 | 0 | void serialize(ConstAggregateDataPtr place, BufferWritable& buf) const override { |
685 | 0 | throw doris::Exception( |
686 | 0 | Status::FatalError("WindowFunctionLeadLagData do not support serialize")); |
687 | 0 | } 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 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 |
688 | 0 | void deserialize(AggregateDataPtr place, BufferReadable& buf, Arena&) const override { |
689 | 0 | throw doris::Exception( |
690 | 0 | Status::FatalError("WindowFunctionLeadLagData do not support deserialize")); |
691 | 0 | } 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 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 |
692 | | |
693 | | private: |
694 | | DataTypePtr _argument_type; |
695 | | }; |
696 | | |
697 | | } // namespace doris |