billbarker    2002/11/25 19:32:51

  Modified:    http11/src/java/org/apache/coyote/http11
                        Http11Processor.java Http11Protocol.java
  Log:
  Adding a flag to disable setting a seperate time-out for uploads.
  
  The effect of this is to have many fewer calls to setSoTimeout.  I've never seen 
that it makes much of a difference (at least on Solaris), but it shouldn't cause any 
problems as long as you don't plan on doing any big uploads.
  
  Revision  Changes    Path
  1.46      +21 -2     
jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Processor.java
  
  Index: Http11Processor.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Processor.java,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- Http11Processor.java      24 Nov 2002 22:00:04 -0000      1.45
  +++ Http11Processor.java      26 Nov 2002 03:32:50 -0000      1.46
  @@ -238,6 +238,10 @@
        */
       protected int timeout = 300000;   // 5 minutes as in Apache HTTPD server
   
  +    /**
  +     * Flag to disable setting a different time-out on uploads.
  +     */
  +    protected boolean disableUploadTimeout = false;
   
       /**
        * Host name (used to avoid useless B2C conversion on the host name).
  @@ -341,6 +345,19 @@
       }
   
       /**
  +     * Set the flag to control upload time-outs.
  +     */
  +    public void setDisableUploadTimeout(boolean isDisabled) {
  +        disableUploadTimeout = isDisabled;
  +    }
  +    /**
  +     * Get the flag that controls upload time-outs.
  +     */
  +    public boolean getDisableUploadTimeout() {
  +        return disableUploadTimeout;
  +    }
  +
  +    /**
        * Set the upload timeout.
        */
       public void setTimeout( int timeouts ) {
  @@ -380,10 +397,12 @@
           int keepAliveLeft = maxKeepAliveRequests;
           int soTimeout = socket.getSoTimeout();
           boolean keptAlive = false;
  -        socket.setSoTimeout(timeout);
  +        if( !disableUploadTimeout ) {
  +            socket.setSoTimeout(timeout);
  +        }
           while (started && !error && keepAlive) {
               try {
  -                if( keptAlive && soTimeout > 0 ) {
  +                if( !disableUploadTimeout && keptAlive && soTimeout > 0 ) {
                       socket.setSoTimeout(soTimeout);
                   }
                   inputBuffer.parseRequestLine();
  
  
  
  1.17      +6 -0      
jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Protocol.java
  
  Index: Http11Protocol.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/http11/src/java/org/apache/coyote/http11/Http11Protocol.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- Http11Protocol.java       22 Oct 2002 09:23:32 -0000      1.16
  +++ Http11Protocol.java       26 Nov 2002 03:32:50 -0000      1.17
  @@ -185,6 +185,7 @@
       private int      timeout = 300000;       // 5 minutes as in Apache HTTPD server
       private String reportedname;
       private int socketCloseDelay=-1;
  +    private boolean disableUploadTimeout = false;
   
       // -------------------- Pool setup --------------------
   
  @@ -246,6 +247,10 @@
           setAttribute("tcpNoDelay", "" + b);
       }
   
  +    public void setDisableUploadTimeout(boolean isDisabled) {
  +        disableUploadTimeout = isDisabled;
  +    }
  +
       public void setSoLinger( int i ) {
        ep.setSoLinger( i );
           setAttribute("soLinger", "" + i);
  @@ -346,6 +351,7 @@
               processor.setAdapter( proto.adapter );
               processor.setMaxKeepAliveRequests( proto.maxKeepAliveRequests );
               processor.setTimeout( proto.timeout );
  +            processor.setDisableUploadTimeout( proto.disableUploadTimeout );
   
               //thData[0]=adapter;
               thData[1]=processor;
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to