Public Member Functions | 
|   | Suma (Block_context &ctx) | 
| void  | execSUB_CREATE_REQ (Signal *signal) | 
| void  | execSUB_REMOVE_REQ (Signal *signal) | 
| void  | execSUB_START_REQ (Signal *signal) | 
| void  | execSUB_STOP_REQ (Signal *signal) | 
| void  | execSUB_SYNC_REQ (Signal *signal) | 
| 
void  | execSUB_ABORT_SYNC_REQ (Signal *signal) | 
| void  | execGET_TABINFOREF (Signal *signal) | 
| 
void  | execGET_TABINFO_CONF (Signal *signal) | 
| 
void  | execGET_TABLEID_CONF (Signal *signal) | 
| 
void  | execGET_TABLEID_REF (Signal *signal) | 
| void  | execDROP_TAB_CONF (Signal *signal) | 
| void  | execALTER_TAB_REQ (Signal *signal) | 
| 
void  | execCREATE_TAB_CONF (Signal *signal) | 
| 
void  | execDICT_LOCK_REF (Signal *) | 
| 
void  | execDICT_LOCK_CONF (Signal *) | 
| void  | execSCAN_HBREP (Signal *signal) | 
| 
void  | execSCAN_FRAGREF (Signal *signal) | 
| 
void  | execSCAN_FRAGCONF (Signal *signal) | 
| 
void  | execTRANSID_AI (Signal *signal) | 
| 
void  | execKEYINFO20 (Signal *signal) | 
| 
void  | execSUB_SYNC_CONTINUE_REF (Signal *signal) | 
| 
void  | execSUB_SYNC_CONTINUE_CONF (Signal *signal) | 
| void  | execTRIG_ATTRINFO (Signal *signal) | 
| void  | execFIRE_TRIG_ORD (Signal *signal) | 
| void  | execFIRE_TRIG_ORD_L (Signal *signal) | 
| void  | execSUB_GCP_COMPLETE_REP (Signal *signal) | 
| void  | execDIH_SCAN_TAB_REF (Signal *signal) | 
| 
void  | execDIH_SCAN_TAB_CONF (Signal *signal) | 
| 
void  | execDIH_SCAN_GET_NODES_REF (Signal *signal) | 
| void  | execDIH_SCAN_GET_NODES_CONF (Signal *signal) | 
| 
void  | execCHECKNODEGROUPSCONF (Signal *signal) | 
| 
void  | execGCP_PREPARE (Signal *signal) | 
| void  | execCREATE_TRIG_IMPL_REF (Signal *signal) | 
| void  | execCREATE_TRIG_IMPL_CONF (Signal *signal) | 
| void  | execDROP_TRIG_IMPL_REF (Signal *signal) | 
| void  | execDROP_TRIG_IMPL_CONF (Signal *signal) | 
| void  | execCONTINUEB (Signal *signal) | 
| 
void  | execCREATE_NODEGROUP_IMPL_REQ (Signal *) | 
| 
void  | execDROP_NODEGROUP_IMPL_REQ (Signal *) | 
| 
void  | suma_ndbrequire (bool v) | 
| bool  | removeSubscribersOnNode (Signal *signal, Uint32 nodeId) | 
| 
void  | sendSubIdRef (Signal *signal, Uint32 senderRef, Uint32 senderData, Uint32 errorCode) | 
| 
void  | sendSubCreateRef (Signal *signal, Uint32 ref, Uint32 data, Uint32 error) | 
| 
void  | sendSubStartRef (Signal *signal, Uint32 ref, Uint32 data, Uint32 error) | 
| 
void  | sendSubStopRef (Signal *signal, Uint32 ref, Uint32 data, Uint32 error) | 
| 
void  | report_sub_stop_conf (Signal *signal, Ptr< SubOpRecord > subOpPtr, Ptr< Subscriber > ptr, bool report, LocalDLList< Subscriber > &list) | 
| 
void  | sendSubSyncRef (Signal *signal, Uint32 errorCode) | 
| 
void  | sendSubRemoveRef (Signal *signal, const SubRemoveReq &ref, Uint32 errorCode) | 
| 
void  | sendSubStopReq (Signal *signal, bool unlock=false) | 
| 
void  | completeSubRemove (SubscriptionPtr subPtr) | 
| 
void  | send_sub_start_stop_event (Signal *signal, Ptr< Subscriber > ptr, NdbDictionary::Event::_TableEvent event, bool report, LocalDLList< Subscriber > &list) | 
| 
Uint32  | getFirstGCI (Signal *signal) | 
| 
void  | create_triggers (Signal *, Ptr< Subscription >) | 
| 
void  | drop_triggers (Signal *, Ptr< Subscription >) | 
| void  | drop_triggers_complete (Signal *, Ptr< Subscription >) | 
| 
bool  | check_sub_start (Uint32 subscriberRef) | 
| void  | report_sub_start_conf (Signal *signal, Ptr< Subscription > subPtr) | 
| 
void  | report_sub_start_ref (Signal *signal, Ptr< Subscription > subPtr, Uint32) | 
| void  | sub_stop_req (Signal *) | 
| 
void  | check_remove_queue (Signal *, Ptr< Subscription >, Ptr< SubOpRecord >, bool, bool) | 
| void  | check_release_subscription (Signal *signal, Ptr< Subscription >) | 
| 
void  | get_tabinfo_ref_release (Signal *, Ptr< Table >) | 
| void  | execCREATE_SUBSCRIPTION_REQ (Signal *signal) | 
| 
void  | execDROP_SUBSCRIPTION_REQ (Signal *signal) | 
| 
void  | execSTART_SUBSCRIPTION_REQ (Signal *signal) | 
| 
void  | execSTOP_SUBSCRIPTION_REQ (Signal *signal) | 
| 
void  | execSYNC_SUBSCRIPTION_REQ (Signal *signal) | 
| 
void  | execABORT_SYNC_REQ (Signal *signal) | 
| void  | getNodeGroupMembers (Signal *signal) | 
| 
void  | execREAD_CONFIG_REQ (Signal *signal) | 
| void  | execSTTOR (Signal *signal) | 
| 
void  | sendSTTORRY (Signal *) | 
| 
void  | execNDB_STTOR (Signal *signal) | 
| 
void  | execDUMP_STATE_ORD (Signal *signal) | 
| 
void  | execDBINFO_SCANREQ (Signal *signal) | 
| 
void  | execREAD_NODESCONF (Signal *signal) | 
| 
void  | execNODE_FAILREP (Signal *signal) | 
| void  | execINCL_NODEREQ (Signal *signal) | 
| 
void  | execSIGNAL_DROPPED_REP (Signal *signal) | 
| 
void  | execAPI_START_REP (Signal *signal) | 
| 
void  | execAPI_FAILREQ (Signal *signal) | 
| 
void  | api_fail_gci_list (Signal *, Uint32 node) | 
| void  | api_fail_subscriber_list (Signal *, Uint32 node) | 
| void  | api_fail_subscription (Signal *) | 
| 
void  | api_fail_block_cleanup (Signal *signal, Uint32 failedNode) | 
| 
void  | api_fail_block_cleanup_callback (Signal *signal, Uint32 failedNodeId, Uint32 elementsCleaned) | 
| 
void  | execSUB_GCP_COMPLETE_ACK (Signal *signal) | 
| void  | execSUB_CREATE_REF (Signal *signal) | 
| void  | execSUB_CREATE_CONF (Signal *signal) | 
| 
void  | execSUB_DROP_REF (Signal *signal) | 
| 
void  | execSUB_DROP_CONF (Signal *signal) | 
| 
void  | execSUB_START_REF (Signal *signal) | 
| 
void  | execSUB_START_CONF (Signal *signal) | 
| 
void  | execSUB_ABORT_SYNC_REF (Signal *signal) | 
| 
void  | execSUB_ABORT_SYNC_CONF (Signal *signal) | 
| void  | execSUMA_START_ME_REQ (Signal *signal) | 
| 
void  | execSUMA_START_ME_REF (Signal *signal) | 
| 
void  | execSUMA_START_ME_CONF (Signal *signal) | 
| void  | execSTOP_ME_REQ (Signal *) | 
| void  | copySubscription (Signal *signal, DLHashTable< Subscription >::Iterator) | 
| void  | sendSubCreateReq (Signal *signal, Ptr< Subscription >) | 
| 
void  | copySubscriber (Signal *, Ptr< Subscription >, Ptr< Subscriber >) | 
| 
void  | abort_start_me (Signal *, Ptr< Subscription >, bool lockowner) | 
| 
void  | execSUMA_HANDOVER_REQ (Signal *signal) | 
| 
void  | execSUMA_HANDOVER_REF (Signal *signal) | 
| 
void  | execSUMA_HANDOVER_CONF (Signal *signal) | 
| void  | createSequence (Signal *signal) | 
| 
void  | createSequenceReply (Signal *signal, UtilSequenceConf *conf, UtilSequenceRef *ref) | 
| 
void  | execUTIL_SEQUENCE_CONF (Signal *signal) | 
| 
void  | execUTIL_SEQUENCE_REF (Signal *signal) | 
| 
void  | execCREATE_SUBID_REQ (Signal *signal) | 
| const NodeBitmask &  | getSubscriberNodes () const  | 
| void  | executeFunction (GlobalSignalNumber gsn, Signal *signal) | 
| 
Uint32  | instance () const  | 
| 
SimulatedBlock *  | getInstance (Uint32 instanceNumber) | 
| 
void  | addInstance (SimulatedBlock *b, Uint32 theInstanceNo) | 
| 
virtual void  | loadWorkers () | 
| 
void  | assignToThread (ThreadContext ctx) | 
| 
uint32  | getThreadId () const  | 
| void  | assertOwnThread () | 
| void  | synchronize_threads_for_blocks (Signal *, const Uint32 blocks[], const Callback &, JobBufferLevel=JBB) | 
| void  | synchronize_path (Signal *, const Uint32 blocks[], const Callback &, JobBufferLevel=JBB) | 
| 
virtual const char *  | get_filename (Uint32 fd) const  | 
| 
EmulatedJamBuffer *  | jamBuffer () const  | 
| 
void  | ignoreMutexUnlockCallback (Signal *signal, Uint32 ptrI, Uint32 retVal) | 
| 
virtual bool  | getParam (const char *param, Uint32 *retVal) | 
Additional Inherited Members | 
| 
static bool  | isMultiThreaded () | 
| 
static bool  | isNdbMt () | 
| 
static bool  | isNdbMtLqh () | 
| 
static Uint32  | getLqhWorkers () | 
| 
static Uint32  | getInstanceKey (Uint32 tabId, Uint32 fragId) | 
| 
static Uint32  | getInstanceFromKey (Uint32 instanceKey) | 
| enum   | CallbackFlags { CALLBACK_DIRECT =  0x0001, 
CALLBACK_ACK =  0x0002
 } | 
