Hi all, I have a little Lua example that trips all the ssn and txn hooks. The callback function for each hook just calls TSHttpTxnReenable(). I'm finding that re-enablin the transaction in response to a TS_EVENT_HTTP_READ_RESPONSE_HDR event always asserts.
I figured that calling TSHttpTxnReenable() was always the right thing to do ... are there cases where it must not be called, os is this just a bug? [Aug 27 22:35:10.631] Server {0xab52000} DIAG: (lua) LuaDemuxTxnHook: LuaDemuxTxnHook(HTTP_READ_RESPONSE_HDR_HOOK) lthread=0x7ffa98d015e0 event=60006 edata=0xf8eb2d0 [Aug 27 22:35:10.632] Server {0xab52000} DIAG: (hooks) handling transaction event 60006 FATAL: ../iocore/eventsystem/I_VConnection.h:391: failed assert `!"VConnection::do_io_write -- " "cannot use default implementation"` /opt/ats/bin/traffic_server - STACK TRACE: 0 libtsutil.3.dylib 0x0000000109aa6df7 ink_fatal + 359 1 libtsutil.3.dylib 0x0000000109aa5d52 _ink_assert + 66 2 traffic_server 0x0000000108eb9842 _ZN16DummyVConnection11do_io_writeEP12ContinuationxP14IOBufferReaderb + 66 3 traffic_server 0x0000000108ef2b31 _ZN20TransformVConnection11do_io_writeEP12ContinuationxP14IOBufferReaderb + 225 4 traffic_server 0x0000000108f942c0 _ZN10HttpTunnel12producer_runEP18HttpTunnelProducer + 1904 5 traffic_server 0x0000000108f93a6b _ZN10HttpTunnel10tunnel_runEP18HttpTunnelProducer + 203 6 traffic_server 0x0000000108f53d4d _ZN6HttpSM14set_next_stateEv + 3405 7 traffic_server 0x0000000108f3af21 _ZN6HttpSM32call_transact_and_set_next_stateEPFvPN12HttpTransact5StateEE + 497 8 traffic_server 0x0000000108f3f1e6 _ZN6HttpSM17handle_api_returnEv + 326 9 traffic_server 0x0000000108f3e015 _ZN6HttpSM17state_api_calloutEiPv + 2805 10 traffic_server 0x0000000108f3d485 _ZN6HttpSM18state_api_callbackEiPv + 485 11 traffic_server 0x0000000108eae170 TSHttpTxnReenable + 448 12 lua.so 0x000000000f376daf _ZL18LuaHttpTxnContinueP9lua_State + 47 13 lua.so 0x000000000f37b339 lj_BC_FUNCC + 52