code: @Override
    public void failConnect(long time)
    {
      getConnectionFailProbe().start();
  
      _failCountTotal.incrementAndGet();
      
      logFinest(L.l("failConnect: time={0}, _failTime={1}",
                    time, _failTime));
  
      synchronized (this) {
        if (_failTime < time) {
          degrade(time);
          
          _firstSuccessTime = 0;
          _failTime = time;
          _lastFailTime = time;
          _lastFailConnectTime = time;
          
          _dynamicFailRecoverTime *= 2;
          if (_loadBalanceFailRecoverTime < _dynamicFailRecoverTime)
            _dynamicFailRecoverTime = _loadBalanceFailRecoverTime;
    
          _state = _state.toFail();
        }
      }
    }
docs: Called when the socket read/write fails.