Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
Each node of NestedType children is serialized on a previous node Length and NullCount.
This causes wrong data access at ListArray.GetValueOffset and so on.
Flatbuf.FieldNode childFieldNode = recordBatchEnumerator.CurrentNode; recordBatchEnumerator.MoveNextNode();
At this lines, MoveNextNode should be executed before assigning CurrentNode.
this can be reproduced by changing TestData.ArrayCreator.Visit(ListType type) like below and execute ArrowFileReaderTests.
public void Visit(ListType type) { var builder = new ListArray.Builder(type.ValueField).Reserve(Length); //Todo : Support various types var valueBuilder = (Int64Array.Builder)builder.ValueBuilder.Reserve(Length); for (var i = 0; i < Length; i++) { builder.Append(); valueBuilder.Append(i); } //Add a value to check if Values length can exceed ListArray length valueBuilder.Append(0); Array = builder.Build(); }
Attachments
Issue Links
- links to