| enum   | { THE_NULL_CALLBACK =  0
 } | 
| 
typedef void(SimulatedBlock::*  | ExecFunction )(Signal *signal) | 
|   | SimulatedBlock (BlockNumber blockNumber, struct Block_context &ctx, Uint32 instanceNumber=0) | 
| 
void  | addRecSignalImpl (GlobalSignalNumber g, ExecFunction fun, bool f=false) | 
| 
void  | installSimulatedBlockFunctions () | 
| 
void  | initCommon () | 
| 
void  | TheNULLCallbackFunction (class Signal *, Uint32, Uint32) | 
| 
void  | execute (Signal *signal, Callback &c, Uint32 returnCode) | 
| 
void  | sendSignal (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf) const  | 
| void  | sendSignal (NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf) const  | 
| void  | sendSignal (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections) const  | 
| void  | sendSignal (NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections) const  | 
| void  | sendSignal (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, LinearSectionPtr ptr[3], Uint32 noOfSections) const  | 
| void  | sendSignal (NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, LinearSectionPtr ptr[3], Uint32 noOfSections) const  | 
| void  | sendSignalNoRelease (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections) const  | 
| void  | sendSignalNoRelease (NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections) const  | 
| 
void  | sendSignalWithDelay (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 delayInMilliSeconds, Uint32 length) const  | 
| 
void  | sendSignalWithDelay (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 delayInMilliSeconds, Uint32 length, SectionHandle *sections) const  | 
| void  | EXECUTE_DIRECT (Uint32 block, Uint32 gsn, Signal *signal, Uint32 len, Uint32 givenInstanceNo=ZNIL) | 
| 
class SectionSegmentPool &  | getSectionSegmentPool () | 
| 
void  | release (SegmentedSectionPtr &ptr) | 
| 
void  | release (SegmentedSectionPtrPOD &ptr) | 
| 
void  | releaseSection (Uint32 firstSegmentIVal) | 
| 
void  | releaseSections (struct SectionHandle &) | 
| 
bool  | import (Ptr< SectionSegment > &first, const Uint32 *src, Uint32 len) | 
| 
bool  | import (SegmentedSectionPtr &ptr, const Uint32 *src, Uint32 len) | 
| 
bool  | appendToSection (Uint32 &firstSegmentIVal, const Uint32 *src, Uint32 len) | 
| 
bool  | dupSection (Uint32 ©FirstIVal, Uint32 srcFirstIVal) | 
| 
bool  | writeToSection (Uint32 firstSegmentIVal, Uint32 offset, const Uint32 *src, Uint32 len) | 
| 
void  | handle_invalid_sections_in_send_signal (Signal *) const  | 
| 
void  | handle_lingering_sections_after_execute (Signal *) const  | 
| 
void  | handle_lingering_sections_after_execute (SectionHandle *) const  | 
| 
void  | handle_invalid_fragmentInfo (Signal *) const  | 
| 
void  | handle_send_failed (SendStatus, Signal *) const  | 
| 
void  | handle_out_of_longsignal_memory (Signal *) const  | 
| void  | sendRoutedSignal (RoutePath path[], Uint32 pathcnt, Uint32 dst[], Uint32 dstcnt, Uint32 gsn, Signal *, Uint32 len, JobBufferLevel prio, SectionHandle *handle=0) | 
| bool  | checkNodeFailSequence (Signal *) | 
| bool  | assembleFragments (Signal *signal) | 
| bool  | assembleDroppedFragments (Signal *signal) | 
| 
  | STATIC_CONST (FRAGMENT_WORD_SIZE=240) | 
