Github user jpeach commented on the issue:
https://github.com/apache/trafficserver/pull/801
I had to re-read this code to refresh my memory on how this works. I think
that the invariant that the ``ProxyClientSession`` requires is that the API
hooks are the first and last operations performed on the session. This means
that the handler must be ``NULL`` when delivering the ``SSN_START`` event
(which is always true because this is done before ``start()``). It also means
that we should not have to worry about other event handlers when delivering
``SSN_CLOSE``, because the only ``destroy()`` happens after this.
I agree that ``state_api_callout`` should not be virtual (it should be
private).
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---