@Override
  @Retained
  public Object getValueRetain(RegionEntryContext context) {
    @Retained
    Object result = getValueRetain(context, true);
    if (Token.isRemoved(result)) {
      return null;
    } else {
      setRecentlyUsed(context);
      return result;
    }
  }
To fix bug 49901 if v is a GatewaySenderEventImpl then make a heap copy of it if it is offheap.

@return the value to provide to the gii request; null if no value should be provided.
geode-core/src/main/java/org/apache/geode/internal/cache/entries/AbstractRegionEntry.java