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

Classes

struct  AbortAllRecord
struct  ApiConnectRecord
struct  AttrInfoRecord
struct  CacheRecord
struct  CommitAckMarker
struct  GcpRecord
struct  HostRecord
struct  MonotonicCounters
struct  ScanFragRec
struct  ScanRecord
struct  TableRecord
struct  TcConnectRecord
struct  TcDefinedTriggerData
struct  TcFailRecord
struct  TcFiredTriggerData
struct  TcIndexData
struct  TcIndexOperation

Public Types

enum  ConnectionState {
  CS_CONNECTED = 0, CS_DISCONNECTED = 1, CS_STARTED = 2, CS_RECEIVING = 3,
  CS_PREPARED = 4, CS_START_PREPARING = 5, CS_REC_PREPARING = 6, CS_RESTART = 7,
  CS_ABORTING = 8, CS_COMPLETING = 9, CS_COMPLETE_SENT = 10, CS_PREPARE_TO_COMMIT = 11,
  CS_COMMIT_SENT = 12, CS_START_COMMITTING = 13, CS_COMMITTING = 14, CS_REC_COMMITTING = 15,
  CS_WAIT_ABORT_CONF = 16, CS_WAIT_COMPLETE_CONF = 17, CS_WAIT_COMMIT_CONF = 18, CS_FAIL_ABORTING = 19,
  CS_FAIL_ABORTED = 20, CS_FAIL_PREPARED = 21, CS_FAIL_COMMITTING = 22, CS_FAIL_COMMITTED = 23,
  CS_FAIL_COMPLETED = 24, CS_START_SCAN = 25, CS_SEND_FIRE_TRIG_REQ = 26, CS_WAIT_FIRE_TRIG_REQ = 27
}
enum  OperationState {
  OS_CONNECTED = 1, OS_OPERATING = 2, OS_PREPARED = 3, OS_COMMITTING = 4,
  OS_COMMITTED = 5, OS_COMPLETING = 6, OS_COMPLETED = 7, OS_RESTART = 8,
  OS_ABORTING = 9, OS_ABORT_SENT = 10, OS_TAKE_OVER = 11, OS_WAIT_DIH = 12,
  OS_WAIT_KEYINFO = 13, OS_WAIT_ATTR = 14, OS_WAIT_COMMIT_CONF = 15, OS_WAIT_ABORT_CONF = 16,
  OS_WAIT_COMPLETE_CONF = 17, OS_WAIT_SCAN = 18, OS_FIRE_TRIG_REQ = 19
}
enum  AbortState { AS_IDLE = 0, AS_ACTIVE = 1 }
enum  HostState { HS_ALIVE = 0, HS_DEAD = 1 }
enum  LqhTransState { LTS_IDLE = 0, LTS_ACTIVE = 1 }
enum  FailState { FS_IDLE = 0, FS_LISTENING = 1, FS_COMPLETING = 2 }
enum  SystemStartState { SSS_TRUE = 0, SSS_FALSE = 1 }
enum  TimeOutCheckState { TOCS_TRUE = 0, TOCS_FALSE = 1 }
enum  ReturnSignal {
  RS_NO_RETURN = 0, RS_TCKEYCONF = 1, RS_TC_COMMITCONF = 3, RS_TCROLLBACKCONF = 4,
  RS_TCROLLBACKREP = 5
}
enum  IndexOperationState { IOS_NOOP = 0, IOS_INDEX_ACCESS = 1, IOS_INDEX_ACCESS_WAIT_FOR_TCKEYCONF = 2, IOS_INDEX_ACCESS_WAIT_FOR_TRANSID_AI = 3 }
enum  IndexState { IS_BUILDING = 0, IS_ONLINE = 1 }
enum  IndexTransIdAIState {
  ITAS_WAIT_HEADER = 0, ITAS_WAIT_FRAGID = 1, ITAS_WAIT_KEY = 2, ITAS_ALL_RECEIVED = 3,
  ITAS_WAIT_KEY_FAIL = 4
}
typedef Ptr< TcDefinedTriggerDataDefinedTriggerPtr
typedef DataBuffer< 11 > AttributeBuffer
typedef Ptr< TcFiredTriggerDataFiredTriggerPtr
typedef Ptr< TcIndexDataTcIndexDataPtr
typedef Ptr< TcIndexOperationTcIndexOperationPtr
typedef Ptr< ApiConnectRecordApiConnectRecordPtr
typedef Ptr< TcConnectRecordTcConnectRecordPtr
typedef Ptr< CacheRecordCacheRecordPtr
typedef Ptr< HostRecordHostRecordPtr
typedef Ptr< TableRecordTableRecordPtr
typedef Ptr< ScanFragRecScanFragRecPtr
typedef LocalDLList< ScanFragRecScanFragList
typedef Ptr< ScanRecordScanRecordPtr
typedef Ptr< GcpRecordGcpRecordPtr
typedef Ptr< TcFailRecordTcFailRecordPtr
- Public Types inherited from SimulatedBlock
typedef void(SimulatedBlock::* CallbackFunction )(class Signal *, Uint32 callbackData, Uint32 returnCode)

