You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by GitBox <gi...@apache.org> on 2022/10/13 14:47:01 UTC

[GitHub] [accumulo] jmark99 commented on issue #3017: SortedLogRecoveryTest failures

jmark99 commented on issue #3017:
URL: https://github.com/apache/accumulo/issues/3017#issuecomment-1277734960

   @dlmarion I made the suggested change to all the places within SortedLogRecoveryTest where failures were occurring. I did have to change `entries.size()` to `entries.length`. The `git diff` from main is listed below so you can see where the changes were made.
   
   There were two situations where the fourth parameter had to be updated to `entries3.length` in order to pass. I haven't closely examined the tests so I'm not sure if that should be expected. These were `testCompactionCrossesLogs` and `testCompactionCrossesLogs5`. 
   
   Also, there are several other locations where the original 
   
      `List<Mutation> mutations = recover(logs, extent);` 
   
   works fine without the suggested change.. See the other `testCompactionCrossesLogs*` tests for examples. Should these be updated as well, for consistency?
   
   If you review the changes and are good with them, we can merge them in order to allow the tests to pass.
   
   <pre>
   --- i/server/tserver/src/test/java/org/apache/accumulo/tserver/log/SortedLogRecoveryTest.java
   +++ w/server/tserver/src/test/java/org/apache/accumulo/tserver/log/SortedLogRecoveryTest.java
   @@ -242,7 +242,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        logs.put("entries5", entries5);
    
        // Recover
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries3.length);
    
        // Verify recovered data
        assertEquals(2, mutations.size());
   @@ -288,7 +289,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        logs.put("entries3", entries3);
        logs.put("entries4", entries4);
        // Recover
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries3.length);
        // Verify recovered data
        assertEquals(4, mutations.size());
        assertEquals(m, mutations.get(0));
   @@ -389,7 +391,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("testlog", entries);
        // Recover
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries.length);
        // Verify recovered data
        assertEquals(1, mutations.size());
        assertEquals(m, mutations.get(0));
   @@ -462,7 +465,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("entries", entries);
        // Recover
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries.length);
        // Verify recovered data
        assertEquals(2, mutations.size());
        assertEquals(m, mutations.get(0));
   @@ -517,7 +521,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("testlog", entries);
        // Recover
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries.length);
        // Verify recovered data
        assertEquals(0, mutations.size());
      }
   @@ -641,7 +646,9 @@ public class SortedLogRecoveryTest extends WithTestNames {
        logs.put("entries", entries);
        logs.put("entries2", entries2);
        // Recover
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries.length);
   +
        // Verify recovered data
        assertEquals(5, mutations.size());
        assertTrue(mutations.contains(m));
   @@ -672,7 +679,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("entries", entries);
    
   -    List<Mutation> mutations = recover(logs, extent);
   +    // List<Mutation> mutations = recover(logs, extent);
   +    List<Mutation> mutations = recover(logs, new HashSet<>(), extent, entries.length);
    
        assertEquals(1, mutations.size());
        assertEquals(m, mutations.get(0));
   @@ -783,12 +791,14 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("entries1", entries1);
    
   -    List<Mutation> mutations1 = recover(logs, e1);
   +    // List<Mutation> mutations1 = recover(logs, e1);
   +    List<Mutation> mutations1 = recover(logs, new HashSet<>(), e1, entries1.length);
        assertEquals(1, mutations1.size());
        assertEquals(m2, mutations1.get(0));
    
        reset(context);
   -    List<Mutation> mutations2 = recover(logs, e2);
   +    // List<Mutation> mutations2 = recover(logs, e2);
   +    List<Mutation> mutations2 = recover(logs, new HashSet<>(), e2, entries1.length);
        assertEquals(2, mutations2.size());
        assertEquals(m3, mutations2.get(0));
        assertEquals(m4, mutations2.get(1));
   @@ -799,7 +809,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        logs.put("entries2", entries2);
    
        reset(context);
   -    mutations2 = recover(logs, e2);
   +    // mutations2 = recover(logs, e2);
   +    mutations2 = recover(logs, new HashSet<>(), e2, entries1.length);
        assertEquals(1, mutations2.size());
        assertEquals(m4, mutations2.get(0));
      }
   @@ -912,7 +923,9 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("entries1", entries1);
    
   -    var e = assertThrows(IllegalStateException.class, () -> recover(logs, extent));
   +    // var e = assertThrows(IllegalStateException.class, () -> recover(logs, extent));
   +    var e = assertThrows(IllegalStateException.class,
   +        () -> recover(logs, new HashSet<>(), extent, entries1.length));
        assertTrue(e.getMessage().contains("consecutive " + LogEvents.COMPACTION_FINISH.name()));
      }
    
   @@ -937,7 +950,8 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("entries1", entries1);
    
   -    List<Mutation> mutations1 = recover(logs, extent);
   +    // List<Mutation> mutations1 = recover(logs, extent);
   +    List<Mutation> mutations1 = recover(logs, new HashSet<>(), extent, entries1.length);
        assertEquals(1, mutations1.size());
        assertEquals(m2, mutations1.get(0));
      }
   @@ -965,7 +979,9 @@ public class SortedLogRecoveryTest extends WithTestNames {
        Map<String,KeyValue[]> logs = new TreeMap<>();
        logs.put("entries1", entries1);
    
   -    List<Mutation> mutations1 = recover(logs, extent);
   +    // List<Mutation> mutations1 = recover(logs, extent);
   +    List<Mutation> mutations1 = recover(logs, new HashSet<>(), extent, entries1.length);
   +
        assertEquals(1, mutations1.size());
        assertEquals(m2, mutations1.get(0));
      }
   </pre>


-- 
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: notifications-unsubscribe@accumulo.apache.org

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