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

ASF GitHub Bot commented on TS-1007:
------------------------------------

Github user shinrich commented on a diff in the pull request:

    https://github.com/apache/trafficserver/pull/249#discussion_r34518050
  
    --- Diff: proxy/http/HttpSM.cc ---
    @@ -6560,6 +6559,12 @@ HttpSM::kill_this()
       reentrancy_count--;
       ink_release_assert(reentrancy_count == 0);
     
    +  // Delay the close of the user agent session, so the close session
    +  // occurs after the close transaction
    +  if (ua_session != NULL)
    --- End diff --
    
    The existing code is pretty eager to do_io_close() on the VC in error cases 
anyway. 


> SSN Close called before TXN Close
> ---------------------------------
>
>                 Key: TS-1007
>                 URL: https://issues.apache.org/jira/browse/TS-1007
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: TS API
>    Affects Versions: 3.0.1
>            Reporter: Nick Kew
>            Assignee: Susan Hinrichs
>              Labels: incompatible
>             Fix For: 6.0.0
>
>
> Where a plugin implements both SSN_CLOSE_HOOK and TXN_CLOSE_HOOK, the 
> SSN_CLOSE_HOOK is called first of the two.  This messes up normal cleanups!
> Details:
>   Register a SSN_START event globally
>   In the SSN START, add a TXN_START and a SSN_CLOSE
>   In the TXN START, add a TXN_CLOSE
> Stepping through, I see the order of events actually called, for the simple 
> case of a one-off HTTP request with no keepalive:
> SSN_START
> TXN_START
> SSN_END
> TXN_END
> Whoops, SSN_END cleaned up the SSN context, leaving dangling pointers in the 
> TXN!



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

Reply via email to