Public Member Functions

 STATIC_CONST (TAKE_OVER_INSTANCE=1)
void setApiConTimer (Uint32 apiConPtrI, Uint32 value, Uint32 line)
Uint32 getApiConTimer (Uint32 apiConPtrI) const
 Dbtc (Block_context &, Uint32 instanceNumber=0)
- 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)

Public Attributes

ArrayPool< TcDefinedTriggerDatac_theDefinedTriggerPool
DLList< TcDefinedTriggerDatac_theDefinedTriggers
AttributeBuffer::DataBufferPool c_theAttributeBufferPool
UintR c_transactionBufferSpace
ArrayPool< TcFiredTriggerDatac_theFiredTriggerPool
DLHashTable< TcFiredTriggerDatac_firedTriggerHash
AttributeBuffer::DataBufferPool c_theTriggerAttrInfoPool
Uint32 c_maxNumberOfDefinedTriggers
Uint32 c_maxNumberOfFiredTriggers
ArrayPool< TcIndexDatac_theIndexPool
DLList< TcIndexDatac_theIndexes
UintR c_maxNumberOfIndexes
ArrayPool< TcIndexOperationc_theIndexOperationPool
UintR c_maxNumberOfIndexOperations
UintR * c_apiConTimer
UintR * c_apiConTimer_line
- Public Attributes inherited from SimulatedBlock
MutexManager c_mutexMgr
SafeCounterManager c_counterMgr

Protected Member Functions

virtual bool getParam (const char *name, Uint32 *count)
- 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 execSIGNAL_DROPPED_REP (Signal *signal)
void execCONTINUE_FRAGMENTED (Signal *signal)
void execSTOP_FOR_CRASH (Signal *signal)
void execAPI_START_REP (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

Friends

struct TcConnectRecord

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)
- 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 146 of file Dbtc.hpp.

Member Enumeration Documentation

Enumerator:
CS_SEND_FIRE_TRIG_REQ 

Sending FIRE_TRIG_REQ

CS_WAIT_FIRE_TRIG_REQ 

Waiting for FIRE_TRIG_CONF/REF (or operations generated by this)

Definition at line 155 of file Dbtc.hpp.

Member Function Documentation

Dbtc::STATIC_CONST ( TAKE_OVER_INSTANCE  = 1)

Incase of mt-TC...only one instance will perform actual take-over let this be TAKE_OVER_INSTANCE

Member Data Documentation

ArrayPool<TcDefinedTriggerData> Dbtc::c_theDefinedTriggerPool

Pool of trigger data record

Definition at line 382 of file Dbtc.hpp.

DLList<TcDefinedTriggerData> Dbtc::c_theDefinedTriggers

The list of active triggers

Definition at line 387 of file Dbtc.hpp.

ArrayPool<TcFiredTriggerData> Dbtc::c_theFiredTriggerPool

Pool of trigger data record

Definition at line 488 of file Dbtc.hpp.

DLList<TcIndexData> Dbtc::c_theIndexes

The list of defined indexes

Definition at line 574 of file Dbtc.hpp.

ArrayPool<TcIndexOperation> Dbtc::c_theIndexOperationPool

Pool of index data record

Definition at line 628 of file Dbtc.hpp.

ArrayPool<TcIndexData> Dbtc::c_theIndexPool

Pool of index data record

Definition at line 569 of file Dbtc.hpp.


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