This is an automated email from the ASF dual-hosted git repository.
scw00 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/master by this push:
new f5534ba Assert when sm callback to wrong thread
f5534ba is described below
commit f5534ba5581e09ebe3e759dc04c9dda23b75a741
Author: scw00 <[email protected]>
AuthorDate: Thu Jan 24 17:43:37 2019 +0800
Assert when sm callback to wrong thread
---
src/traffic_server/InkAPI.cc | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/traffic_server/InkAPI.cc b/src/traffic_server/InkAPI.cc
index cbe88ce..5b63750 100644
--- a/src/traffic_server/InkAPI.cc
+++ b/src/traffic_server/InkAPI.cc
@@ -5928,13 +5928,14 @@ TSHttpTxnReenable(TSHttpTxn txnp, TSEvent event)
// If this function is being executed on a thread created by the API
// which is DEDICATED, the continuation needs to be called back on a
// REGULAR thread.
- if (eth == nullptr || eth->tt != REGULAR) {
+ if (eth == nullptr || eth->tt != REGULAR || !eth->is_event_type(ET_NET)) {
eventProcessor.schedule_imm(new TSHttpSMCallback(sm, event), ET_NET);
} else {
MUTEX_TRY_LOCK(trylock, sm->mutex, eth);
if (!trylock.is_locked()) {
eventProcessor.schedule_imm(new TSHttpSMCallback(sm, event), ET_NET);
} else {
+ ink_assert(eth->is_event_type(ET_NET));
sm->state_api_callback((int)event, nullptr);
}
}