You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by mt...@apache.org on 2002/11/21 08:46:42 UTC

cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_workerEnv.c jk_worker_lb.c

mturk       2002/11/20 23:46:41

  Modified:    jk/native2/common jk_workerEnv.c jk_worker_lb.c
  Log:
  Fix the client aborted connections.
  Instead of setting the entire worker to a error state, check the service
  return value, and if it is set to the JK_HANDLER_ERROR, close the
  connection to TC and skip other workers, cause the client is disconnected
  already.
  
  Revision  Changes    Path
  1.59      +2 -1      jakarta-tomcat-connectors/jk/native2/common/jk_workerEnv.c
  
  Index: jk_workerEnv.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_workerEnv.c,v
  retrieving revision 1.58
  retrieving revision 1.59
  diff -u -r1.58 -r1.59
  --- jk_workerEnv.c	20 Nov 2002 17:25:41 -0000	1.58
  +++ jk_workerEnv.c	21 Nov 2002 07:46:40 -0000	1.59
  @@ -537,6 +537,7 @@
               /* Normal error ( for example writing to the client failed ).
                * The ajp connection is still in a stable state.
                */
  +            ep->recoverable = JK_TRUE;
               return rc;
           case JK_HANDLER_FATAL:
               /*
  
  
  
  1.27      +10 -2     jakarta-tomcat-connectors/jk/native2/common/jk_worker_lb.c
  
  Index: jk_worker_lb.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_worker_lb.c,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- jk_worker_lb.c	14 Oct 2002 06:30:42 -0000	1.26
  +++ jk_worker_lb.c	21 Nov 2002 07:46:41 -0000	1.27
  @@ -424,7 +424,7 @@
               }
               return JK_OK;
           }
  -        
  +
           if (rec->mbean->initialize && lb->cs != NULL) {
               time_t now = time(NULL);
               /* In the case of initialization timeout disable the worker */
  @@ -444,8 +444,16 @@
                   continue;
               }
           }
  +        /* If this is a browser connection error dont't check other
  +         * workers.             
  +         */
  +        if (rc == JK_HANDLER_ERROR) {
  +
  +            return JK_HANDLER_ERROR;
  +        }
  +
           env->l->jkLog(env, env->l, JK_LOG_ERROR, 
  -                      "lb.service() worker failed %s\n", rec->mbean->name );
  +                      "lb.service() worker failed %d for %s\n", rc, rec->mbean->name );
           
           /*
            * Service failed !!!
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>