You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by am...@apache.org on 2015/01/06 18:08:39 UTC

trafficserver git commit: TS-3274: Fix race condition for cache fixup in ram cache.

Repository: trafficserver
Updated Branches:
  refs/heads/master 774d893ce -> 0a2094621


TS-3274: Fix race condition for cache fixup in ram cache.


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/0a209462
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/0a209462
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/0a209462

Branch: refs/heads/master
Commit: 0a2094621b920eefee8c141b336fc6ec09d02070
Parents: 774d893
Author: Alan M. Carroll <am...@apache.org>
Authored: Tue Jan 6 11:08:20 2015 -0600
Committer: Alan M. Carroll <am...@apache.org>
Committed: Tue Jan 6 11:08:20 2015 -0600

----------------------------------------------------------------------
 CHANGES                   | 2 ++
 iocore/cache/CacheRead.cc | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0a209462/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index e308d91..022cc88 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,8 @@
                                                          -*- coding: utf-8 -*-
 Changes with Apache Traffic Server 5.3.0
 
+  *) [TS-3274] Forward port fix for cache fixup race condition in ram cache from 4.2.X.
+
   *) [TS-3225] Add more API support to ts_lua plugin.
 
   *) [TS-3255] Support flush option in gzip plugin.

http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0a209462/iocore/cache/CacheRead.cc
----------------------------------------------------------------------
diff --git a/iocore/cache/CacheRead.cc b/iocore/cache/CacheRead.cc
index d6fe0f8..a20737e 100644
--- a/iocore/cache/CacheRead.cc
+++ b/iocore/cache/CacheRead.cc
@@ -161,7 +161,8 @@ uint32_t
 CacheVC::load_http_info(CacheHTTPInfoVector* info, Doc* doc, RefCountObj * block_ptr)
 {
   uint32_t zret = info->get_handles(doc->hdr(), doc->hlen, block_ptr);
-  if (cache_config_compatibility_4_2_0_fixup &&
+  if (cache_config_compatibility_4_2_0_fixup && // manual override not engaged
+      ! this->f.doc_from_ram_cache && // it's already been done for ram cache fragments
       vol->header->version.ink_major == 23 && vol->header->version.ink_minor == 0
     ) {
     for ( int i = info->xcount - 1 ; i >= 0 ; --i ) {