]> granicus.if.org Git - apache/commit
Merge r1227637, r1227642 from trunk:
authorEric Covener <covener@apache.org>
Thu, 5 Jan 2012 15:47:08 +0000 (15:47 +0000)
committerEric Covener <covener@apache.org>
Thu, 5 Jan 2012 15:47:08 +0000 (15:47 +0000)
commit5f68d2de351a18be8c7c4ca7fdca92ea660ecb1e
treec00bc5a32802c352c9e7416cc48b87c5ca27f754
parentde6a694ea61825f486575f97bf28368adab53e11
Merge r1227637, r1227642 from trunk:

restore the generic proxy workers to not being address-reusable.

The guts of mod_proxy is not really ready for the addr and host on a
proxy_conn_rec to change over time and differ from the 1 cached in the worker.

* proxy_worker->cp->addr needs to know what host/port it cached
* conn->addr and conn->hostname need to be allocated from their own subpool
  so they can be cleared as they change
* ap_proxy_determine_connection needs to be more careful about which
  addr is the TCP endpoint and what we have in either cache.
* may need to avoid updating the proxy_worker addr cache if we know
  the value is flipping.

Update the comment and checks around address/connection reusability
in mod_proxy.

The checks and comment are a vestige of 2.0.x
mod_proxy_http where the backend proxy conn was stored in
the frontend r->conn_config, but ap_proxy_determine_connection()
doesn't associate the frontend and backend conns like this.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1227645 13f79535-47bb-0310-9956-ffa450edef68
modules/proxy/mod_proxy.c
modules/proxy/proxy_util.c