THRIFT-5411: Catch SocketTimeoutException in TIOStreamTransport read
diff --git a/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java b/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java
index 763e66a..d5b459c 100644
--- a/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java
+++ b/lib/java/src/org/apache/thrift/transport/TIOStreamTransport.java
@@ -26,6 +26,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.net.SocketTimeoutException;
/**
* This is the most commonly used base transport. It takes an InputStream or
@@ -174,6 +175,8 @@
int bytesRead;
try {
bytesRead = inputStream_.read(buf, off, len);
+ } catch (SocketTimeoutException ste) {
+ throw new TTransportException(TTransportException.TIMED_OUT, ste);
} catch (IOException iox) {
throw new TTransportException(TTransportException.UNKNOWN, iox);
}