mturk       2005/04/21 04:18:44

  Modified:    jk/native/common jk_ajp_common.c jk_global.h jk_lb_worker.c
  Log:
  Make sure the returned status codes are the same for ajp and lb
  workers.
  Status 503 if connection to tomcat fails.
  Status 502 is returned if tomcat faild in the middle of request.
  Status 400 is returned if client made faulty request
  Status 413 is returned if the headers are too large.
  Status 500 is returned in case of any other error.
  
  Revision  Changes    Path
  1.97      +7 -6      
jakarta-tomcat-connectors/jk/native/common/jk_ajp_common.c
  
  Index: jk_ajp_common.c
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_ajp_common.c,v
  retrieving revision 1.96
  retrieving revision 1.97
  diff -u -r1.96 -r1.97
  --- jk_ajp_common.c   11 Apr 2005 06:51:36 -0000      1.96
  +++ jk_ajp_common.c   21 Apr 2005 11:18:44 -0000      1.97
  @@ -1605,12 +1605,12 @@
   
       JK_TRACE_ENTER(l);
   
  +    if (is_error)
  +        *is_error = JK_HTTP_SERVER_ERROR;
  +
       if (e && e->endpoint_private && s && is_error) {
           ajp_endpoint_t *p = e->endpoint_private;
           op->request = jk_b_new(&(p->pool));
  -        /* Presume there will be no errors */
  -        *is_error = JK_HTTP_OK;
  -
           jk_b_set_buffer_size(op->request, DEF_BUFFER_SZ);
           jk_b_reset(op->request);
   
  @@ -1674,6 +1674,7 @@
   
                   err = ajp_get_reply(e, s, l, p, op);
                   if (err == JK_TRUE) {
  +                    *is_error = JK_HTTP_OK;
                       /* Done with the request */
                       JK_TRACE_EXIT(l);
                       return JK_TRUE;
  @@ -1686,7 +1687,7 @@
                        * operation is no more recoverable
                        */
                       if (!op->recoverable) {
  -                        *is_error = JK_HTTP_SERVER_ERROR;
  +                        *is_error = JK_HTTP_BAD_GATEWAY;
                           jk_log(l, JK_LOG_ERROR,
                                  "receiving reply from tomcat failed "
                                  "without recovery in send loop %d", i);
  @@ -1728,7 +1729,7 @@
               /* Get another connection from the pool and try again */
               ajp_next_connection(p, l);
           }
  -
  +        *is_error = JK_HTTP_SERVER_BUSY;
           /* Log the error only once per failed request. */
           jk_log(l, JK_LOG_ERROR,
                  "Error connecting to tomcat. Tomcat is probably not started "
  
  
  
  1.47      +9 -6      jakarta-tomcat-connectors/jk/native/common/jk_global.h
  
  Index: jk_global.h
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_global.h,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- jk_global.h       26 Mar 2005 09:28:56 -0000      1.46
  +++ jk_global.h       21 Apr 2005 11:18:44 -0000      1.47
  @@ -174,11 +174,14 @@
   /* HTTP Error codes
    */
   
  -#define JK_HTTP_OK              200
  -#define JK_HTTP_BAD_REQUEST     400
  -#define JK_REQUEST_TOO_LARGE    413
  -#define JK_HTTP_SERVER_ERROR    500
  -#define JK_HTTP_SERVER_BUSY     503
  +#define JK_HTTP_OK               200
  +#define JK_HTTP_BAD_REQUEST      400
  +#define JK_REQUEST_TOO_LARGE     413
  +#define JK_HTTP_SERVER_ERROR     500
  +#define JK_HTTP_NOT_IMPLEMENTED  501
  +#define JK_HTTP_BAD_GATEWAY      502
  +#define JK_HTTP_SERVER_BUSY      503
  +#define JK_HTTP_GATEWAY_TIME_OUT 504
   
   
   /*
  
  
  
  1.77      +3 -3      jakarta-tomcat-connectors/jk/native/common/jk_lb_worker.c
  
  Index: jk_lb_worker.c
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_lb_worker.c,v
  retrieving revision 1.76
  retrieving revision 1.77
  diff -u -r1.76 -r1.77
  --- jk_lb_worker.c    13 Apr 2005 12:40:03 -0000      1.76
  +++ jk_lb_worker.c    21 Apr 2005 11:18:44 -0000      1.77
  @@ -668,7 +668,7 @@
                   jk_log(l, JK_LOG_ERROR,
                          "All tomcat instances failed, no more workers left");
                   JK_TRACE_EXIT(l);
  -                *is_error = JK_HTTP_SERVER_ERROR;
  +                *is_error = JK_HTTP_SERVER_BUSY;
                   return JK_FALSE;
               }
               --num_of_workers;
  @@ -677,7 +677,7 @@
           jk_log(l, JK_LOG_INFO,
                  "All tomcat instances are busy or in error state");
           JK_TRACE_EXIT(l);
  -        /* Set error to Server busy */
  +        /* Set error to Timeout */
           *is_error = JK_HTTP_SERVER_BUSY;
           return JK_FALSE;
       }
  
  
  

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

Reply via email to