public void recordGCVersion(T mbr, long regionVersion) {
    if (mbr == null) {
      mbr = myId;
    }
    // record the GC version to make sure we know we have seen this version
    // during recovery, this will prevent us from recording exceptions
    // for entries less than the GC version.
    recordVersion(mbr, regionVersion);
    if (mbr == null || mbr.equals(myId)) {
      boolean succeeded;
      do {
        long v = localGCVersion.get();
        if (v > regionVersion) {
          break;
        }
        succeeded = localGCVersion.compareAndSet(v, regionVersion);
      } while (!succeeded);
    } else {
      synchronized (memberToGCVersion) {
        Long holder = memberToGCVersion.get(mbr);
        if (holder != null) {
          memberToGCVersion.put(mbr, Math.max(regionVersion, holder));
        } else {
          memberToGCVersion.put(mbr, regionVersion);
        }
      }
    }
  }
When a tombstone is removed from the entry map this method must be called to record the max
region-version of any tombstone reaped. Any older versions are then immediately eligible for
reaping.
geode-core/src/main/java/org/apache/geode/internal/cache/versions/RegionVersionVector.java