@Override
  public void recordState(InternalDistributedMember provider,
      Map<ThreadIdentifier, EventSequenceNumberHolder> state) {
    initialImageProvider = provider;
    StringBuilder sb = null;
    if (logger.isDebugEnabled()) {
      sb = new StringBuilder(200);
      sb.append("Recording initial state for ").append(name).append(": ");
    }
    for (Map.Entry<ThreadIdentifier, EventSequenceNumberHolder> entry : state.entrySet()) {
      if (sb != null) {
        sb.append("\n  ").append(entry.getKey().expensiveToString()).append("; sequenceID=")
            .append(entry.getValue());
      }
      // record only if we haven't received an event that is newer
      recordSequenceNumber(entry.getKey(), entry.getValue(), true);
    }
    if (sb != null) {
      logger.debug(sb);
    }
    // fix for bug 41622 - hang in GII. This keeps ops from waiting for the
    // full GII to complete
    setInitialized();
  }
Create an event tracker

@param region the region
geode-core/src/main/java/org/apache/geode/internal/cache/event/DistributedEventTracker.java