if (cause instanceof TTransportException) {
TTransportException t = (TTransportException) cause;
if (handleError(connection, client, retries, command, t, maxRetries, backOffTime, maxBackOffTime)) {
Throwable c = t.getCause();
if (cause instanceof SocketTimeoutException) {
throw new BlurException(c.getMessage(), BException.toString(c), ErrorType.REQUEST_TIMEOUT);
}
throw t;
}
} else {
throw e;
}
} catch (TTransportException e) {
if (handleError(connection, client, retries, command, e, maxRetries, backOffTime, maxBackOffTime)) {
Throwable c = e.getCause();
if (c instanceof SocketTimeoutException) {
throw new BlurException(c.getMessage(), BException.toString(c), ErrorType.REQUEST_TIMEOUT);
}
throw e;
}
} finally {
if (client.get() != null) {