]> git.pld-linux.org Git - packages/apache.git/commitdiff
- rel 9; better way of dealing with children at graceful reload
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 15 Nov 2013 18:28:34 +0000 (19:28 +0100)
committerArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 15 Nov 2013 18:28:34 +0000 (19:28 +0100)
apache.spec
httpd-dummy-connection-result.patch

index fc97ce1ef096cea927359abe395e1ec372f50a09..9fcbec8ab9df69f6c2fddb60e899e37a9f916c05 100644 (file)
@@ -44,7 +44,7 @@ Summary(ru.UTF-8):    Самый популярный веб-сервер
 Summary(tr.UTF-8):     Lider WWW tarayıcı
 Name:          apache
 Version:       2.2.24
-Release:       8
+Release:       9
 License:       Apache v2.0
 Group:         Networking/Daemons/HTTP
 Source0:       http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz
index 4d2e3bbde23ffd4d4848d09803f84a13b1fd279a..6a6eec128e019492a702c2d551f742199008bc99 100644 (file)
@@ -1,23 +1,13 @@
-; http://www.mail-archive.com/dev%40httpd.apache.org/msg56690.html
-diff -ur httpd-2.2.24.org/server/mpm_common.c httpd-2.2.24/server/mpm_common.c
---- httpd-2.2.24.org/server/mpm_common.c       2013-04-14 18:02:48.785876471 +0200
-+++ httpd-2.2.24/server/mpm_common.c   2013-04-14 18:03:39.900458831 +0200
-@@ -739,7 +739,17 @@
-         len = strlen(data);
-     }
--    apr_socket_send(sock, data, &len);
-+    rv = apr_socket_send(sock, data, &len);
-+    if (rv == APR_SUCCESS && lp->protocol && strcasecmp(lp->protocol, "http") == 0) {
-+        char *buffer[10]; // dummy buffer to see if child is alive
-+
-+        len = sizeof(buffer);
-+        rv = apr_socket_recv(sock, buffer, &len);
-+        if (rv != APR_SUCCESS) {
-+            ap_log_error(APLOG_MARK, APLOG_DEBUG, rv, ap_server_conf,
-+                         "receiving response to dummy data to listener on %pI", lp->bind_addr);
+--- httpd-2.2.24/server/mpm_common.c~  2013-11-15 19:03:14.000000000 +0100
++++ httpd-2.2.24/server/mpm_common.c   2013-11-15 19:05:59.513220552 +0100
+@@ -777,6 +777,10 @@
+      * a while serving time-consuming requests)
+      */
+     for (i = 0; i < num && rv == APR_SUCCESS; i++) {
++        if (ap_scoreboard_image->servers[i][0].status != SERVER_READY ||
++            ap_scoreboard_image->servers[i][0].pid == 0) {
++            continue;
 +        }
-+    }
-     apr_socket_close(sock);
-     apr_pool_destroy(p);
+         rv = dummy_connection(pod);
+     }
+ }
This page took 0.08988 seconds and 4 git commands to generate.