[ 
https://issues.apache.org/jira/browse/TS-4539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15330103#comment-15330103
 ] 

Susan Hinrichs commented on TS-4539:
------------------------------------

We don't change the mutex associated with server_vc when moving them in and out 
of the session pool.  Actually we don't change the mutex of the ServerSession 
when moving into the pool either.

The Server_vc->mutex shouldn't need to change.  Either it came in and out of a 
thread pool, in which case it should still be using the mutex of the Ethread.  
Or it came out of a global pool, and we migrated it as necessary to it should 
have the mutex of the current EThread.

Not entirely sure why we reassign the ServerSession mutex in 
HttpSM::attach_server_session().  The comment ahead of it doesn't make much 
sense to me.   I don't think this part of the logic has changed from 5.3 to 
6.x.  Have you had problems with it?

> the mutex of server_vc is not set while server_session reuse.
> -------------------------------------------------------------
>
>                 Key: TS-4539
>                 URL: https://issues.apache.org/jira/browse/TS-4539
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP
>            Reporter: Oknet Xu
>
> NetAccept got a client_vc and call new_ProxyMutex() to assign a mutex.
> And the HttpClientSession, HttpSM, HttpServerSession, server_vc also share 
> the same mutex.
> The HttpServerSession and server_vc will put into ServerSessionPool and may 
> assign to next new client_vc.
> The HttpSM::attach_server_session() only set the mutex of HttpServerSession 
> to the mutex of HttpSM after get a HttpServerSession from ServerSessionPool.
> But it forget to set the mutex of server_vc to the mutex of HttpSM.
>  
> {code}
> void
> HttpSM::attach_server_session(HttpServerSession *s)
> {
>   hsm_release_assert(server_session == NULL);
>   hsm_release_assert(server_entry == NULL);
>   hsm_release_assert(s->state == HSS_ACTIVE);
>   server_session = s; 
>   server_session->transact_count++;
>   // Set the mutex so that we have something to update
>   //   stats with
>   server_session->mutex = this->mutex;
> {code}
> But I can not found any issue, Is it by design?
> Or it is hard to locate the problem, due to my limited knowedge on HttpSM.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to