InfiniSQL
v0.1.2-alpha
Massive Scale Transaction Processing
|
#include <Message.h>
Classes | |
struct | message_s |
Message POD (serializable by memcpy) data members. More... | |
Public Member Functions | |
Message () | |
virtual | ~Message () |
size_t | size () |
get Message size More... | |
std::string * | ser () |
create string with serialized message More... | |
void | package (class SerializedMessage &serobj) |
serialize this More... | |
void | unpack (SerializedMessage &serobj) |
deserialize into this More... | |
void | clear () |
clear contents of this More... | |
string * | sermsg () |
return serialized Message variant string More... | |
void | setEnvelope (const Topology::addressStruct &source, const Topology::addressStruct &dest, class Message &msg) |
put addresses in Message variant envelope More... | |
Static Public Member Functions | |
static class Message * | des (string *serstr) |
deserialize entire message More... | |
Public Attributes | |
__int128 | nextmsg |
message_s | messageStruct |
Message::Message | ( | ) |
Definition at line 33 of file Message.cc.
|
virtual |
Definition at line 37 of file Message.cc.
void Message::clear | ( | ) |
clear contents of this
Definition at line 68 of file Message.cc.
References messageStruct.
Referenced by MessageSocket::clear(), MessageUserSchema::clear(), MessageDeadlock::clear(), MessageTransaction::clear(), MessageDispatch::clear(), MessageAckDispatch::clear(), MessageApply::clear(), and MessageAckApply::clear().
|
static |
deserialize entire message
serstr | string of serialized message |
Definition at line 73 of file Message.cc.
References SerializedMessage::getpayloadtype(), PAYLOADACKAPPLY, PAYLOADACKDISPATCH, PAYLOADAPPLY, PAYLOADCOMMITROLLBACK, PAYLOADDEADLOCK, PAYLOADDISPATCH, PAYLOADMESSAGE, PAYLOADSOCKET, PAYLOADSUBTRANSACTION, Message::message_s::payloadtype, PAYLOADUSERSCHEMA, unpack(), MessageSocket::unpack(), MessageUserSchema::unpack(), MessageDeadlock::unpack(), MessageSubtransactionCmd::unpack(), MessageCommitRollback::unpack(), MessageDispatch::unpack(), MessageAckDispatch::unpack(), MessageApply::unpack(), and MessageAckApply::unpack().
void Message::package | ( | class SerializedMessage & | serobj) |
serialize this
serobj | SerializedMessage |
Definition at line 58 of file Message.cc.
References messageStruct, and SerializedMessage::ser().
Referenced by MessageSocket::package(), MessageUserSchema::package(), MessageDeadlock::package(), MessageTransaction::package(), MessageDispatch::package(), MessageAckDispatch::package(), MessageApply::package(), MessageAckApply::package(), and ser().
string * Message::ser | ( | ) |
create string with serialized message
Definition at line 46 of file Message.cc.
References SerializedMessage::data, SerializedMessage::getpayloadtype(), logfile, package(), and SerializedMessage::pos.
string * Message::sermsg | ( | ) |
return serialized Message variant string
Definition at line 142 of file Message.cc.
References messageStruct, PAYLOADACKAPPLY, PAYLOADACKDISPATCH, PAYLOADAPPLY, PAYLOADCOMMITROLLBACK, PAYLOADDEADLOCK, PAYLOADDISPATCH, PAYLOADMESSAGE, PAYLOADSOCKET, PAYLOADSUBTRANSACTION, Message::message_s::payloadtype, and PAYLOADUSERSCHEMA.
Referenced by MboxProducer::sendMsg().
void Message::setEnvelope | ( | const Topology::addressStruct & | source, |
const Topology::addressStruct & | dest, | ||
class Message & | msg | ||
) |
put addresses in Message variant envelope
source | source address |
dest | destination address |
msg | Message |
Definition at line 197 of file Message.cc.
References Message::message_s::destAddr, messageStruct, and Message::message_s::sourceAddr.
Referenced by Mboxes::toActor(), and Mboxes::toPartition().
size_t Message::size | ( | ) |
get Message size
Definition at line 41 of file Message.cc.
References messageStruct, and SerializedMessage::sersize().
Referenced by ObGateway::ObGateway(), MessageSocket::size(), MessageUserSchema::size(), MessageDeadlock::size(), MessageTransaction::size(), MessageDispatch::size(), MessageAckDispatch::size(), MessageApply::size(), and MessageAckApply::size().
void Message::unpack | ( | SerializedMessage & | serobj) |
deserialize into this
serobj | SerializedMessage |
Definition at line 63 of file Message.cc.
References SerializedMessage::des(), and messageStruct.
Referenced by des(), MessageSocket::unpack(), MessageUserSchema::unpack(), MessageDeadlock::unpack(), MessageTransaction::unpack(), MessageDispatch::unpack(), MessageAckDispatch::unpack(), MessageApply::unpack(), and MessageAckApply::unpack().
message_s Message::messageStruct |
Definition at line 158 of file Message.h.
Referenced by Transaction::abortCmd(), Engine::addcolumn(), UserSchemaMgr::addcolumn(), TransactionAgent::addcolumn(), Engine::apply(), Engine::background(), TopologyMgr::broadcastConfig(), UserSchemaMgr::changepassword(), TransactionAgent::changepassword(), Transaction::checkLock(), Transaction::checkSqlLock(), clear(), TransactionAgent::compile(), Transaction::continueCommitTransaction(), UserSchemaMgr::createdomain(), TransactionAgent::createdomain(), Engine::createschema(), UserSchemaMgr::createschema(), Engine::createtable(), UserSchemaMgr::createtable(), TransactionAgent::createtable(), UserSchemaMgr::createuser(), TransactionAgent::createuser(), DeadlockMgr::deadlock(), DeadlockMgr::DeadlockMgr(), UserSchemaMgr::deletedomain(), TransactionAgent::deletedomain(), Engine::deleteindex(), UserSchemaMgr::deleteindex(), Engine::deleteschema(), UserSchemaMgr::deleteschema(), Engine::deletetable(), UserSchemaMgr::deletetable(), UserSchemaMgr::deleteuser(), TransactionAgent::deleteuser(), SubTransaction::drainIndexLockQueue(), SubTransaction::drainRowLockQueue(), Engine::Engine(), TransactionAgent::handledispatch(), IbGateway::inbufhandler(), UserSchemaMgr::login(), TransactionAgent::login(), Mbox::Mbox(), MessageBatchSerialized::MessageBatchSerialized(), MessageDeadlock::MessageDeadlock(), MessageDispatch::MessageDispatch(), MessageSerialized::MessageSerialized(), MessageUserSchema::MessageUserSchema(), TransactionAgent::newprocedure(), ObGateway::ObGateway(), UserSchemaMgr::operationHandler(), package(), SubTransaction::processTransactionMessage(), replyTa(), SubTransaction::replyTransaction(), Transaction::rollback(), TransactionAgent::schemaBoilerplate(), MboxProducer::sendMsg(), Transaction::sendTransaction(), sermsg(), setEnvelope(), size(), TransactionAgent::TAaddcolumn(), TransactionAgent::TAcreateschema(), TransactionAgent::TAcreatetable(), TransactionAgent::TAdeleteindex(), TransactionAgent::TAdeleteschema(), TransactionAgent::TAdeletetable(), Mboxes::toAllOfType(), Mboxes::toAllOfTypeThisReplica(), TransactionAgent::TransactionAgent(), unpack(), MessageSocket::unpack(), UserSchemaMgr::UserSchemaMgr(), and TransactionAgent::usmReply().
__int128 Message::nextmsg |
Definition at line 157 of file Message.h.
Referenced by Mbox::Mbox(), Mbox::receive(), MboxProducer::sendMsg(), and TransactionAgent::TransactionAgent().