Loading CHANGES +19 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,25 @@ Changes with Apache 2.4.17 *) mod_h2: added donated http/2 implementation to build system. Similar configuration options to mod_ssl. [Stefan Eissing] *) mod_cache: r->err_headers_out is not merged into r->headers when mod_cache is enabled and the response is cached for the first time. [Edward Lu] *) mod_slotmem_shm: Fix slots/SHM files names on restart for systems that can't create new (clear) slots while previous children gracefully stopping still use the old ones (e.g. Windows, OS2). mod_proxy_balancer failed to restart whenever the number of configured balancers/members changed during restart. PR 58024. [Yann Ylavic] *) core/util_script: make REDIRECT_URL a full URL. PR 57785. [Nick Kew] *) MPMs: Support SO_REUSEPORT to create multiple duplicated listener records for scalability. [Yingqi Lu <yingqi.lu@intel.com>, Jeff Trawick, Jim Jagielski, Yann Ylavic] *) mod_proxy: Fix a race condition that caused a failed worker to be retried before the retry period is over. [Ruediger Pluem] *) mod_autoindex: Allow autoindexes when neither mod_dir nor mod_mime are loaded. [Eric Covener] Loading STATUS +100 −89 Original line number Diff line number Diff line Loading @@ -110,25 +110,10 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK: [ start all new proposals below, under PATCHES PROPOSED. ] PATCHES PROPOSED TO BACKPORT FROM TRUNK: [ New proposals should be added at the end of the list ] * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch and ProxyMatch section to distinguish between normal workers and workers with regex substitutions in the name. Implement handling of such workers in ap_proxy_get_worker(). Fixes the bug when regex workers were not matched and used for request. PR 43513. trunk patch: http://svn.apache.org/r1609680 http://svn.apache.org/r1609688 http://svn.apache.org/r1641381 ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call). Also added missing r1609688 to the patchset. 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch +1: ylavic -0: covener tried to review this one in Austin with Jeff. Does the added match function really cover a very narrow set of parameters with the way it skips over backreferences? Also, why a new API vs. just setting the field inline? * core: Add ap_errorlog_provider to make ErrorLog logging modular. This backport keeps syslog logging as part of httpd core and only adds API to allow other modules to be used for error logging. Loading @@ -149,6 +134,7 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: needs 2 args which is not valid in ErrorLog manual) trawick: nit: fix "writing" in "/* NULL if we are writting to syslog */" (sorry, haven't finished reviewing completely) jim: What is the status of this?? * mod_journald: Add new module mod_journald to log error logs into journald. This patch needs changes done in mod_systemd patch (already Loading @@ -156,29 +142,10 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: trunk patch: http://svn.apache.org/r1610339 http://svn.apache.org/r1621806 2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-mod_journald.patch +1: jkaluza * MPMs: Support SO_REUSEPORT to create multiple duplicated listener records for scalability (full log in 2.4.x patch). trunk patch: http://svn.apache.org/r1599531 http://svn.apache.org/r1599593 http://svn.apache.org/r1599601 http://svn.apache.org/r1599603 http://svn.apache.org/r1601558 http://svn.apache.org/r1629909 http://svn.apache.org/r1629918 http://svn.apache.org/r1629990 http://svn.apache.org/r1635521 http://svn.apache.org/r1635859 http://svn.apache.org/r1640145 http://svn.apache.org/r1640161 http://svn.apache.org/r1640184 http://svn.apache.org/r1640763 http://svn.apache.org/r1643179 http://svn.apache.org/r1656368 http://svn.apache.org/r1679714 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_listeners_buckets-v3.patch +1: ylavic, jim +1: jkaluza, jim minfrin: Not understanding "This patch needs changes done in mod_systemd patch", am I right in understanding this patch is already committed? *) http: Don't remove the Content-Length of zero from a HEAD response if it comes from an origin server, module or script. Allow the previous Loading @@ -188,10 +155,11 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: trunk patch: http://svn.apache.org/r1554303 http://svn.apache.org/r1678215 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-preserve_head_cl_zero.patch +1: ylavic +1: ylavic, jim ylavic: r1554303 issued a major MMN bump, but since the ABI change is two ints added at the end of core_server_config, the proposed merge does a minor bump only. minfrin: Two new directives need to be documented. *) mod_substitute: Configure patterns merge order. PR 57641 trunk patch: http://svn.apache.org/r1684900 Loading @@ -208,32 +176,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: ylavic: updated to v5 including r1697013 and r1697015, the diff to v4 is: http://people.apache.org/~ylavic/httpd-2.4.x-SubstituteInheritBefore-v4_vs_v5.diff *) mod_proxy: Fix a race condition that caused a failed worker to be retried before the retry period is over Trunk version of patch: http://svn.apache.org/r1664709 http://svn.apache.org/r1697323 Backport version for 2.4.x of patch: Trunk version of patch works modulo CHANGES +1: rpluem, ylavic niq: 1. the if(worker->s->retries) {} and comment at line 2917 don't seem to make any sense. rpluem: This is just taken over from existing code. It is just indented differently hence part of the path I think it should be marked as TODO section. But this should be subject to another patch. 2. Re: error handline line 2930 - can PROXY_WORKER_IS_USABLE not be tested BEFORE opening connection? rpluem: We could, but we can catch more race cases with the current code as it also catches the case where a connection establishment took long and the worker went into error meanwhile. *) util_script: Make REDIRECT_URL a complete URL (where set). PR 57785 trunk: http://svn.apache.org/viewvc?view=revision&revision=1677702 2.4.x: trunk patch applies. +1: niq, jim *) core/mod_ssl: add Protocols/ProtocolsHonorOrder directives and new protocols hooks to control Upgrade: and ALPN protocol switching. HTTP_MISDIRECTED_REQUEST addition and handling in mod_ssl Loading Loading @@ -261,6 +203,8 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: v3: added changes to ap_array_index and ap_array_contains 2.4.x patch: https://raw.githubusercontent.com/icing/mod_h2/master/sandbox/httpd/patches/core-protocols-v4.patch +1: icing, jim minfrin: +1 with proposed MMN bump at https://people.apache.org/~minfrin/core-protocols-mmn.patch +1: jim *) mod_h2: add HTTP/2 support to httpd, depends on core/mod_ssl changes above 2.4.x branch for this and core/mod_ssl: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.17-protocols-http2 Loading @@ -268,21 +212,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: svn diff ^/httpd/httpd/branches/2.4.x ^/httpd/httpd/branches/2.4.17-protocols-http2 +1: icing, jim *) mod_slotmem_shm: Fix slots/SHM files names on restart for systems that can't create new (clear) slots while previous children gracefully stopping still use the old ones (e.g. Windows, OS2). PR 58024. trunk patch: http://svn.apache.org/r1702450 http://svn.apache.org/r1702473 http://svn.apache.org/r1702501 http://svn.apache.org/r1702955 http://svn.apache.org/r1703149 http://svn.apache.org/r1703157 http://svn.apache.org/r1703169 http://svn.apache.org/r1703200 2.4.x patch: trunk works (module CHANGES) merge patch: http://people.apache.org/~ylavic/httpd-2.4.x-mod_slotmem_shm-generation.patch +1: ylavic, jim *) mod_proxy: don't recyle backend announced "Connection: close" connections to avoid reusing it should the close be effective after some new request is ready to be sent. Loading @@ -297,15 +226,81 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: *) mod_proxy: Fix ProxySourceAddress binding failure with AH00938. PR 56687. trunk patch: http://svn.apache.org/r1703902 2.4.x patch: trunk works (module CHANGES) +1: ylavic +1: ylavic, minfrin * mod_cache: r->err_headers_out is not merged into r->headers when mod_cache is enabled and the response is cached for the first time. trunk patch: http://svn.apache.org/r1704392 http://svn.apache.org/r1704395 *) mod_logio: Fix %^FB on initial request on SSL connection by not counting handshake writes as first byte. Also fix processing per Yann's observations about potential problems with e.g. write completion. trunk patch: http://svn.apache.org/r1705099 http://svn.apache.org/r1705134 2.4.x patch: trunk works +1: covener, minfrin *) mod_xml2enc: fix spurious (and harmless) test trunk patch: http://svn.apache.org/r1704099 2.4.x patch: trunk works +1: jailletc36, minfrin *) mod_ssl: namespacing changes from May 2015 trunk patches: https://svn.apache.org/r1674538 https://svn.apache.org/r1677143 https://svn.apache.org/r1677144 https://svn.apache.org/r1677145 https://svn.apache.org/r1677146 https://svn.apache.org/r1677149 https://svn.apache.org/r1677151 https://svn.apache.org/r1677153 https://svn.apache.org/r1677154 https://svn.apache.org/r1677155 https://svn.apache.org/r1677156 https://svn.apache.org/r1677159 https://svn.apache.org/r1677339 https://svn.apache.org/r1677830 https://svn.apache.org/r1677832 https://svn.apache.org/r1677834 https://svn.apache.org/r1677835 2.4.x patch: https://people.apache.org/~kbrand/mod_ssl-2.4.x-namespacing.diff +1: kbrand *) mod_ssl: add support for msUPN and dnsSRV otherName form entries in the subjectAltName extension. PR 58020. trunk patch: https://svn.apache.org/r1693792 2.4.x patch: trunk works (modulo CHANGES), but depends on the namespacing backport (see above) +1: kbrand *) mod_ssl: support SUITEB* cipher strings with OpenSSL 1.0.2 and later. PR 58213. trunk patch: https://svn.apache.org/r1702643 2.4.x patch: trunk works (modulo CHANGES) +1: kbrand *) mod_ssl: Support compilation against libssl built with OPENSSL_NO_SSL3, and change the compiled-in default for SSL[Proxy]Protocol to "all -SSLv3". PR 58349, PR 57120. trunk patch: https://svn.apache.org/r1703952 2.4.x patch: https://people.apache.org/~kbrand/mod_ssl-2.4.x-disable-sslv3.diff +1: kbrand ylavic: Should we really change the (implicit) default in 2.4.x at this stage (and potentially break existing configuratios w/o SSLProtocol which used to work with SSLv3 only capable clients)? *) mod_alias: Introduce expression parser support for Alias, ScriptAlias and Redirect. Limit Redirect expressions to directory (Location) context and redirect statuses (implicit or explicit). trunk patch: http://svn.apache.org/r1653941 http://svn.apache.org/r1653978 http://svn.apache.org/r1656225 http://svn.apache.org/r1686853 http://svn.apache.org/r1686856 2.4.x patch: https://people.apache.org/~minfrin/httpd-mod_alias-expr2.patch +1: minfrin * MPMs: Follow up to r1705492 (SO_REUSEPORT). Add missing (and harmless) backport hunk (for consistency with trunk and 2.4.x's worker/event). trunk patch: http://svn.apache.org/r1629916 2.4.x patch: trunk works +1: elu +1: ylavic PATCHES/ISSUES THAT ARE BEING WORKED Loading Loading @@ -339,6 +334,22 @@ PATCHES/ISSUES THAT ARE BEING WORKED PATCHES/ISSUES THAT ARE STALLED * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch and ProxyMatch section to distinguish between normal workers and workers with regex substitutions in the name. Implement handling of such workers in ap_proxy_get_worker(). Fixes the bug when regex workers were not matched and used for request. PR 43513. trunk patch: http://svn.apache.org/r1609680 http://svn.apache.org/r1609688 http://svn.apache.org/r1641381 ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call). Also added missing r1609688 to the patchset. 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch +1: ylavic -0: covener tried to review this one in Austin with Jeff. Does the added match function really cover a very narrow set of parameters with the way it skips over backreferences? Also, why a new API vs. just setting the field inline? * mod_systemd: New module, for integration with systemd on Linux. trunk patch: http://svn.apache.org/r1393976 http://svn.apache.org/r1393997 Loading docs/manual/convenience.map +1 −0 Original line number Diff line number Diff line Loading @@ -343,6 +343,7 @@ maxrequestworkers mod/mpm_common.html#maxrequestworkers maxspareservers mod/prefork.html#maxspareservers maxsparethreads mod/mpm_common.html#maxsparethreads maxthreads mod/mpm_netware.html#maxthreads memcacheconnttl mod/mod_socache_memcache.html#memcacheconnttl mergetrailers mod/core.html#mergetrailers metadir mod/mod_cern_meta.html#metadir metafiles mod/mod_cern_meta.html#metafiles Loading docs/manual/mod/directives.html.en +1 −0 Original line number Diff line number Diff line Loading @@ -347,6 +347,7 @@ <li><a href="core.html#limitxmlrequestbody">LimitXMLRequestBody</a></li> <li><a href="mpm_common.html#listen">Listen</a></li> <li><a href="mpm_common.html#listenbacklog">ListenBackLog</a></li> <li><a href="mpm_common.html#listencoresbucketsratio">ListenCoresBucketsRatio</a></li> <li><a href="mod_so.html#loadfile">LoadFile</a></li> <li><a href="mod_so.html#loadmodule">LoadModule</a></li> <li><a href="core.html#location"><Location></a></li> Loading docs/manual/mod/mpm_common.html.en +36 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ more than one multi-processing module (MPM)</td></tr> <li><img alt="" src="../images/down.gif" /> <a href="#gracefulshutdowntimeout">GracefulShutdownTimeout</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#listen">Listen</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#listenbacklog">ListenBackLog</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#listencoresbucketsratio">ListenCoresBucketsRatio</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#maxconnectionsperchild">MaxConnectionsPerChild</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#maxmemfree">MaxMemFree</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#maxrequestworkers">MaxRequestWorkers</a></li> Loading Loading @@ -252,6 +253,41 @@ including other causes.</a></li> but use a number based on (but normally larger than) what is set.</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="ListenCoresBucketsRatio" id="ListenCoresBucketsRatio">ListenCoresBucketsRatio</a> <a name="listencoresbucketsratio" id="listencoresbucketsratio">Directive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ratio between the number of CPU cores (online) and the number of listeners' buckets</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ListenCoresBucketsRatio <var>ratio</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ListenCoresBucketsRatio 0 (disabled)</code></td></tr> <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr> <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>MPM</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr> <tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache HTTP Server 2.4.13, with a kernel supporting the socket option <code>SO_REUSEPORT</code> and distributing new connections evenly accross listening processes' (or threads') sockets using it (eg. Linux 3.9 and later, but not the current implementations of <code>SO_REUSEPORT</code> in *BSDs.</td></tr> </table> <p>A <var>ratio</var> between the number of (online) CPU cores and the number of listeners' buckets can be used to make Apache HTTP Server create <code>num_cpu_cores / ratio</code> listening buckets, each containing its own <code class="directive">Listen</code>-ing socket(s) on the same port(s), and then make each child handle a single bucket (with round-robin distribution of the buckets at children creation time).</p> <p><code class="directive">ListenCoresBucketsRatio</code> can improve the scalability when accepting new connections is/becomes the bottleneck. On systems with a large number of CPU cores, enabling this feature has been tested to show significant performances improvement and shorter responses time.</p> <p>There must be at least twice the number of CPU cores than the configured <var>ratio</var> for this to be active. The recommended <var>ratio</var> is <code>8</code>, hence at least <code>16</code> cores should be available at runtime when this value is used.</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="MaxConnectionsPerChild" id="MaxConnectionsPerChild">MaxConnectionsPerChild</a> <a name="maxconnectionsperchild" id="maxconnectionsperchild">Directive</a></h2> Loading Loading
CHANGES +19 −0 Original line number Diff line number Diff line Loading @@ -4,6 +4,25 @@ Changes with Apache 2.4.17 *) mod_h2: added donated http/2 implementation to build system. Similar configuration options to mod_ssl. [Stefan Eissing] *) mod_cache: r->err_headers_out is not merged into r->headers when mod_cache is enabled and the response is cached for the first time. [Edward Lu] *) mod_slotmem_shm: Fix slots/SHM files names on restart for systems that can't create new (clear) slots while previous children gracefully stopping still use the old ones (e.g. Windows, OS2). mod_proxy_balancer failed to restart whenever the number of configured balancers/members changed during restart. PR 58024. [Yann Ylavic] *) core/util_script: make REDIRECT_URL a full URL. PR 57785. [Nick Kew] *) MPMs: Support SO_REUSEPORT to create multiple duplicated listener records for scalability. [Yingqi Lu <yingqi.lu@intel.com>, Jeff Trawick, Jim Jagielski, Yann Ylavic] *) mod_proxy: Fix a race condition that caused a failed worker to be retried before the retry period is over. [Ruediger Pluem] *) mod_autoindex: Allow autoindexes when neither mod_dir nor mod_mime are loaded. [Eric Covener] Loading
STATUS +100 −89 Original line number Diff line number Diff line Loading @@ -110,25 +110,10 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK: [ start all new proposals below, under PATCHES PROPOSED. ] PATCHES PROPOSED TO BACKPORT FROM TRUNK: [ New proposals should be added at the end of the list ] * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch and ProxyMatch section to distinguish between normal workers and workers with regex substitutions in the name. Implement handling of such workers in ap_proxy_get_worker(). Fixes the bug when regex workers were not matched and used for request. PR 43513. trunk patch: http://svn.apache.org/r1609680 http://svn.apache.org/r1609688 http://svn.apache.org/r1641381 ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call). Also added missing r1609688 to the patchset. 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch +1: ylavic -0: covener tried to review this one in Austin with Jeff. Does the added match function really cover a very narrow set of parameters with the way it skips over backreferences? Also, why a new API vs. just setting the field inline? * core: Add ap_errorlog_provider to make ErrorLog logging modular. This backport keeps syslog logging as part of httpd core and only adds API to allow other modules to be used for error logging. Loading @@ -149,6 +134,7 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: needs 2 args which is not valid in ErrorLog manual) trawick: nit: fix "writing" in "/* NULL if we are writting to syslog */" (sorry, haven't finished reviewing completely) jim: What is the status of this?? * mod_journald: Add new module mod_journald to log error logs into journald. This patch needs changes done in mod_systemd patch (already Loading @@ -156,29 +142,10 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: trunk patch: http://svn.apache.org/r1610339 http://svn.apache.org/r1621806 2.4.x patch: http://people.apache.org/~jkaluza/patches/httpd-2.4.x-mod_journald.patch +1: jkaluza * MPMs: Support SO_REUSEPORT to create multiple duplicated listener records for scalability (full log in 2.4.x patch). trunk patch: http://svn.apache.org/r1599531 http://svn.apache.org/r1599593 http://svn.apache.org/r1599601 http://svn.apache.org/r1599603 http://svn.apache.org/r1601558 http://svn.apache.org/r1629909 http://svn.apache.org/r1629918 http://svn.apache.org/r1629990 http://svn.apache.org/r1635521 http://svn.apache.org/r1635859 http://svn.apache.org/r1640145 http://svn.apache.org/r1640161 http://svn.apache.org/r1640184 http://svn.apache.org/r1640763 http://svn.apache.org/r1643179 http://svn.apache.org/r1656368 http://svn.apache.org/r1679714 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_listeners_buckets-v3.patch +1: ylavic, jim +1: jkaluza, jim minfrin: Not understanding "This patch needs changes done in mod_systemd patch", am I right in understanding this patch is already committed? *) http: Don't remove the Content-Length of zero from a HEAD response if it comes from an origin server, module or script. Allow the previous Loading @@ -188,10 +155,11 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: trunk patch: http://svn.apache.org/r1554303 http://svn.apache.org/r1678215 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-preserve_head_cl_zero.patch +1: ylavic +1: ylavic, jim ylavic: r1554303 issued a major MMN bump, but since the ABI change is two ints added at the end of core_server_config, the proposed merge does a minor bump only. minfrin: Two new directives need to be documented. *) mod_substitute: Configure patterns merge order. PR 57641 trunk patch: http://svn.apache.org/r1684900 Loading @@ -208,32 +176,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: ylavic: updated to v5 including r1697013 and r1697015, the diff to v4 is: http://people.apache.org/~ylavic/httpd-2.4.x-SubstituteInheritBefore-v4_vs_v5.diff *) mod_proxy: Fix a race condition that caused a failed worker to be retried before the retry period is over Trunk version of patch: http://svn.apache.org/r1664709 http://svn.apache.org/r1697323 Backport version for 2.4.x of patch: Trunk version of patch works modulo CHANGES +1: rpluem, ylavic niq: 1. the if(worker->s->retries) {} and comment at line 2917 don't seem to make any sense. rpluem: This is just taken over from existing code. It is just indented differently hence part of the path I think it should be marked as TODO section. But this should be subject to another patch. 2. Re: error handline line 2930 - can PROXY_WORKER_IS_USABLE not be tested BEFORE opening connection? rpluem: We could, but we can catch more race cases with the current code as it also catches the case where a connection establishment took long and the worker went into error meanwhile. *) util_script: Make REDIRECT_URL a complete URL (where set). PR 57785 trunk: http://svn.apache.org/viewvc?view=revision&revision=1677702 2.4.x: trunk patch applies. +1: niq, jim *) core/mod_ssl: add Protocols/ProtocolsHonorOrder directives and new protocols hooks to control Upgrade: and ALPN protocol switching. HTTP_MISDIRECTED_REQUEST addition and handling in mod_ssl Loading Loading @@ -261,6 +203,8 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: v3: added changes to ap_array_index and ap_array_contains 2.4.x patch: https://raw.githubusercontent.com/icing/mod_h2/master/sandbox/httpd/patches/core-protocols-v4.patch +1: icing, jim minfrin: +1 with proposed MMN bump at https://people.apache.org/~minfrin/core-protocols-mmn.patch +1: jim *) mod_h2: add HTTP/2 support to httpd, depends on core/mod_ssl changes above 2.4.x branch for this and core/mod_ssl: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.17-protocols-http2 Loading @@ -268,21 +212,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: svn diff ^/httpd/httpd/branches/2.4.x ^/httpd/httpd/branches/2.4.17-protocols-http2 +1: icing, jim *) mod_slotmem_shm: Fix slots/SHM files names on restart for systems that can't create new (clear) slots while previous children gracefully stopping still use the old ones (e.g. Windows, OS2). PR 58024. trunk patch: http://svn.apache.org/r1702450 http://svn.apache.org/r1702473 http://svn.apache.org/r1702501 http://svn.apache.org/r1702955 http://svn.apache.org/r1703149 http://svn.apache.org/r1703157 http://svn.apache.org/r1703169 http://svn.apache.org/r1703200 2.4.x patch: trunk works (module CHANGES) merge patch: http://people.apache.org/~ylavic/httpd-2.4.x-mod_slotmem_shm-generation.patch +1: ylavic, jim *) mod_proxy: don't recyle backend announced "Connection: close" connections to avoid reusing it should the close be effective after some new request is ready to be sent. Loading @@ -297,15 +226,81 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: *) mod_proxy: Fix ProxySourceAddress binding failure with AH00938. PR 56687. trunk patch: http://svn.apache.org/r1703902 2.4.x patch: trunk works (module CHANGES) +1: ylavic +1: ylavic, minfrin * mod_cache: r->err_headers_out is not merged into r->headers when mod_cache is enabled and the response is cached for the first time. trunk patch: http://svn.apache.org/r1704392 http://svn.apache.org/r1704395 *) mod_logio: Fix %^FB on initial request on SSL connection by not counting handshake writes as first byte. Also fix processing per Yann's observations about potential problems with e.g. write completion. trunk patch: http://svn.apache.org/r1705099 http://svn.apache.org/r1705134 2.4.x patch: trunk works +1: covener, minfrin *) mod_xml2enc: fix spurious (and harmless) test trunk patch: http://svn.apache.org/r1704099 2.4.x patch: trunk works +1: jailletc36, minfrin *) mod_ssl: namespacing changes from May 2015 trunk patches: https://svn.apache.org/r1674538 https://svn.apache.org/r1677143 https://svn.apache.org/r1677144 https://svn.apache.org/r1677145 https://svn.apache.org/r1677146 https://svn.apache.org/r1677149 https://svn.apache.org/r1677151 https://svn.apache.org/r1677153 https://svn.apache.org/r1677154 https://svn.apache.org/r1677155 https://svn.apache.org/r1677156 https://svn.apache.org/r1677159 https://svn.apache.org/r1677339 https://svn.apache.org/r1677830 https://svn.apache.org/r1677832 https://svn.apache.org/r1677834 https://svn.apache.org/r1677835 2.4.x patch: https://people.apache.org/~kbrand/mod_ssl-2.4.x-namespacing.diff +1: kbrand *) mod_ssl: add support for msUPN and dnsSRV otherName form entries in the subjectAltName extension. PR 58020. trunk patch: https://svn.apache.org/r1693792 2.4.x patch: trunk works (modulo CHANGES), but depends on the namespacing backport (see above) +1: kbrand *) mod_ssl: support SUITEB* cipher strings with OpenSSL 1.0.2 and later. PR 58213. trunk patch: https://svn.apache.org/r1702643 2.4.x patch: trunk works (modulo CHANGES) +1: kbrand *) mod_ssl: Support compilation against libssl built with OPENSSL_NO_SSL3, and change the compiled-in default for SSL[Proxy]Protocol to "all -SSLv3". PR 58349, PR 57120. trunk patch: https://svn.apache.org/r1703952 2.4.x patch: https://people.apache.org/~kbrand/mod_ssl-2.4.x-disable-sslv3.diff +1: kbrand ylavic: Should we really change the (implicit) default in 2.4.x at this stage (and potentially break existing configuratios w/o SSLProtocol which used to work with SSLv3 only capable clients)? *) mod_alias: Introduce expression parser support for Alias, ScriptAlias and Redirect. Limit Redirect expressions to directory (Location) context and redirect statuses (implicit or explicit). trunk patch: http://svn.apache.org/r1653941 http://svn.apache.org/r1653978 http://svn.apache.org/r1656225 http://svn.apache.org/r1686853 http://svn.apache.org/r1686856 2.4.x patch: https://people.apache.org/~minfrin/httpd-mod_alias-expr2.patch +1: minfrin * MPMs: Follow up to r1705492 (SO_REUSEPORT). Add missing (and harmless) backport hunk (for consistency with trunk and 2.4.x's worker/event). trunk patch: http://svn.apache.org/r1629916 2.4.x patch: trunk works +1: elu +1: ylavic PATCHES/ISSUES THAT ARE BEING WORKED Loading Loading @@ -339,6 +334,22 @@ PATCHES/ISSUES THAT ARE BEING WORKED PATCHES/ISSUES THAT ARE STALLED * mod_proxy: Add ap_proxy_define_match_worker() and use it for ProxyPassMatch and ProxyMatch section to distinguish between normal workers and workers with regex substitutions in the name. Implement handling of such workers in ap_proxy_get_worker(). Fixes the bug when regex workers were not matched and used for request. PR 43513. trunk patch: http://svn.apache.org/r1609680 http://svn.apache.org/r1609688 http://svn.apache.org/r1641381 ylavic: Merge patch provided (reusing new->real to avoid double de_socketfy() call). Also added missing r1609688 to the patchset. 2.4.x patch: http://people.apache.org/~ylavic/httpd-2.4.x-ap_proxy_define_match_worker.patch +1: ylavic -0: covener tried to review this one in Austin with Jeff. Does the added match function really cover a very narrow set of parameters with the way it skips over backreferences? Also, why a new API vs. just setting the field inline? * mod_systemd: New module, for integration with systemd on Linux. trunk patch: http://svn.apache.org/r1393976 http://svn.apache.org/r1393997 Loading
docs/manual/convenience.map +1 −0 Original line number Diff line number Diff line Loading @@ -343,6 +343,7 @@ maxrequestworkers mod/mpm_common.html#maxrequestworkers maxspareservers mod/prefork.html#maxspareservers maxsparethreads mod/mpm_common.html#maxsparethreads maxthreads mod/mpm_netware.html#maxthreads memcacheconnttl mod/mod_socache_memcache.html#memcacheconnttl mergetrailers mod/core.html#mergetrailers metadir mod/mod_cern_meta.html#metadir metafiles mod/mod_cern_meta.html#metafiles Loading
docs/manual/mod/directives.html.en +1 −0 Original line number Diff line number Diff line Loading @@ -347,6 +347,7 @@ <li><a href="core.html#limitxmlrequestbody">LimitXMLRequestBody</a></li> <li><a href="mpm_common.html#listen">Listen</a></li> <li><a href="mpm_common.html#listenbacklog">ListenBackLog</a></li> <li><a href="mpm_common.html#listencoresbucketsratio">ListenCoresBucketsRatio</a></li> <li><a href="mod_so.html#loadfile">LoadFile</a></li> <li><a href="mod_so.html#loadmodule">LoadModule</a></li> <li><a href="core.html#location"><Location></a></li> Loading
docs/manual/mod/mpm_common.html.en +36 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ more than one multi-processing module (MPM)</td></tr> <li><img alt="" src="../images/down.gif" /> <a href="#gracefulshutdowntimeout">GracefulShutdownTimeout</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#listen">Listen</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#listenbacklog">ListenBackLog</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#listencoresbucketsratio">ListenCoresBucketsRatio</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#maxconnectionsperchild">MaxConnectionsPerChild</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#maxmemfree">MaxMemFree</a></li> <li><img alt="" src="../images/down.gif" /> <a href="#maxrequestworkers">MaxRequestWorkers</a></li> Loading Loading @@ -252,6 +253,41 @@ including other causes.</a></li> but use a number based on (but normally larger than) what is set.</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="ListenCoresBucketsRatio" id="ListenCoresBucketsRatio">ListenCoresBucketsRatio</a> <a name="listencoresbucketsratio" id="listencoresbucketsratio">Directive</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Ratio between the number of CPU cores (online) and the number of listeners' buckets</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>ListenCoresBucketsRatio <var>ratio</var></code></td></tr> <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>ListenCoresBucketsRatio 0 (disabled)</code></td></tr> <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config</td></tr> <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>MPM</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr> <tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache HTTP Server 2.4.13, with a kernel supporting the socket option <code>SO_REUSEPORT</code> and distributing new connections evenly accross listening processes' (or threads') sockets using it (eg. Linux 3.9 and later, but not the current implementations of <code>SO_REUSEPORT</code> in *BSDs.</td></tr> </table> <p>A <var>ratio</var> between the number of (online) CPU cores and the number of listeners' buckets can be used to make Apache HTTP Server create <code>num_cpu_cores / ratio</code> listening buckets, each containing its own <code class="directive">Listen</code>-ing socket(s) on the same port(s), and then make each child handle a single bucket (with round-robin distribution of the buckets at children creation time).</p> <p><code class="directive">ListenCoresBucketsRatio</code> can improve the scalability when accepting new connections is/becomes the bottleneck. On systems with a large number of CPU cores, enabling this feature has been tested to show significant performances improvement and shorter responses time.</p> <p>There must be at least twice the number of CPU cores than the configured <var>ratio</var> for this to be active. The recommended <var>ratio</var> is <code>8</code>, hence at least <code>16</code> cores should be available at runtime when this value is used.</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> <div class="directive-section"><h2><a name="MaxConnectionsPerChild" id="MaxConnectionsPerChild">MaxConnectionsPerChild</a> <a name="maxconnectionsperchild" id="maxconnectionsperchild">Directive</a></h2> Loading