You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2013/03/10 14:37:20 UTC

svn commit: r1454849 - /lucene/dev/trunk/lucene/misc/src/java/org/apache/lucene/index/sorter/SortingAtomicReader.java

Author: shaie
Date: Sun Mar 10 13:37:20 2013
New Revision: 1454849

URL: http://svn.apache.org/r1454849
Log:
make sure docs and offsets are the same length

Modified:
    lucene/dev/trunk/lucene/misc/src/java/org/apache/lucene/index/sorter/SortingAtomicReader.java

Modified: lucene/dev/trunk/lucene/misc/src/java/org/apache/lucene/index/sorter/SortingAtomicReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/misc/src/java/org/apache/lucene/index/sorter/SortingAtomicReader.java?rev=1454849&r1=1454848&r2=1454849&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/misc/src/java/org/apache/lucene/index/sorter/SortingAtomicReader.java (original)
+++ lucene/dev/trunk/lucene/misc/src/java/org/apache/lucene/index/sorter/SortingAtomicReader.java Sun Mar 10 13:37:20 2013
@@ -448,7 +448,11 @@ public class SortingAtomicReader extends
       while ((doc = in.nextDoc()) != DocIdSetIterator.NO_MORE_DOCS) {
         if (i == docs.length) {
           docs = ArrayUtil.grow(docs, docs.length + 1);
-          offsets = ArrayUtil.grow(offsets, offsets.length + 1);
+          // don't grow() offsets since growing pattern for long and int is not the same.
+          // since we want docs and offsets at the same length, just grow it manually.
+          long[] tmp = new long[docs.length];
+          System.arraycopy(offsets, 0, tmp, 0, offsets.length);
+          offsets = tmp;
         }
         docs[i] = old2new[doc];
         offsets[i] = out.getFilePointer();