public boolean hasOnlyInternalEvents() {
    if (events == null || events.isEmpty()) {
      return false;
    }
    for (final CacheEvent<?, ?> event : (Iterable<CacheEvent<?, ?>>) events) {
      if (isEventUserVisible(event)) {
        LocalRegion region = (LocalRegion) event.getRegion();
        if (region != null && !region.isPdxTypesRegion() && !region.isInternalRegion()) {
          return false;
        }
      }
    }
    return true;
  }
Do all operations touch internal regions? Returns false if the transaction is empty or if any
events touch non-internal regions.
geode-core/src/main/java/org/apache/geode/internal/cache/TXRmtEvent.java