@Override
    public void run2() {
      if (endpoint.timeToPing(pingIntervalNanos)) {
        try {
          endpoint.updateLastExecute();
          PingOp.execute(pool, endpoint.getLocation(), endpoint.getMemberId());
        } catch (Exception e) {
          if (logger.isDebugEnabled()) {
            logger.debug("Error occurred while pinging server: {} - {}", endpoint.getLocation(),
                e.getMessage());
          }
          InternalCache cache = GemFireCacheImpl.getInstance();
          if (cache != null) {
            ClientMetadataService cms = cache.getClientMetadataService();
            cms.removeBucketServerLocation(endpoint.getLocation());
          }
          // any failure to ping the server should be considered a crash (eg.
          // socket timeout exception, security exception, failure to connect).
          pool.getEndpointManager().serverCrashed(endpoint);
        }
      }
    }
At each registration of new endpoint increase counter for calculation of initial delay offset
geode-core/src/main/java/org/apache/geode/cache/client/internal/LiveServerPinger.java