represents a single helper process More...
#include <helper.h>


Classes | |
| struct | _helper_flags |
Public Types | |
| using | Requests = std::list< Xaction * > |
Public Member Functions | |
| ~SessionBase () override | |
| void | closePipesSafely (const char *name) |
| void | closeWritePipeSafely (const char *name) |
| virtual bool | reserved ()=0 |
| whether the server is locked for exclusive use by a client More... | |
| virtual void | dropQueued (Client &) |
| dequeues and sends an Unknown answer to all queued requests More... | |
| void | initStats () |
| virtual void * | toCbdata ()=0 |
Public Attributes | |
| const InstanceId< SessionBase > | index |
| int | pid |
| Ip::Address | addr |
| Comm::ConnectionPointer | readPipe |
| Comm::ConnectionPointer | writePipe |
| void * | hIpc |
| char * | rbuf |
| size_t | rbuf_sz |
| size_t | roffset |
| struct timeval | dispatch_time |
| struct timeval | answer_time |
| dlink_node | link |
| struct Helper::SessionBase::_helper_flags | flags |
| Requests | requests |
| requests in order of submission/expiration More... | |
| struct { | |
| uint64_t uses | |
| uint64_t replies | |
| uint64_t pending | |
| uint64_t releases | |
| uint64_t timedout | |
| } | stats |
Private Member Functions | |
| virtual void | finalizedInCbdataChild ()=0 |
| hack: ensure CBDATA_CHILD() after a toCbdata()-defining CBDATA_INTERMEDIATE() More... | |
Detailed Description
Member Typedef Documentation
◆ Requests
| using Helper::SessionBase::Requests = std::list<Xaction *> |
Constructor & Destructor Documentation
◆ ~SessionBase()
|
override |
Definition at line 138 of file helper.cc.
References memFreeBuf().
Member Function Documentation
◆ closePipesSafely()
| void Helper::SessionBase::closePipesSafely | ( | const char * | name | ) |
Closes pipes to the helper safely. Handles the case where the read and write pipes are the same FD.
- Parameters
-
name displayed for the helper being shutdown if logging an error
Definition at line 72 of file helper.cc.
References DBG_IMPORTANT, debugs, getCurrentTime(), hIpc, and pid.
Referenced by helperReturnBuffer(), helperStatefulHandleRead(), and helperStatefulShutdown().
◆ closeWritePipeSafely()
| void Helper::SessionBase::closeWritePipeSafely | ( | const char * | name | ) |
Closes the reading pipe. If the read and write sockets are the same the write pipe will also be closed. Otherwise its left open for later handling.
- Parameters
-
name displayed for the helper being shutdown if logging an error
Definition at line 100 of file helper.cc.
References DBG_IMPORTANT, debugs, getCurrentTime(), hIpc, and pid.
Referenced by helperReturnBuffer(), and helperStatefulServerDone().
◆ dropQueued()
|
virtual |
Reimplemented in Helper::Session.
Definition at line 126 of file helper.cc.
References Helper::Client::callBack(), and Helper::Unknown.
Referenced by Helper::Session::dropQueued(), and helper_stateful_server::HelperServerClosed().
◆ finalizedInCbdataChild()
|
privatepure virtualinherited |
◆ initStats()
| void Helper::SessionBase::initStats | ( | ) |
Definition at line 62 of file helper.cc.
References stats.
Referenced by statefulhelper::openSessions().
◆ reserved()
|
pure virtual |
Implemented in Helper::Session, and helper_stateful_server.
◆ toCbdata()
|
pure virtualinherited |
Referenced by AsyncJob::callException(), and AsyncJob::callStart().
Member Data Documentation
◆ addr
| Ip::Address Helper::SessionBase::addr |
Definition at line 224 of file helper.h.
Referenced by statefulhelper::openSessions().
◆ answer_time
| struct timeval Helper::SessionBase::answer_time |
Definition at line 234 of file helper.h.
Referenced by helperReturnBuffer(), and helperStatefulHandleRead().
◆ dispatch_time
| struct timeval Helper::SessionBase::dispatch_time |
Definition at line 233 of file helper.h.
Referenced by helperReturnBuffer(), helperStatefulDispatch(), and helperStatefulHandleRead().
◆ flags
| struct Helper::SessionBase::_helper_flags Helper::SessionBase::flags |
◆ hIpc
| void* Helper::SessionBase::hIpc |
Definition at line 227 of file helper.h.
Referenced by statefulhelper::openSessions().
◆ index
| const InstanceId<SessionBase> Helper::SessionBase::index |
Helper program identifier; does not change when contents do, including during assignment
Definition at line 221 of file helper.h.
Referenced by GetFirstAvailable(), Helper::Client::handleKilledServer(), helperDispatch(), helperReturnBuffer(), helperStatefulDispatch(), helperStatefulHandleRead(), helperStatefulKickQueue(), helperStatefulShutdown(), and StatefulGetFirstAvailable().
◆ link
| dlink_node Helper::SessionBase::link |
Definition at line 236 of file helper.h.
Referenced by statefulhelper::openSessions().
◆ pending
| uint64_t Helper::SessionBase::pending |
Definition at line 250 of file helper.h.
Referenced by GetFirstAvailable(), helperDispatch(), helperReturnBuffer(), helperStatefulDispatch(), helperStatefulHandleRead(), helperStatefulServerDone(), helperStatefulShutdown(), and StatefulGetFirstAvailable().
◆ pid
| int Helper::SessionBase::pid |
Definition at line 223 of file helper.h.
Referenced by statefulhelper::openSessions().
◆ rbuf
| char* Helper::SessionBase::rbuf |
Definition at line 229 of file helper.h.
Referenced by helperStatefulHandleRead(), and statefulhelper::openSessions().
◆ rbuf_sz
| size_t Helper::SessionBase::rbuf_sz |
Definition at line 230 of file helper.h.
Referenced by helperReturnBuffer(), helperStatefulHandleRead(), and statefulhelper::openSessions().
◆ readPipe
| Comm::ConnectionPointer Helper::SessionBase::readPipe |
Definition at line 225 of file helper.h.
Referenced by helperStatefulHandleRead(), and statefulhelper::openSessions().
◆ releases
◆ replies
| uint64_t Helper::SessionBase::replies |
Definition at line 249 of file helper.h.
Referenced by Helper::Client::handleKilledServer(), helperReturnBuffer(), and helperStatefulHandleRead().
◆ requests
| Requests Helper::SessionBase::requests |
Definition at line 245 of file helper.h.
Referenced by helperDispatch(), helperStatefulDispatch(), and helperStatefulHandleRead().
◆ roffset
| size_t Helper::SessionBase::roffset |
Definition at line 231 of file helper.h.
Referenced by helperStatefulHandleRead(), and statefulhelper::openSessions().
◆
| struct { ... } Helper::SessionBase::stats |
◆ timedout
◆ uses
| uint64_t Helper::SessionBase::uses |
Definition at line 248 of file helper.h.
Referenced by helperDispatch(), and helperStatefulDispatch().
◆ writePipe
| Comm::ConnectionPointer Helper::SessionBase::writePipe |
Definition at line 226 of file helper.h.
Referenced by helperDispatch(), helperStatefulDispatch(), and statefulhelper::openSessions().
The documentation for this class was generated from the following files:
