You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ga...@apache.org on 2014/10/14 00:56:40 UTC

svn commit: r1631599 - /hive/branches/branch-0.14/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcRawRecordMerger.java

Author: gates
Date: Mon Oct 13 22:56:40 2014
New Revision: 1631599

URL: http://svn.apache.org/r1631599
Log:
HIVE-8402 Orc pushing SARGs into delta files causing ArrayOutOfBoundsExceptions (Alan Gates reviewed by Owen O'Malley)

Modified:
    hive/branches/branch-0.14/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcRawRecordMerger.java

Modified: hive/branches/branch-0.14/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcRawRecordMerger.java
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.14/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcRawRecordMerger.java?rev=1631599&r1=1631598&r2=1631599&view=diff
==============================================================================
--- hive/branches/branch-0.14/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcRawRecordMerger.java (original)
+++ hive/branches/branch-0.14/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcRawRecordMerger.java Mon Oct 13 22:56:40 2014
@@ -450,6 +450,10 @@ public class OrcRawRecordMerger implemen
 
     // we always want to read all of the deltas
     eventOptions.range(0, Long.MAX_VALUE);
+    // Turn off the sarg before pushing it to delta.  We never want to push a sarg to a delta as
+    // it can produce wrong results (if the latest valid version of the record is filtered out by
+    // the sarg) or ArrayOutOfBounds errors (when the sarg is applied to a delete record)
+    eventOptions.searchArgument(null, null);
     if (deltaDirectory != null) {
       for(Path delta: deltaDirectory) {
         ReaderKey key = new ReaderKey();