TS-2148: handle_cache_operation_on_forward_server_response ignores value of api_server_response_no_store
In the function HttpTransact::handle_cache_operation_on_forward_server_response there is a line that checks the value of s->api_server_response_no_store (line 4162 in HttpTransact.cc). This value will never be true, however, because is_response_cacheable is called before this check (on line 3934) and sets this value to false (on line 6104). Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/d1c222a4 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/d1c222a4 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/d1c222a4 Branch: refs/heads/5.0.x Commit: d1c222a402a4861707c56140297c4b9389ae4651 Parents: 6fda8f9 Author: Corey Cossentino <co...@cossentino.com> Authored: Fri Aug 23 13:51:08 2013 -0700 Committer: James Peach <jpe...@apache.org> Committed: Fri Aug 23 13:51:08 2013 -0700 ---------------------------------------------------------------------- CHANGES | 3 +++ proxy/http/HttpTransact.cc | 2 -- 2 files changed, 3 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/d1c222a4/CHANGES ---------------------------------------------------------------------- diff --git a/CHANGES b/CHANGES index 8e338f8..6a62e60 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,9 @@ Changes with Apache Traffic Server 4.1.0 + *) [TS-2148] handle_cache_operation_on_forward_server_response ignores value of api_server_response_no_store + Author: Corey Cossentino <co...@cossentino.com> + *) [TS-2147] Set server_share_sessions to 1 for 'internal' transactions in rfc5861 plugin. *) [TS-2107] split proxy.config.http.transaction_active_timeout_in to proxy.config.http.transaction_header_timeout_in http://git-wip-us.apache.org/repos/asf/trafficserver/blob/d1c222a4/proxy/http/HttpTransact.cc ---------------------------------------------------------------------- diff --git a/proxy/http/HttpTransact.cc b/proxy/http/HttpTransact.cc index 28a4130..c1d3649 100644 --- a/proxy/http/HttpTransact.cc +++ b/proxy/http/HttpTransact.cc @@ -4160,7 +4160,6 @@ HttpTransact::handle_cache_operation_on_forward_server_response(State* s) // precondition: s->cache_info.action is one of the following // CACHE_DO_UPDATE, CACHE_DO_WRITE, or CACHE_DO_DELETE if (s->api_server_response_no_store) { - s->api_server_response_no_store = false; s->cache_info.action = CACHE_DO_NO_ACTION; } else if (s->api_server_response_ignore && server_response_code == HTTP_STATUS_OK && @@ -6101,7 +6100,6 @@ HttpTransact::is_response_cacheable(State* s, HTTPHdr* request, HTTPHdr* respons } // the plugin may decide we don't want to cache the response if (s->api_server_response_no_store) { - s->api_server_response_no_store = false; return (false); } // default cacheability