rizaon commented on a change in pull request #990:
URL: https://github.com/apache/orc/pull/990#discussion_r780620218



##########
File path: c++/src/ColumnReader.cc
##########
@@ -1006,9 +1009,12 @@ namespace orc {
     if (stream == nullptr)
       throw ParseError("LENGTH stream not found in List column");
     rle = createRleDecoder(std::move(stream), false, vers, memoryPool);
-    const Type& childType = *type.getSubtype(0);
-    if (selectedColumns[static_cast<uint64_t>(childType.getColumnId())]) {
-      child = buildReader(childType, stripe);
+    ArrayReadIntent intent = stripe.getReadIntent(columnId);
+    if (intent == ArrayReadIntent_ALL) {
+      const Type &childType = *type.getSubtype(0);
+      if (selectedColumns[static_cast<uint64_t>(childType.getColumnId())]) {
+        child = buildReader(childType, stripe);
+      }

Review comment:
       I replace this with 4 new tests at `c++/test/TestReader.cc`.
   However, they stop at column selection verification and do not read a row 
batch.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@orc.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to