On Thu, 15 Jan 2015 11:01:43 -0600
Susan Hinrichs <shinr...@network-geographics.com> wrote:

> I've dug into Lev's observation on the Transaction Start hook and blind 
> tunnels some more.  I'd like to pursue two issues so I'm dividing his 
> note into two.
> 
> As the code currently stands, both TS_HTTP_TXN_START_HOOK and 
> TS_HTTP_SSN_START_HOOK get called at the start of the session. 
> TS_HTTP_SSN_START_HOOK gets involved explicitly from 
> HttpClientSession::new_connection().  TS_HTTP_TXN_START_HOOK gets called 
> from HttpSM::state_add_to_list.  The TS_HTTP_TXN_START_HOOK gets called 
> before any attempt is made to read the client header (at least for the 
> first transaction).

Heh.  I've long been aware of some anomalies, but I hadn't realised
TXN_START would get called in the absence of an HTTP request line.
I think this calls for some more customised testing on my part.

If what you're saying is that the creation of a txn, and with it the
calling of any TXN_START continuations, should be contingent on
detecting an HTTP request line, then +1.

> At the end TS_HTTP_TXN_CLOSE_HOOK and TS_SSN_CLOSE_HOOK both get called 
> (though in the wrong order in my opinion, but Alan says that this is a 
> known issue).

I've seen both orders.  I agree it would be much easier if we could
rely on seeing TXN_CLOSE first, but it can be worked around.

-- 
Nick Kew

Reply via email to