| 
void  | sendFragmentedSignal (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections, Callback &=TheEmptyCallback, Uint32 messageSize=FRAGMENT_WORD_SIZE) | 
| 
void  | sendFragmentedSignal (NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections, Callback &=TheEmptyCallback, Uint32 messageSize=FRAGMENT_WORD_SIZE) | 
| 
void  | sendFragmentedSignal (BlockReference ref, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, LinearSectionPtr ptr[3], Uint32 noOfSections, Callback &=TheEmptyCallback, Uint32 messageSize=FRAGMENT_WORD_SIZE) | 
| 
void  | sendFragmentedSignal (NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, LinearSectionPtr ptr[3], Uint32 noOfSections, Callback &=TheEmptyCallback, Uint32 messageSize=FRAGMENT_WORD_SIZE) | 
| Uint32  | simBlockNodeFailure (Signal *signal, Uint32 failedNodeId, Callback &cb=TheEmptyCallback) | 
| bool  | sendFirstFragment (FragmentSendInfo &info, NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, SectionHandle *sections, bool noRelease, Uint32 messageSize=FRAGMENT_WORD_SIZE) | 
| bool  | sendFirstFragment (FragmentSendInfo &info, NodeReceiverGroup rg, GlobalSignalNumber gsn, Signal *signal, Uint32 length, JobBufferLevel jbuf, LinearSectionPtr ptr[3], Uint32 noOfSections, Uint32 messageSize=FRAGMENT_WORD_SIZE) | 
| void  | sendNextSegmentedFragment (Signal *signal, FragmentSendInfo &info) | 
| void  | sendNextLinearFragment (Signal *signal, FragmentSendInfo &info) | 
| 
BlockNumber  | number () const  | 
| 
BlockReference  | reference () const  | 
| 
NodeId  | getOwnNodeId () const  | 
| void  | refresh_watch_dog (Uint32 place=1) | 
| 
void  | update_watch_dog_timer (Uint32 interval) | 
| void  | progError (int line, int err_code, const char *extradata=NULL) const ATTRIBUTE_NORETURN | 
| 
NewVARIABLE *  | allocateBat (int batSize) | 
| 
void  | freeBat () | 
| 
BlockReference  | calcInstanceBlockRef (BlockNumber aBlock) | 
| 
BlockReference  | calcInstanceBlockRef (BlockNumber aBlock, NodeId aNode) | 
| void *  | allocRecord (const char *type, size_t s, size_t n, bool clear=true, Uint32 paramId=0) | 
| 
void *  | allocRecordAligned (const char *type, size_t s, size_t n, void **unaligned_buffer, Uint32 align=NDB_O_DIRECT_WRITE_ALIGNMENT, bool clear=true, Uint32 paramId=0) | 
| void  | deallocRecord (void **, const char *type, size_t s, size_t n) | 
| 
Uint32  | allocChunks (AllocChunk dst[], Uint32arraysize, Uint32rg, Uint32pages, Uint32 paramId) | 
| void  | infoEvent (const char *msg,...) const ATTRIBUTE_FORMAT(printf | 
| void void  | warningEvent (const char *msg,...) const ATTRIBUTE_FORMAT(printf | 
| void void const NodeState &  | getNodeState () const  | 
| const NodeInfo &  | getNodeInfo (NodeId nodeId) const  | 
| 
NodeInfo &  | setNodeInfo (NodeId) | 
| 
const NodeVersionInfo &  | getNodeVersionInfo () const  | 
| 
NodeVersionInfo &  | setNodeVersionInfo () | 
| Uint32  | xfrm_key (Uint32 tab, const Uint32 *src, Uint32 *dst, Uint32 dstSize, Uint32 keyPartLen[MAX_ATTRIBUTES_IN_INDEX]) const  | 
| 
Uint32  | xfrm_attr (Uint32 attrDesc, CHARSET_INFO *cs, const Uint32 *src, Uint32 &srcPos, Uint32 *dst, Uint32 &dstPos, Uint32 dstSize) const  | 
| 
Uint32  | create_distr_key (Uint32 tableId, const Uint32 *src, Uint32 *dst, const Uint32 keyPaLen[MAX_ATTRIBUTES_IN_INDEX]) const  | 
| void  | wakeup () | 
| void  | setup_wakeup () | 
| 
void  | execNDB_TAMPER (Signal *signal) | 
| 
void  | execNODE_STATE_REP (Signal *signal) | 
| void  | execCHANGE_NODE_STATE_REQ (Signal *signal) | 
| 
void  | execCONTINUE_FRAGMENTED (Signal *signal) | 
| 
void  | execSTOP_FOR_CRASH (Signal *signal) | 
| 
void  | execNODE_START_REP (Signal *signal) | 
| 
void  | execSEND_PACKED (Signal *signal) | 
| void  | execLOCAL_ROUTE_ORD (Signal *) | 
| 
Uint32  | debugPrintFragmentCounts () | 
| 
void  | fsRefError (Signal *signal, Uint32 line, const char *msg) | 
| 
void  | execFSWRITEREF (Signal *signal) | 
| 
void  | execFSREADREF (Signal *signal) | 
| 
void  | execFSOPENREF (Signal *signal) | 
| 
void  | execFSCLOSEREF (Signal *signal) | 
| 
void  | execFSREMOVEREF (Signal *signal) | 
| 
void  | execFSSYNCREF (Signal *signal) | 
| 
void  | execFSAPPENDREF (Signal *signal) | 
| 
void  | execute (Signal *signal, CallbackPtr &cptr, Uint32 returnCode) | 
| 
const CallbackEntry &  | getCallbackEntry (Uint32 ci) | 
| 
void  | sendCallbackConf (Signal *signal, Uint32 fullBlockNo, CallbackPtr &cptr, Uint32 returnCode) | 
| 
void  | execCALLBACK_CONF (Signal *signal) | 
| 
void  | ndbinfo_send_row (Signal *signal, const DbinfoScanReq &req, const Ndbinfo::Row &row, Ndbinfo::Ratelimit &rl) const  | 
| 
void  | ndbinfo_send_scan_break (Signal *signal, DbinfoScanReq &req, const Ndbinfo::Ratelimit &rl, Uint32 data1, Uint32 data2=0, Uint32 data3=0, Uint32 data4=0) const  | 
| 
void  | ndbinfo_send_scan_conf (Signal *signal, DbinfoScanReq &req, const Ndbinfo::Ratelimit &rl) const  | 
| 
static const NewVARIABLE *  | getBat (BlockNumber blockNo, Uint32 instanceNo) | 
| 
static Uint16  | getBatSize (BlockNumber blockNo, Uint32 instanceNo) | 
| 
static BlockReference  | calcTcBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcLqhBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcAccBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcTupBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcTuxBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcDihBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcQmgrBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcDictBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcNdbCntrBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcTrixBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcBackupBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcSumaBlockRef (NodeId aNode) | 
| 
static BlockReference  | calcApiClusterMgrBlockRef (NodeId aNode) | 
| 
static int  | sortchunks (const void *, const void *) | 
| 
ExecFunction  | theExecArray [MAX_GSN+1] | 
| 
Block_context  | m_ctx | 
| 
SafeArrayPool< GlobalPage > &  | m_global_page_pool | 
| 
ArrayPool< GlobalPage > &  | m_shared_page_pool | 
| 
CallbackTable *  | m_callbackTableAddr | 
| 
  | ERROR_INSERT_VARIABLE | 
| 
static Callback  | TheEmptyCallback = {0, 0} | 
| static Callback  | TheNULLCallback |