]> git.pld-linux.org Git - packages/apache.git/commitdiff
- rel 7; prevent apache from hanging too long in graceful restart auto/th/apache-2.2.24-7
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 12 Apr 2013 15:51:27 +0000 (17:51 +0200)
committerArkadiusz Miśkiewicz <arekm@maven.pl>
Fri, 12 Apr 2013 15:54:21 +0000 (17:54 +0200)
apache.spec
httpd-dummy-connection-result.patch [new file with mode: 0644]

index c59e70a886c38f51a2db0413a8a95ca62b897a44..913725ad654543926b5b3d5e0dcb216cb58da505 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:       6
+Release:       7
 License:       Apache v2.0
 Group:         Networking/Daemons/HTTP
 Source0:       http://www.apache.org/dist/httpd/httpd-%{version}.tar.gz
@@ -109,6 +109,7 @@ Patch26:    apache-mod_vhost_alias_docroot.patch
 Patch28:       apache-mpm-itk.patch
 Patch29:       libtool-tag.patch
 Patch30:       apache-bug-39653.patch
+Patch31:       httpd-dummy-connection-result.patch
 URL:           http://httpd.apache.org/
 BuildRequires: apr-devel >= %{apr_ver}
 BuildRequires: apr-util-devel >= 1:1.3.10-2
@@ -1805,6 +1806,7 @@ Dwa programy testowe/przykładowe cgi: test-cgi and print-env.
 %{?with_itk:%patch28 -p1}
 %patch29 -p1
 %patch30 -p1
+%patch31 -p1
 
 # using system apr, apr-util and pcre
 %{__rm} -r srclib/{apr,apr-util,pcre}
diff --git a/httpd-dummy-connection-result.patch b/httpd-dummy-connection-result.patch
new file mode 100644 (file)
index 0000000..a95a559
--- /dev/null
@@ -0,0 +1,23 @@
+; http://www.mail-archive.com/dev%40httpd.apache.org/msg56690.html
+diff -ur a/server/mpm_common.c b/server/mpm_common.c
+--- a/server/mpm_common.c      2012-07-03 21:38:58.000000000 +0200
++++ b/server/mpm.common.c      2013-04-12 09:14:58.282929959 +0200
+@@ -604,7 +604,17 @@
+         len = strlen(data);
+     }
+-    apr_socket_send(sock, data, &len);
++    rv = apr_socket_send(sock, data, &len);
++    if (rv == APR_SUCCESS) {
++        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);
++        }
++    }
+     apr_socket_close(sock);
+     apr_pool_destroy(p);
This page took 0.048162 seconds and 4 git commands to generate.