MySQL 5.6.14 Source Code Document
|
#include <Dbdict.hpp>
Classes | |
struct | AlterIndexRec |
struct | AlterTableRec |
struct | AttributeMap |
struct | AttributeRecord |
struct | BuildIndexRec |
struct | CopyDataRec |
struct | CreateFilegroupRec |
struct | CreateFileRec |
struct | CreateHashMapRec |
struct | CreateIndexRec |
struct | CreateNodegroupRec |
struct | CreateTableRec |
struct | CreateTriggerRec |
struct | DictLockType |
struct | DictObject |
struct | DropFilegroupRec |
struct | DropFileRec |
struct | DropIndexRec |
struct | DropNodegroupRec |
struct | DropTableRec |
struct | DropTriggerRec |
struct | ErrorInfo |
struct | File |
struct | Filegroup |
struct | FsConnectRecord |
struct | HashMapRecord |
struct | IndexStatRec |
struct | NodeRecord |
struct | OpCreateEvent |
struct | OpDropEvent |
struct | OpInfo |
struct | OpRec |
struct | OpRecordCommon |
union | OpRecordUnion |
struct | OpSection |
struct | OpSignalUtil |
struct | OpSubEvent |
struct | PackTable |
struct | PageRecord |
struct | ParseDictTabInfoRecord |
struct | ReadSchemaRecord |
struct | ReadTableRecord |
struct | RestartRecord |
struct | RetrieveRecord |
struct | SchemaOp |
struct | SchemaPageRecord |
struct | SchemaRecord |
struct | SchemaTrans |
struct | SendSchemaRecord |
struct | TableRecord |
struct | TransClient |
struct | TriggerRecord |
struct | TriggerTmpl |
struct | TxHandle |
struct | WriteSchemaRecord |
struct | WriteTableRecord |
struct | XSchemaFile |
Public Types | |
typedef Ptr< AttributeRecord > | AttributeRecordPtr |
typedef Ptr< TableRecord > | TableRecordPtr |
typedef Ptr< TriggerRecord > | TriggerRecordPtr |
typedef Ptr< FsConnectRecord > | FsConnectRecordPtr |
typedef Ptr< NodeRecord > | NodeRecordPtr |
typedef Ptr< PageRecord > | PageRecordPtr |
typedef Ptr< File > | FilePtr |
typedef RecordPool< File, RWPool > | File_pool |
typedef DLListImpl< File_pool, File > | File_list |
typedef LocalDLListImpl < File_pool, File > | Local_file_list |
typedef KeyTableImpl < File_pool, File > | File_hash |
typedef Ptr< Filegroup > | FilegroupPtr |
typedef RecordPool< Filegroup, RWPool > | Filegroup_pool |
typedef KeyTableImpl < Filegroup_pool, Filegroup > | Filegroup_hash |
typedef Ptr< DictObject > | DictObjectPtr |
Public Types inherited from SimulatedBlock | |
typedef void(SimulatedBlock::* | CallbackFunction )(class Signal *, Uint32 callbackData, Uint32 returnCode) |
Public Member Functions | |
RSS_AP_SNAPSHOT (c_attributeRecordPool) | |
RSS_AP_SNAPSHOT (c_tableRecordPool) | |
RSS_AP_SNAPSHOT (c_triggerRecordPool) | |
RSS_AP_SNAPSHOT (c_rope_pool) | |
RSS_AP_SNAPSHOT (c_obj_pool) | |
DictObject * | get_object (const char *name) |
DictObject * | get_object (const char *name, Uint32 len) |
DictObject * | get_object (const char *name, Uint32 len, Uint32 hash) |
bool | get_object (DictObjectPtr &obj_ptr, const char *name) |
bool | get_object (DictObjectPtr &obj_ptr, const char *name, Uint32 len) |
bool | get_object (DictObjectPtr &, const char *name, Uint32 len, Uint32 hash) |
void | release_object (Uint32 obj_ptr_i) |
void | release_object (Uint32 obj_ptr_i, DictObject *obj_ptr_p) |
void | increase_ref_count (Uint32 obj_ptr_i) |
void | decrease_ref_count (Uint32 obj_ptr_i) |
Dbdict (Block_context &ctx) | |
STATIC_CONST (opCreateEventSize=sizeof(OpCreateEvent)) | |
STATIC_CONST (opSubEventSize=sizeof(OpSubEvent)) | |
STATIC_CONST (opDropEventSize=sizeof(OpDropEvent)) | |
STATIC_CONST (opSignalUtilSize=sizeof(OpSignalUtil)) | |
void | send_drop_file (Signal *, Uint32, Uint32, DropFileImplReq::RequestInfo) |
void | send_drop_fg (Signal *, Uint32, Uint32, DropFilegroupImplReq::RequestInfo) |
int | checkSingleUserMode (Uint32 senderRef) |
void | sendDictLockInfoEvent (Signal *, const UtilLockReq *, const char *text) |
void | removeStaleDictLocks (Signal *signal, const Uint32 *theFailedNodes) |
Uint32 | dict_lock_trylock (const DictLockReq *req) |
Uint32 | dict_lock_unlock (Signal *signal, const DictLockReq *req) |
void | sendOLD_LIST_TABLES_CONF (Signal *signal, ListTablesReq *) |
void | sendLIST_TABLES_CONF (Signal *signal, ListTablesReq *) |
Uint32 | get_default_fragments (Signal *, Uint32 extra_nodegroups=0) |
void | wait_gcp (Signal *signal, SchemaOpPtr op_ptr, Uint32 flags) |
void | block_substartstop (Signal *signal, SchemaOpPtr op_ptr) |
void | unblock_substartstop () |
void | wait_substartstop (Signal *signal, Uint32 opPtrI) |
void | upgrade_seizeTrigger (Ptr< TableRecord > tabPtr, Uint32, Uint32, Uint32) |
void | send_event (Signal *, SchemaTransPtr &, Uint32 ev, Uint32 id, Uint32 version, Uint32 type) |
Public Member Functions inherited from SimulatedBlock | |
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) |
Static Public Member Functions | |
static const DictLockType * | getDictLockType (Uint32 lockType) |
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) |
Public Attributes | |
ArrayPool< AttributeRecord > | c_attributeRecordPool |
DLHashTable< AttributeRecord > | c_attributeRecordHash |
ArrayPool< TableRecord > | c_tableRecordPool |
Uint32 | c_fragDataLen |
union { | |
Uint16 c_fragData [MAX_NDB_PARTITIONS] | |
Uint32 c_fragData_align32 [1] | |
}; | |
Uint32 | c_tsIdData [2 *MAX_NDB_PARTITIONS] |
Uint32 | c_maxNoOfTriggers |
ArrayPool< TriggerRecord > | c_triggerRecordPool |
ArrayPool< FsConnectRecord > | c_fsConnectRecordPool |
CArray< NodeRecord > | c_nodes |
NdbNodeBitmask | c_aliveNodes |
CArray< PageRecord > | c_pageRecordArray |
CArray< SchemaPageRecord > | c_schemaPageRecordArray |
unsigned | g_trace |
DictTabInfo::Table | c_tableDesc |
PageRecord | c_indexPage |
File_pool | c_file_pool |
Filegroup_pool | c_filegroup_pool |
File_hash | c_file_hash |
Filegroup_hash | c_filegroup_hash |
RopePool | c_rope_pool |
DLHashTable< DictObject > | c_obj_hash |
ArrayPool< DictObject > | c_obj_pool |
LockQueue::Pool | m_dict_lock_pool |
LockQueue | m_dict_lock |
Uint32 | c_outstanding_sub_startstop |
NdbNodeBitmask | c_sub_startstop_lock |
Public Attributes inherited from SimulatedBlock | |
MutexManager | c_mutexMgr |
SafeCounterManager | c_counterMgr |
Protected Member Functions | |
virtual bool | getParam (const char *param, Uint32 *retVal) |
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 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 | 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 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 |
Friends | |
struct | DictLockType |
NdbOut & | operator<< (NdbOut &out, const ErrorInfo &) |
Additional Inherited Members | |
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 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 *) |
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 |
CallbackTable * | m_callbackTableAddr |
ERROR_INSERT_VARIABLE | |
Static Protected Attributes inherited from SimulatedBlock | |
static Callback | TheEmptyCallback = {0, 0} |
static Callback | TheNULLCallback |
DICT - This blocks handles all metadata
Definition at line 166 of file Dbdict.hpp.
Uint32 Dbdict::dict_lock_trylock | ( | const DictLockReq * | req | ) |
Should not happen with trylock
Definition at line 20390 of file Dbdict.cpp.
Uint32 Dbdict::dict_lock_unlock | ( | Signal * | signal, |
const DictLockReq * | req | ||
) |
void Dbdict::sendLIST_TABLES_CONF | ( | Signal * | signal, |
ListTablesReq * | req | ||
) |
Reset counter for next signal Reset buffers
Definition at line 10362 of file Dbdict.cpp.
Dbdict::STATIC_CONST | ( | opCreateEventSize | = sizeof(OpCreateEvent) | ) |
Only used at coordinator/master
void Dbdict::upgrade_seizeTrigger | ( | Ptr< TableRecord > | tabPtr, |
Uint32 | insertTriggerId, | ||
Uint32 | updateTriggerId, | ||
Uint32 | deleteTriggerId | ||
) |
The insert trigger will be "main" trigger so it does not need any special treatment
Definition at line 5149 of file Dbdict.cpp.
Uint32 Dbdict::c_fragDataLen |
Node Group and Tablespace id+version + range or list data. This is only stored temporarily in DBDICT during an ongoing change. TODO RONM: Look into improvements of this
Definition at line 433 of file Dbdict.hpp.
PageRecord Dbdict::c_indexPage |
A page for create index table signal.
Definition at line 588 of file Dbdict.hpp.