MCPcopy Create free account
hub / github.com/apache/trafficserver / new_transaction

Method new_transaction

src/proxy/ProxyTransaction.cc:45–70  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43}
44
45void
46ProxyTransaction::new_transaction(bool from_early_data)
47{
48 ink_release_assert(_sm == nullptr);
49
50 // Defensive programming, make sure nothing persists across
51 // connection re-use
52
53 ink_release_assert(_proxy_ssn != nullptr);
54 _sm = THREAD_ALLOC(httpSMAllocator, this_thread());
55 _sm->init(from_early_data);
56 HttpTxnDebug("[%" PRId64 "] Starting transaction %d using sm [%" PRId64 "]", _proxy_ssn->connection_id(),
57 _proxy_ssn->get_transact_count(), _sm->sm_id);
58
59 // PI tag valid only for internal requests
60 if (this->get_netvc()->get_is_internal_request()) {
61 PluginIdentity *pi = dynamic_cast<PluginIdentity *>(this->get_netvc());
62 if (pi) {
63 _sm->plugin_tag = pi->getPluginTag();
64 _sm->plugin_id = pi->getPluginId();
65 }
66 }
67
68 this->increment_transactions_stat();
69 _sm->attach_client_session(this);
70}
71
72bool
73ProxyTransaction::attach_server_session(PoolableSession *ssession, bool transaction_done)

Callers

nothing calls this directly

Calls 10

get_netvcMethod · 0.95
this_threadFunction · 0.85
initMethod · 0.45
connection_idMethod · 0.45
get_transact_countMethod · 0.45
getPluginTagMethod · 0.45
getPluginIdMethod · 0.45
attach_client_sessionMethod · 0.45

Tested by

no test coverage detected