File tree 2 files changed +13
-4
lines changed
ydb/core/formats/arrow/accessor/composite 2 files changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -55,4 +55,16 @@ NArrow::NAccessor::IChunkedArray::TCurrentArrayAddress TCompositeChunkedArray::D
55
55
return *result;
56
56
}
57
57
58
+ std::shared_ptr<arrow::ChunkedArray> TCompositeChunkedArray::DoGetChunkedArray () const {
59
+ std::vector<std::shared_ptr<arrow::Array>> chunks;
60
+ for (auto && i : Chunks) {
61
+ auto arr = i->GetChunkedArray ();
62
+ AFL_VERIFY (arr->num_chunks ());
63
+ for (auto && chunk : arr->chunks ()) {
64
+ chunks.emplace_back (chunk);
65
+ }
66
+ }
67
+ return std::make_shared<arrow::ChunkedArray>(chunks);
68
+ }
69
+
58
70
} // namespace NKikimr::NArrow::NAccessor
Original file line number Diff line number Diff line change @@ -33,10 +33,7 @@ class TCompositeChunkedArray: public NArrow::NAccessor::IChunkedArray {
33
33
return nullptr ;
34
34
}
35
35
virtual TCurrentChunkAddress DoGetChunk (const std::optional<TCurrentChunkAddress>& chunkCurrent, const ui64 position) const override ;
36
- virtual std::shared_ptr<arrow::ChunkedArray> DoGetChunkedArray () const override {
37
- AFL_VERIFY (false );
38
- return nullptr ;
39
- }
36
+ virtual std::shared_ptr<arrow::ChunkedArray> DoGetChunkedArray () const override ;
40
37
41
38
TCompositeChunkedArray (std::vector<std::shared_ptr<NArrow::NAccessor::IChunkedArray>>&& chunks, const ui32 recordsCount,
42
39
const std::shared_ptr<arrow::DataType>& type)
You can’t perform that action at this time.
0 commit comments