boolean hasBeenTimedOutOnClient() {
    int timeout = getClientReadTimeout();
    // 0 means no timeout
    if (timeout > 0) {
      timeout = timeout + TIMEOUT_BUFFER_FOR_CONNECTION_CLEANUP_MS;
      /*
       * This is a buffer that we add to client readTimeout value before we cleanup the connection.
       * This buffer time helps prevent EOF in the client instead of SocketTimeout
       */
      return getCurrentMessageProcessingTime() > timeout;
    }
    return false;
  }
Returns the client's read-timeout setting. This is used in the client health monitor to timeout
connections that have taken too long & the client will have already given up waiting for a
response. Certain messages also may include an override to the normal read-timeout, such as a
query or a putAll.
geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ServerConnection.java