timeout would cause the following error: "java.io.IOException: Underlying input stream returned zero bytes"