On 04/01/2013, at 6:27 PM, chen...@apache.org wrote:

> Updated Branches:
>  refs/heads/master 4a614a967 -> 27c0f2248
> 
> 
> TS-1601: HttpServerSession::release don't close ServerSession if 
> ServerSessionPool locking contention
> 
> 
> Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
> Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/27c0f224
> Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/27c0f224
> Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/27c0f224
> 
> Branch: refs/heads/master
> Commit: 27c0f22487b246b327827c4f0b6c340cdaed6bea
> Parents: 4a614a9
> Author: Chen Bin <kuo...@taobao.com>
> Authored: Sat Jan 5 10:25:13 2013 +0800
> Committer: binchen <binchen@t-kuotai.(none)>
> Committed: Sat Jan 5 10:27:05 2013 +0800
> 
> ----------------------------------------------------------------------
> CHANGES                          |    1 +
> proxy/http/HttpServerSession.cc  |   15 +--------------
> proxy/http/HttpSessionManager.cc |   12 +++++++++---
> 3 files changed, 11 insertions(+), 17 deletions(-)
> ----------------------------------------------------------------------
> 
> 
> http://git-wip-us.apache.org/repos/asf/trafficserver/blob/27c0f224/CHANGES
> ----------------------------------------------------------------------
> diff --git a/CHANGES b/CHANGES
> index 3f6550e..3e969b6 100644
> --- a/CHANGES
> +++ b/CHANGES
> @@ -1,6 +1,7 @@
>                                                          -*- coding: utf-8 -*-
> Changes with Apache Traffic Server 3.3.1
> 
> +  *) [TS-1601] HttpServerSession::release don't close ServerSession if 
> ServerSessionPool locking contention
> 
>   *) [TS-1643] Post requests with no Content-Length header sends default 
> error response
> 
> 
> http://git-wip-us.apache.org/repos/asf/trafficserver/blob/27c0f224/proxy/http/HttpServerSession.cc
> ----------------------------------------------------------------------
> diff --git a/proxy/http/HttpServerSession.cc b/proxy/http/HttpServerSession.cc
> index 7898c09..8c8fdd3 100644
> --- a/proxy/http/HttpServerSession.cc
> +++ b/proxy/http/HttpServerSession.cc
> @@ -170,18 +170,5 @@ HttpServerSession::release()
>     return;
>   }
> 
> -  HSMresult_t r = httpSessionManager.release_session(this);
> -  
> -
> -  if (r == HSM_RETRY) {
> -    // Session could not be put in the session manager
> -    //  due to lock contention
> -    // FIX:  should retry instead of closing
> -    this->do_io_close();
> -  } else {
> -    // The session was successfully put into the session
> -    //    manager and it will manage it
> -    // (Note: should never get HSM_NOT_FOUND here)
> -    ink_assert(r == HSM_DONE);
> -  }
> +  httpSessionManager.release_session(this);

Since HttpSessionManager::release_session() now guarantees to release the 
session, should it now return void?

J

Reply via email to