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

Classes

struct  Node

Public Types

enum  Cluster_state { CS_waiting_for_clean_cache = 0, CS_waiting_for_first_connect, CS_connected }

Public Member Functions

 ClusterMgr (class TransporterFacade &)
void configure (Uint32 nodeId, const ndb_mgm_configuration *config)
void reportConnected (NodeId nodeId)
void reportDisconnected (NodeId nodeId)
bool checkUpgradeCompatability (Uint32 nodeVersion)
void doStop ()
void startThread ()
void forceHB ()
void set_max_api_reg_req_interval (unsigned int millisec)
void lock ()
void unlock ()
const trp_nodegetNodeInfo (NodeId) const
Uint32 getNoOfConnectedNodes () const
void hb_received (NodeId)
virtual void trp_deliver_signal (const NdbApiSignal *, const LinearSectionPtr p[3])
- Public Member Functions inherited from trp_client
virtual ~trp_client ()
Uint32 open (class TransporterFacade *, int blockNo=-1)
void close ()
void start_poll ()
void do_poll (Uint32)
void complete_poll ()
void wakeup ()
void do_forceSend (int val=1)
int raw_sendSignal (const NdbApiSignal *, Uint32 nodeId)
int raw_sendSignal (const NdbApiSignal *, Uint32 nodeId, const LinearSectionPtr ptr[3], Uint32 secs)
int raw_sendSignal (const NdbApiSignal *, Uint32 nodeId, const GenericSectionPtr ptr[3], Uint32 secs)
int raw_sendFragmentedSignal (const NdbApiSignal *, Uint32 nodeId, const LinearSectionPtr ptr[3], Uint32 secs)
int raw_sendFragmentedSignal (const NdbApiSignal *, Uint32 nodeId, const GenericSectionPtr ptr[3], Uint32 secs)
const trp_nodegetNodeInfo (Uint32 i) const
virtual void recordWaitTimeNanos (Uint64 nanos)
Uint32 getOwnNodeId () const
int safe_sendSignal (const NdbApiSignal *, Uint32 nodeId)

Public Attributes

int m_auto_reconnect
Uint32 m_connect_count

Friends

class TransporterFacade
class ArbitMgr
void * runClusterMgr_C (void *me)

Detailed Description

Definition at line 37 of file ClusterMgr.hpp.

Member Function Documentation

void ClusterMgr::reportConnected ( NodeId  nodeId)

Ensure that we are sending heartbeat every 100 ms until we have got the first reply from NDB providing us with the real time-out period to use.

make sure the node itself is marked connected even if first API_REGCONF has not arrived

We know that we have clusterMgrThreadMutex and trp_client::mutex but we don't know if we are polling...and for_each can only be used by a poller...

Send signal to self, so that we can do this when receiving a signal

Definition at line 835 of file ClusterMgr.cpp.

Here is the call graph for this function:

void ClusterMgr::reportDisconnected ( NodeId  nodeId)

We know that we have clusterMgrThreadMutex and trp_client::mutex but we don't know if we are polling...and for_each can only be used by a poller...

Send signal to self, so that we can do this when receiving a signal

Definition at line 910 of file ClusterMgr.cpp.

void ClusterMgr::trp_deliver_signal ( const NdbApiSignal sig,
const LinearSectionPtr  p[3] 
)
virtual

trp_client interface

Report

Reply

Report

Implements trp_client.

Definition at line 457 of file ClusterMgr.cpp.

Here is the call graph for this function:


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