InfiniSQL
v0.1.2-alpha
Massive Scale Transaction Processing
|
Inbound Gateway Actor. More...
#include <IbGateway.h>
Public Member Functions | |
IbGateway (Topology::partitionAddress *myIdentityArg) | |
execute Inbound Gateway More... | |
virtual | ~IbGateway () |
Public Attributes | |
Topology::partitionAddress | myIdentity |
class Mboxes | mboxes |
class Topology | myTopology |
Private Member Functions | |
void | inbufhandler (const char *buf, size_t bufsize) |
process compressed batch of incoming messages More... | |
void | addtofds (int newfd) |
add file descriptor to remote ObGateway to poll structure More... | |
void | removefds () |
remove file descriptors from poll struct More... | |
Private Attributes | |
boost::unordered_map< int, std::string > | pendingReads |
boost::unordered_set< int > | fdremoveset |
struct pollfd * | fds |
nfds_t | nfds |
char * | inbuf |
char * | dcstrsmall |
bool | ismultinode |
Inbound Gateway Actor.
Definition at line 38 of file IbGateway.h.
IbGateway::IbGateway | ( | Topology::partitionAddress * | myIdentityArg) |
execute Inbound Gateway
receives Message batches from other nodes, decompresses and distributes to local actors.
myIdentityArg | how to identify this |
< TODO: handle listener failure
Definition at line 35 of file IbGateway.cc.
References Topology::partitionAddress::address, addtofds(), Topology::partitionAddress::argstring, dcstrsmall, fdremoveset, fds, inbuf, inbufhandler(), Topology::partitionAddress::instance, ismultinode, logfile, mboxes, myIdentity, myTopology, nfds, Topology::addressStruct::nodeid, Mboxes::nodeid, pendingReads, removefds(), SERIALIZEDMAXSIZE, setprio(), and Mboxes::update().
Referenced by ibGateway().
|
virtual |
Definition at line 306 of file IbGateway.cc.
References dcstrsmall, and inbuf.
|
private |
add file descriptor to remote ObGateway to poll structure
newfd | socket descriptor |
Definition at line 373 of file IbGateway.cc.
References fds.
Referenced by IbGateway().
|
private |
process compressed batch of incoming messages
buf | incoming message buffer |
bufsize | buffer size |
Definition at line 313 of file IbGateway.cc.
References cfgs, cfg_s::compressgw, dcstrsmall, Message::message_s::destAddr, inbuf, mboxes, Message::messageStruct, SERIALIZEDMAXSIZE, Message::message_s::sourceAddr, and Mboxes::toActor().
Referenced by IbGateway().
|
private |
remove file descriptors from poll struct
Definition at line 392 of file IbGateway.cc.
References fdremoveset, fds, Topology::partitionAddress::instance, logfile, and myIdentity.
Referenced by IbGateway().
|
private |
Definition at line 81 of file IbGateway.h.
Referenced by IbGateway(), inbufhandler(), and ~IbGateway().
|
private |
Definition at line 77 of file IbGateway.h.
Referenced by IbGateway(), and removefds().
|
private |
Definition at line 78 of file IbGateway.h.
Referenced by addtofds(), IbGateway(), and removefds().
|
private |
Definition at line 80 of file IbGateway.h.
Referenced by IbGateway(), inbufhandler(), and ~IbGateway().
|
private |
Definition at line 82 of file IbGateway.h.
Referenced by IbGateway().
class Mboxes IbGateway::mboxes |
Definition at line 53 of file IbGateway.h.
Referenced by IbGateway(), and inbufhandler().
Topology::partitionAddress IbGateway::myIdentity |
Definition at line 52 of file IbGateway.h.
Referenced by IbGateway(), and removefds().
class Topology IbGateway::myTopology |
Definition at line 54 of file IbGateway.h.
Referenced by IbGateway().
|
private |
Definition at line 79 of file IbGateway.h.
Referenced by IbGateway().
|
private |
Definition at line 76 of file IbGateway.h.
Referenced by IbGateway().