| 
    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.