Updated Branches: refs/heads/master baa602e14 -> b28311666
TS-1512: volume & hosting will crash the server in cluster Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/b2831166 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/b2831166 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/b2831166 Branch: refs/heads/master Commit: b28311666a5206bb90c51d0554ac2f77cb66142f Parents: baa602e Author: Chen Bin <[email protected]> Authored: Sat Oct 20 21:52:03 2012 +0800 Committer: Zhao Yongming <[email protected]> Committed: Sat Oct 20 21:54:21 2012 +0800 ---------------------------------------------------------------------- CHANGES | 2 ++ iocore/cluster/ClusterCache.cc | 7 ++----- 2 files changed, 4 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/b2831166/CHANGES ---------------------------------------------------------------------- diff --git a/CHANGES b/CHANGES index d0c9af5..77dc141 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,8 @@ -*- coding: utf-8 -*- Changes with Apache Traffic Server 3.3.1 + *) [TS-1512] get volume & hosting work with cluster + *) [TS-1539] Update build package list in README *) [TS-1535] FetchSM process_fetch_write should ignore event TS_EVENT_VCONN_WRITE_READY http://git-wip-us.apache.org/repos/asf/trafficserver/blob/b2831166/iocore/cluster/ClusterCache.cc ---------------------------------------------------------------------- diff --git a/iocore/cluster/ClusterCache.cc b/iocore/cluster/ClusterCache.cc index 20c8fee..ac5599d 100644 --- a/iocore/cluster/ClusterCache.cc +++ b/iocore/cluster/ClusterCache.cc @@ -1339,12 +1339,11 @@ cache_op_ClusterFunction(ClusterHandler * ch, void *data, int len) ink_release_assert(c->read_cluster_vc != CLUSTER_DELAYED_OPEN); CacheHTTPInfo *ci = 0; - const char *p; + const char *p = (const char *) msg + flen; int res = 0; int moi_len = len - flen; if (moi_len && c->cfl_flags & CFL_LOPENWRITE_HAVE_OLDINFO) { - p = (const char *) msg + flen; // Unmarshal old CacheHTTPInfo res = HTTPInfo::unmarshal((char *) p, moi_len, NULL); @@ -1352,8 +1351,6 @@ cache_op_ClusterFunction(ClusterHandler * ch, void *data, int len) c->ic_old_info.get_handle((char *) p, moi_len); ink_assert(c->ic_old_info.valid()); ci = &c->ic_old_info; - } else { - p = (const char *) 0; } if (c->cfl_flags & CFL_ALLOW_MULTIPLE_WRITES) { ink_assert(!ci); @@ -1371,7 +1368,7 @@ cache_op_ClusterFunction(ClusterHandler * ch, void *data, int len) Cache *call_cache = caches[c->frag_type]; Action *a = call_cache->open_write(c, &key, ci, c->pin_in_cache, - NULL, c->frag_type, hostname, len); + NULL, c->frag_type, hostname, moi_len); if (a != ACTION_RESULT_DONE) { c->cache_action = a; }
