| 1751 | } |
| 1752 | |
| 1753 | bool |
| 1754 | HttpSM::create_server_txn(PoolableSession *new_session) |
| 1755 | { |
| 1756 | ink_assert(new_session != nullptr); |
| 1757 | bool retval = false; |
| 1758 | |
| 1759 | server_txn = new_session->new_transaction(); |
| 1760 | if (server_txn) { |
| 1761 | retval = true; |
| 1762 | server_txn->attach_transaction(this); |
| 1763 | if (t_state.current.request_to == ResolveInfo::PARENT_PROXY) { |
| 1764 | new_session->to_parent_proxy = true; |
| 1765 | if (server_txn->get_proxy_ssn()->get_transact_count() == 1) { |
| 1766 | // These are connection-level metrics, so only increment them for the |
| 1767 | // first transaction lest they get overcounted. |
| 1768 | Metrics::Gauge::increment(http_rsb.current_parent_proxy_connections); |
| 1769 | Metrics::Counter::increment(http_rsb.total_parent_proxy_connections); |
| 1770 | } |
| 1771 | } else { |
| 1772 | new_session->to_parent_proxy = false; |
| 1773 | } |
| 1774 | server_txn->do_io_write(this, 0, nullptr); |
| 1775 | attach_server_session(); |
| 1776 | } |
| 1777 | _netvc = nullptr; |
| 1778 | _netvc_read_buffer = nullptr; |
| 1779 | _netvc_reader = nullptr; |
| 1780 | return retval; |
| 1781 | } |
| 1782 | |
| 1783 | ////////////////////////////////////////////////////////////////////////////// |
| 1784 | // |
no test coverage detected