deshanxiao commented on code in PR #1402:
URL: https://github.com/apache/orc/pull/1402#discussion_r1102240220


##########
java/core/src/java/org/apache/orc/impl/ReaderImpl.java:
##########
@@ -1035,11 +1037,15 @@ private static List<OrcProto.StripeStatistics> 
deserializeStripeStats(
       long offset,
       int length,
       InStream.StreamOptions options) throws IOException {
-    InStream stream = InStream.create("stripe stats", tailBuffer, offset,
-        length, options);
-    OrcProto.Metadata meta = OrcProto.Metadata.parseFrom(
-        InStream.createCodedInputStream(stream));
-    return meta.getStripeStatsList();
+    try (InStream stream = InStream.create("stripe stats", tailBuffer, offset,
+        length, options)) {
+      OrcProto.Metadata meta = OrcProto.Metadata.parseFrom(
+          InStream.createCodedInputStream(stream));
+      return meta.getStripeStatsList();
+    } catch (InvalidProtocolBufferException e) {
+      LOG.warn("Failed to parse stripe statistics; check ORC-1361 for more 
details.", e);

Review Comment:
   We can keep running, but need to let the user know that we skipped these 
statistics. This can be achieved by catching exceptions, or requiring the user 
to configure a parameter such as skipCheckStatistics



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to