MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Suma Class Reference
Inheritance diagram for Suma:
Collaboration diagram for Suma:

Classes

union  AttributeDescriptor
struct  Bucket
struct  Buffer_page
union  FragmentDescriptor
struct  Gcp_record
struct  Page_chunk
struct  Page_pos
struct  Restart
struct  Shutdown
struct  Startup
struct  SubGcpCompleteCounter
struct  SubOpRecord
struct  Subscriber
struct  Subscription
struct  SyncRecord
struct  Table

Public Types

typedef Ptr< SubscriberSubscriberPtr
typedef Ptr< TableTablePtr
typedef Ptr< SubscriptionSubscriptionPtr
- Public Types inherited from SimulatedBlock
typedef void(SimulatedBlock::* CallbackFunction )(class Signal *, Uint32 callbackData, Uint32 returnCode)

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 NodeBitmaskgetSubscriberNodes () const
- Public Member Functions inherited from SimulatedBlock
void executeFunction (GlobalSignalNumber gsn, Signal *signal)
Uint32 instance () const
SimulatedBlockgetInstance (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
EmulatedJamBufferjamBuffer () const
void ignoreMutexUnlockCallback (Signal *signal, Uint32 ptrI, Uint32 retVal)
virtual bool getParam (const char *param, Uint32 *retVal)

Public Attributes

KeyTable< Tablec_tables
DLHashTable< Subscriptionc_subscriptions
ArrayPool< Subscriberc_subscriberPool
ArrayPool< Tablec_tablePool
ArrayPool< Subscriptionc_subscriptionPool
ArrayPool< SyncRecordc_syncPool
DataBuffer< 15 >::DataBufferPool c_dataBufferPool
ArrayPool< SubOpRecordc_subOpPool
Uint32 c_maxBufferedEpochs
NodeBitmask c_failedApiNodes
Uint32 c_failedApiNodesState [MAX_NODES]
- Public Attributes inherited from SimulatedBlock
MutexManager c_mutexMgr
SafeCounterManager c_counterMgr

Friends

struct Table
struct SyncRecord
struct SubOpRecord

Additional Inherited Members

- Static Public Member Functions inherited from SimulatedBlock
static bool isMultiThreaded ()
static bool isNdbMt ()
static bool isNdbMtLqh ()
static Uint32 getLqhWorkers ()
static Uint32 getInstanceKey (Uint32 tabId, Uint32 fragId)
static Uint32 getInstanceFromKey (Uint32 instanceKey)
- Protected Types inherited from SimulatedBlock
enum  CallbackFlags { CALLBACK_DIRECT = 0x0001, CALLBACK_ACK = 0x0002 }
enum  { THE_NULL_CALLBACK = 0 }
typedef void(SimulatedBlock::* ExecFunction )(Signal *signal)
- Protected Member Functions inherited from SimulatedBlock
 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 SectionSegmentPoolgetSectionSegmentPool ()
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 &copyFirstIVal, 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
NewVARIABLEallocateBat (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 NodeStategetNodeState () const
const NodeInfogetNodeInfo (NodeId nodeId) const
NodeInfosetNodeInfo (NodeId)
const NodeVersionInfogetNodeVersionInfo () const
NodeVersionInfosetNodeVersionInfo ()
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 CallbackEntrygetCallbackEntry (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 Protected Member Functions inherited from SimulatedBlock
static const NewVARIABLEgetBat (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 *)
- Protected Attributes inherited from SimulatedBlock
ExecFunction theExecArray [MAX_GSN+1]
Block_context m_ctx
SafeArrayPool< GlobalPage > & m_global_page_pool
ArrayPool< GlobalPage > & m_shared_page_pool
CallbackTablem_callbackTableAddr
 ERROR_INSERT_VARIABLE
- Static Protected Attributes inherited from SimulatedBlock
static Callback TheEmptyCallback = {0, 0}
static Callback TheNULLCallback

Detailed Description

Definition at line 39 of file Suma.hpp.

Constructor & Destructor Documentation

Suma::Suma ( Block_context ctx)

SUMA participant if

Dict interface

Dih interface

Scan interface

Trigger stuff

Definition at line 23 of file SumaInit.cpp.

Here is the call graph for this function:

Member Function Documentation

void Suma::api_fail_subscriber_list ( Signal signal,
Uint32  node 
)

Make sure not to overflow DbtupProxy with too many GSN_DROP_TRIG_IMPL_REQ 9 is arbitrary number...

We restart from this bucket :-(

Definition at line 1030 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::api_fail_subscription ( Signal signal)

NOTE: remove before...so we done send UNSUBSCRIBE to self (yuck)

Definition at line 1135 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::check_release_subscription ( Signal signal,
Ptr< Subscription subPtr 
)

Wait for completion

Wait for completion

Wait for completion

Definition at line 5293 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::copySubscription ( Signal signal,
DLHashTable< Subscription >::Iterator  it 
)

Wait for lock

Definition at line 5498 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::createSequence ( Signal signal)

Subscription generation interface

Definition at line 521 of file Suma.cpp.

Here is the caller graph for this function:

void Suma::drop_triggers_complete ( Signal signal,
Ptr< Subscription subPtr 
)

Definition at line 3626 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execALTER_TAB_REQ ( Signal signal)

This receives DICT_TAB_INFO in long signal section 1, and releases the data after use.

Definition at line 5031 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execCONTINUEB ( Signal signal)

continueb

Definition at line 825 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execCREATE_SUBSCRIPTION_REQ ( Signal signal)

Public interface

void Suma::execCREATE_TRIG_IMPL_CONF ( Signal signal)

Wait for more

Definition at line 3288 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execCREATE_TRIG_IMPL_REF ( Signal signal)

Trigger administration

Wait for more

Definition at line 3336 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execDIH_SCAN_GET_NODES_CONF ( Signal signal)

Add primary node for fragment to list

Definition at line 2470 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execDIH_SCAN_TAB_REF ( Signal signal)

DIH signals

Definition at line 2399 of file Suma.cpp.

Here is the caller graph for this function:

void Suma::execDROP_TAB_CONF ( Signal signal)

check_release_subscription create a subList... weirdness below is to make sure that it's not created twice

Definition at line 4918 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execDROP_TRIG_IMPL_CONF ( Signal signal)

Wait for more

Definition at line 3588 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execDROP_TRIG_IMPL_REF ( Signal signal)

Wait for more

Definition at line 3552 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execFIRE_TRIG_ORD ( Signal signal)

Reset f_bufferLock

Signal to subscriber(s)

Definition at line 4394 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execFIRE_TRIG_ORD_L ( Signal signal)

Pass entire pages with SUMA-trigger-data from TUP to SUMA to avoid extensive LongSignalMessage buffer contention

Out of memory

Copy value directly into local buffers

Definition at line 4337 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execGET_TABINFOREF ( Signal signal)

Dict interface

Definition at line 2552 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execINCL_NODEREQ ( Signal signal)

XXX TODO: This should be removed But, other nodes are (incorrectly) reported as started even if they're not "started", but only INCL_NODEREQ'ed

Nodes in nodegroup will be "alive" when sending SUMA_HANDOVER_REQ

Definition at line 1327 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSCAN_HBREP ( Signal signal)

Scan interface

Definition at line 3031 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSTOP_ME_REQ ( Signal signal)

Check that all SUMA nodes support graceful shutdown... and it's too late to stop it... Shutdown instead...

Definition at line 5963 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSTTOR ( Signal signal)

Allow API's to connect

Handover code here

Definition at line 250 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_CREATE_CONF ( Signal signal)

We have lock...start all subscriber(s)

Check if we were aborted... this signal is sent to self in case of DROPPED subscription...

Definition at line 5644 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_CREATE_REF ( Signal signal)

Controller interface

Definition at line 5624 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_CREATE_REQ ( Signal signal)

Private interface

This 2 options are only allowed during NR

We havent started syncing yet

just wait for completion

Definition at line 2039 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_GCP_COMPLETE_REP ( Signal signal)

Release this entry...

Not found...

NR case

NF case

NR, living node

Signal to subscribers

Add GCP COMPLETE REP to buffer

Definition at line 4574 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_REMOVE_REQ ( Signal signal)

We havent started syncing yet

already dropped

Definition at line 5224 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_START_REQ ( Signal signal)

We havent started syncing yet

Allow SUB_START_REQ from peer node

Check triggers

create triggers

Triggers are already being created...wait for completion

Trigger(s) are being dropped...wait for completion (and recreate them when done)

Definition at line 3053 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_STOP_REQ ( Signal signal)

We havent started syncing yet

Definition at line 3667 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUB_SYNC_REQ ( Signal signal)

We need to gather fragment info

Definition at line 2306 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execSUMA_START_ME_REQ ( Signal signal)

We only need to handle subscriptions with seq <= c_current_seq all subscriptions(s) created after this, will be handled by starting suma directly

Definition at line 5438 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::execTRIG_ATTRINFO ( Signal signal)

Trigger logging

Definition at line 4191 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::getNodeGroupMembers ( Signal signal)

Framework signals

Ask DIH for nodeGroupMembers

Definition at line 598 of file Suma.cpp.

const NodeBitmask& Suma::getSubscriberNodes ( ) const
inline

for Suma that is restarting another

Definition at line 506 of file Suma.hpp.

bool Suma::removeSubscribersOnNode ( Signal signal,
Uint32  nodeId 
)

Functions

void Suma::report_sub_start_conf ( Signal signal,
Ptr< Subscription subPtr 
)

Call before adding to list... cause method will (maybe) iterate thought list

Definition at line 3388 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::sendSubCreateReq ( Signal signal,
Ptr< Subscription subPtr 
)

Downgrade

In pre suma v2, SUB_CREATE_REQ::SignalLength is one greater but code checks length and set a default value... so we dont need to do anything... Thank you Ms. Fortuna

Definition at line 5543 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void Suma::sub_stop_req ( Signal signal)

NOTE: remove before...so we done send UNSUBSCRIBE to self (yuck)

Definition at line 3759 of file Suma.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

ArrayPool<Subscriber> Suma::c_subscriberPool

Pools

Definition at line 362 of file Suma.hpp.

KeyTable<Table> Suma::c_tables

Lists

Definition at line 356 of file Suma.hpp.


The documentation for this class was generated from the following files: