private void testConsumeReceivedRevisions(boolean useTreeSets) {
    try {
      RVVException.UseTreeSetsForTesting = useTreeSets;
      // Create a bit set which matches the seen versions of vh1
      BitSet bs1 = new BitSet();
      bs1.set(1, 6);
      bs1.set(27, 29);
      bs1.set(30, 41);
      bs1.set(42, 43);
      bs1.set(47, 49);
      bs1.set(50, 101);

      RegionVersionHolder vh1 = buildHolder(bs1);
      validateExceptions(vh1);
      compareWithBitSet(bs1, vh1);

      {
        // Initialize a vector that has seen some later versions, and has some older
        // exceptions
        BitSet bs2 = new BitSet();

        // Add an exception that doesn't overlap with vh1 exceptions
        bs2.set(1, 6);
        bs2.set(20, 44);
        bs2.set(49, 101);

        RegionVersionHolder vh2 = buildHolder(bs2);
        validateExceptions(vh2);
        vh2.initializeFrom(vh1);
        // bs2.or(bs1);
        assertEquals(100, vh2.version);
        compareWithBitSet(bs1, vh2);
        validateExceptions(vh2);
      }
    } finally {
      RVVException.UseTreeSetsForTesting = false;
    }
  }
Test a case in 46522 where the received exceptions end up not being in the RVV interval.
geode-core/src/test/java/org/apache/geode/internal/cache/versions/RegionVersionHolderJUnitTest.java