I've created a small patch that lets ab continue even if it encounters an error on apr_socket_recv

quite commonly, when servers are overloaded they disconnect the socket, ab receives a 104 (connection reset by peer) and the ab test exits.

This patch logs the error, both counters correctly, cleans up the connection and continues.

thoughts?

Filip
Index: ab.c
===================================================================
--- ab.c        (revision 511976)
+++ ab.c        (working copy)
@@ -1332,7 +1332,10 @@
             err_except++; /* XXX: is this the right error counter? */
             /* XXX: Should errors here be fatal, or should we allow a
              * certain number of them before completely failing? -aaron */
-            apr_err("apr_socket_recv", status);
+            //apr_err("apr_socket_recv", status);
+            bad++;
+            close_connection(c);
+            return;
         }
     }
 

Reply via email to