You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by md...@apache.org on 2017/12/19 16:51:54 UTC

svn commit: r1818690 - in /jackrabbit/oak/trunk/oak-segment-tar/src: main/java/org/apache/jackrabbit/oak/segment/file/GCJournal.java test/java/org/apache/jackrabbit/oak/segment/file/GcJournalTest.java

Author: mduerig
Date: Tue Dec 19 16:51:54 2017
New Revision: 1818690

URL: http://svn.apache.org/viewvc?rev=1818690&view=rev
Log:
OAK-7082: ArrayIndexOutOfBoundsException when upgrading from Oak 1.6
Fix off by 2 error

Modified:
    jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/GCJournal.java
    jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/GcJournalTest.java

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/GCJournal.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/GCJournal.java?rev=1818690&r1=1818689&r2=1818690&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/GCJournal.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/GCJournal.java Tue Dec 19 16:51:54 2017
@@ -50,7 +50,7 @@ import org.slf4j.LoggerFactory;
  * Persists the repository size and the reclaimed size following a cleanup
  * operation in the {@link #GC_JOURNAL gc journal} file with the format:
  * 'repoSize, reclaimedSize, timestamp, gc generation, gc full generation (since Oak 1.8),
- * number of nodes compacted, root id'.
+ * number of nodes compacted, root id (since Oak 1.8)'.
  */
 public class GCJournal {
 
@@ -211,7 +211,7 @@ public class GCJournal {
 
         @CheckForNull
         private static String parseString(String[] items, int index) {
-            if (items.length < index - 1) {
+            if (index >= items.length) {
                 return null;
             }
             return items[index];

Modified: jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/GcJournalTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/GcJournalTest.java?rev=1818690&r1=1818689&r2=1818690&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/GcJournalTest.java (original)
+++ jackrabbit/oak/trunk/oak-segment-tar/src/test/java/org/apache/jackrabbit/oak/segment/file/GcJournalTest.java Tue Dec 19 16:51:54 2017
@@ -37,7 +37,6 @@ import java.util.List;
 import org.apache.jackrabbit.oak.commons.IOUtils;
 import org.apache.jackrabbit.oak.segment.RecordId;
 import org.apache.jackrabbit.oak.segment.file.GCJournal.GCJournalEntry;
-import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.TemporaryFolder;
@@ -106,7 +105,6 @@ public class GcJournalTest {
         assertEquals(newGCGeneration(1, 2, false), in.read().getGcGeneration());
     }
 
-    @Ignore("OAK-7082")  // FIXME OAK-7082
     @Test
     public void testReadOak16GCLog() throws IOException {
         createOak16GCLog();
@@ -120,7 +118,6 @@ public class GcJournalTest {
         assertEquals(RecordId.NULL.toString10(), entry.getRoot());
     }
 
-    @Ignore("OAK-7082")  // FIXME OAK-7082
     @Test
     public void testUpdateOak16GCLog() throws IOException {
         createOak16GCLog();