Ahmed Bashir created THRIFT-1954:
------------------------------------

             Summary: Allow for a separate connection timeout value 
                 Key: THRIFT-1954
                 URL: https://issues.apache.org/jira/browse/THRIFT-1954
             Project: Thrift
          Issue Type: Improvement
            Reporter: Ahmed Bashir


In TSocket.java, the connect() logic uses the socket timeout value (for 
reads/writes) as the connection timeout, as well:

  public void open() throws TTransportException {
    if (isOpen()) {
      throw new TTransportException(TTransportException.ALREADY_OPEN, "Socket 
already connected.");
    }

    if (host_.length() == 0) {
      throw new TTransportException(TTransportException.NOT_OPEN, "Cannot open 
null host.");
    }
    if (port_ <= 0) {
      throw new TTransportException(TTransportException.NOT_OPEN, "Cannot open 
without port.");
    }

    if (socket_ == null) {
      initSocket();
    }

    try {
      socket_.connect(new InetSocketAddress(host_, port_), timeout_); <--- this 
value should be a separately defined
      inputStream_ = new BufferedInputStream(socket_.getInputStream(), 1024);

In many applications, the duration of time one is willing to wait before 
establishing a connection is not the same as the duration of time one is 
willing to wait before timing out on a read.  

For example, I may want to time out on establishing a connection after 1 second 
but am willing to wait 10 seconds for long reads to complete.

Please create a separate value that can be passed into the constructor, thanks

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to