⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbdict.hpp

📁 mysql-5.0.22.tar.gz源码包
💻 HPP
📖 第 1 页 / 共 5 页
字号:
          m_errorCode = m_lastError;          m_errorLine = ref->getErrorLine();          m_errorNode = ref->getErrorNode();        }      }    }    void setError(const CreateTrigRef* ref) {      m_lastError = AlterTrigRef::NoError;      if (ref != 0) {        m_lastError = (AlterTrigRef::ErrorCode)ref->getErrorCode();        if (! hasError()) {          m_errorCode = m_lastError;          m_errorLine = ref->getErrorLine();          m_errorNode = ref->getErrorNode();        }      }    }    void setError(const DropTrigRef* ref) {      m_lastError = AlterTrigRef::NoError;      if (ref != 0) {        m_lastError = (AlterTrigRef::ErrorCode)ref->getErrorCode();        if (! hasError()) {          m_errorCode = m_lastError;          m_errorLine = ref->getErrorLine();          m_errorNode = ref->getErrorNode();        }      }    }  };  typedef Ptr<OpAlterTrigger> OpAlterTriggerPtr;  // Common operation record poolpublic:  STATIC_CONST( opCreateTableSize = sizeof(CreateTableRecord) );  STATIC_CONST( opDropTableSize = sizeof(DropTableRecord) );  STATIC_CONST( opCreateIndexSize = sizeof(OpCreateIndex) );  STATIC_CONST( opDropIndexSize = sizeof(OpDropIndex) );  STATIC_CONST( opAlterIndexSize = sizeof(OpAlterIndex) );  STATIC_CONST( opBuildIndexSize = sizeof(OpBuildIndex) );  STATIC_CONST( opCreateEventSize = sizeof(OpCreateEvent) );  STATIC_CONST( opSubEventSize = sizeof(OpSubEvent) );  STATIC_CONST( opDropEventSize = sizeof(OpDropEvent) );  STATIC_CONST( opSignalUtilSize = sizeof(OpSignalUtil) );  STATIC_CONST( opCreateTriggerSize = sizeof(OpCreateTrigger) );  STATIC_CONST( opDropTriggerSize = sizeof(OpDropTrigger) );  STATIC_CONST( opAlterTriggerSize = sizeof(OpAlterTrigger) );private:#define PTR_ALIGN(n) ((((n)+sizeof(void*)-1)>>2)&~((sizeof(void*)-1)>>2))  union OpRecordUnion {    Uint32 u_opCreateTable  [PTR_ALIGN(opCreateTableSize)];    Uint32 u_opDropTable    [PTR_ALIGN(opDropTableSize)];    Uint32 u_opCreateIndex  [PTR_ALIGN(opCreateIndexSize)];    Uint32 u_opDropIndex    [PTR_ALIGN(opDropIndexSize)];    Uint32 u_opCreateEvent  [PTR_ALIGN(opCreateEventSize)];    Uint32 u_opSubEvent     [PTR_ALIGN(opSubEventSize)];    Uint32 u_opDropEvent    [PTR_ALIGN(opDropEventSize)];    Uint32 u_opSignalUtil   [PTR_ALIGN(opSignalUtilSize)];    Uint32 u_opAlterIndex   [PTR_ALIGN(opAlterIndexSize)];    Uint32 u_opBuildIndex   [PTR_ALIGN(opBuildIndexSize)];    Uint32 u_opCreateTrigger[PTR_ALIGN(opCreateTriggerSize)];    Uint32 u_opDropTrigger  [PTR_ALIGN(opDropTriggerSize)];    Uint32 u_opAlterTrigger [PTR_ALIGN(opAlterTriggerSize)];    Uint32 nextPool;  };  ArrayPool<OpRecordUnion> c_opRecordPool;    // Operation records  KeyTable2<CreateTableRecord, OpRecordUnion> c_opCreateTable;  KeyTable2<DropTableRecord, OpRecordUnion> c_opDropTable;  KeyTable2<OpCreateIndex, OpRecordUnion> c_opCreateIndex;  KeyTable2<OpDropIndex, OpRecordUnion> c_opDropIndex;  KeyTable2<OpAlterIndex, OpRecordUnion> c_opAlterIndex;  KeyTable2<OpBuildIndex, OpRecordUnion> c_opBuildIndex;  KeyTable2<OpCreateEvent, OpRecordUnion> c_opCreateEvent;  KeyTable2<OpSubEvent, OpRecordUnion> c_opSubEvent;  KeyTable2<OpDropEvent, OpRecordUnion> c_opDropEvent;  KeyTable2<OpSignalUtil, OpRecordUnion> c_opSignalUtil;  KeyTable2<OpCreateTrigger, OpRecordUnion> c_opCreateTrigger;  KeyTable2<OpDropTrigger, OpRecordUnion> c_opDropTrigger;  KeyTable2<OpAlterTrigger, OpRecordUnion> c_opAlterTrigger;  // Unique key for operation  XXX move to some system table  Uint32 c_opRecordSequence;  // Statement blocks  /* ------------------------------------------------------------ */  // Start/Restart Handling  /* ------------------------------------------------------------ */  void sendSTTORRY(Signal* signal);  void sendNDB_STTORRY(Signal* signal);  void initSchemaFile(Signal* signal);    /* ------------------------------------------------------------ */  // Drop Table Handling  /* ------------------------------------------------------------ */  void releaseTableObject(Uint32 tableId, bool removeFromHash = true);    /* ------------------------------------------------------------ */  // General Stuff  /* ------------------------------------------------------------ */  Uint32 getFreeTableRecord(Uint32 primaryTableId);  Uint32 getFreeTriggerRecord();  bool getNewAttributeRecord(TableRecordPtr tablePtr,			     AttributeRecordPtr & attrPtr);  void packTableIntoPages(Signal* signal, Uint32 tableId, Uint32 pageId);  void packTableIntoPagesImpl(SimpleProperties::Writer &, TableRecordPtr,			      Signal* signal= 0);    void sendGET_TABINFOREQ(Signal* signal,                          Uint32 tableId);  void sendTC_SCHVERREQ(Signal* signal,                        Uint32 tableId,                        BlockReference tcRef);    /* ------------------------------------------------------------ */  // System Restart Handling  /* ------------------------------------------------------------ */  void initSendSchemaData(Signal* signal);  void sendSchemaData(Signal* signal);  Uint32 sendSCHEMA_INFO(Signal* signal, Uint32 nodeId, Uint32* pagePointer);  void checkSchemaStatus(Signal* signal);  void sendDIHSTARTTAB_REQ(Signal* signal);    /* ------------------------------------------------------------ */  // Receive Table Handling  /* ------------------------------------------------------------ */  void handleTabInfoInit(SimpleProperties::Reader &, 			 ParseDictTabInfoRecord *,			 bool checkExist = true);  void handleTabInfo(SimpleProperties::Reader & it, ParseDictTabInfoRecord *);    void handleAddTableFailure(Signal* signal,                             Uint32 failureLine,                             Uint32 tableId);  bool verifyTableCorrect(Signal* signal, Uint32 tableId);    /* ------------------------------------------------------------ */  // Add Table Handling  /* ------------------------------------------------------------ */  /* ------------------------------------------------------------ */  // Add Fragment Handling  /* ------------------------------------------------------------ */  void sendLQHADDATTRREQ(Signal*, CreateTableRecordPtr, Uint32 attributePtrI);    /* ------------------------------------------------------------ */  // Read/Write Schema and Table files  /* ------------------------------------------------------------ */  void updateSchemaState(Signal* signal, Uint32 tableId, 			 SchemaFile::TableEntry*, Callback*);  void startWriteSchemaFile(Signal* signal);  void openSchemaFile(Signal* signal,                      Uint32 fileNo,                      Uint32 fsPtr,                      bool writeFlag,                      bool newFile);  void writeSchemaFile(Signal* signal, Uint32 filePtr, Uint32 fsPtr);  void writeSchemaConf(Signal* signal,                               FsConnectRecordPtr fsPtr);  void closeFile(Signal* signal, Uint32 filePtr, Uint32 fsPtr);  void closeWriteSchemaConf(Signal* signal,                               FsConnectRecordPtr fsPtr);  void initSchemaFile_conf(Signal* signal, Uint32 i, Uint32 returnCode);    void writeTableFile(Signal* signal, Uint32 tableId, 		      SegmentedSectionPtr tabInfo, Callback*);  void startWriteTableFile(Signal* signal, Uint32 tableId);  void openTableFile(Signal* signal,                      Uint32 fileNo,                     Uint32 fsPtr,                     Uint32 tableId,                     bool writeFlag);  void writeTableFile(Signal* signal, Uint32 filePtr, Uint32 fsPtr);  void writeTableConf(Signal* signal,                      FsConnectRecordPtr fsPtr);  void closeWriteTableConf(Signal* signal,                           FsConnectRecordPtr fsPtr);  void startReadTableFile(Signal* signal, Uint32 tableId);  void openReadTableRef(Signal* signal,                        FsConnectRecordPtr fsPtr);  void readTableFile(Signal* signal, Uint32 filePtr, Uint32 fsPtr);  void readTableConf(Signal* signal,                     FsConnectRecordPtr fsPtr);  void readTableRef(Signal* signal,                    FsConnectRecordPtr fsPtr);  void closeReadTableConf(Signal* signal,                          FsConnectRecordPtr fsPtr);  void startReadSchemaFile(Signal* signal);  void openReadSchemaRef(Signal* signal,                         FsConnectRecordPtr fsPtr);  void readSchemaFile(Signal* signal, Uint32 filePtr, Uint32 fsPtr);  void readSchemaConf(Signal* signal, FsConnectRecordPtr fsPtr);  void readSchemaRef(Signal* signal, FsConnectRecordPtr fsPtr);  void closeReadSchemaConf(Signal* signal,                           FsConnectRecordPtr fsPtr);  bool convertSchemaFileTo_5_0_6(XSchemaFile*);  /* ------------------------------------------------------------ */  // Get table definitions  /* ------------------------------------------------------------ */  void sendGET_TABINFOREF(Signal* signal, 			  GetTabInfoReq*,			  GetTabInfoRef::ErrorCode errorCode);  void sendGET_TABLEID_REF(Signal* signal, 			   GetTableIdReq * req,			   GetTableIdRef::ErrorCode errorCode);  void sendGetTabResponse(Signal* signal);  /* ------------------------------------------------------------ */  // Indexes and triggers  /* ------------------------------------------------------------ */  // reactivate and rebuild indexes on start up  void activateIndexes(Signal* signal, Uint32 i);  void rebuildIndexes(Signal* signal, Uint32 i);  // create index  void createIndex_recvReply(Signal* signal, const CreateIndxConf* conf,      const CreateIndxRef* ref);  void createIndex_slavePrepare(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_toCreateTable(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_fromCreateTable(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_toAlterIndex(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_fromAlterIndex(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_slaveCommit(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_slaveAbort(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_sendSlaveReq(Signal* signal, OpCreateIndexPtr opPtr);  void createIndex_sendReply(Signal* signal, OpCreateIndexPtr opPtr, bool);  // drop index  void dropIndex_recvReply(Signal* signal, const DropIndxConf* conf,      const DropIndxRef* ref);  void dropIndex_slavePrepare(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_toAlterIndex(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_fromAlterIndex(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_toDropTable(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_fromDropTable(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_slaveCommit(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_slaveAbort(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_sendSlaveReq(Signal* signal, OpDropIndexPtr opPtr);  void dropIndex_sendReply(Signal* signal, OpDropIndexPtr opPtr, bool);  // alter index  void alterIndex_recvReply(Signal* signal, const AlterIndxConf* conf,      const AlterIndxRef* ref);  void alterIndex_slavePrepare(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_toCreateTc(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_fromCreateTc(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_toDropTc(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_fromDropTc(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_toCreateTrigger(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_fromCreateTrigger(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_toDropTrigger(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_fromDropTrigger(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_toBuildIndex(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_fromBuildIndex(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_slaveCommit(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_slaveAbort(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_sendSlaveReq(Signal* signal, OpAlterIndexPtr opPtr);  void alterIndex_sendReply(Signal* signal, OpAlterIndexPtr opPtr, bool);  // build index  void buildIndex_recvReply(Signal* signal, const BuildIndxConf* conf,      const BuildIndxRef* ref);  void buildIndex_toCreateConstr(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_fromCreateConstr(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_buildTrix(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_toDropConstr(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_fromDropConstr(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_toOnline(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_fromOnline(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_sendSlaveReq(Signal* signal, OpBuildIndexPtr opPtr);  void buildIndex_sendReply(Signal* signal, OpBuildIndexPtr opPtr, bool);  // Events  void   createEventUTIL_PREPARE(Signal* signal,			  Uint32 callbackData,			  Uint32 returnCode);  void   createEventUTIL_EXECUTE(Signal *signal, 			  Uint32 callbackData,			  Uint32 returnCode);  void   dropEventUTIL_PREPARE_READ(Signal* signal,			     Uint32 callbackData,			     Uint32 returnCode);  void   dropEventUTIL_EXECUTE_READ(Signal* signal,			     Uint32 callbackData,			     Uint32 returnCode);  void  dropEventUTIL_PREPARE_DELETE(Signal* signal,			       Uint32 callbackData,			       Uint32 returnCode);  void   dropEventUTIL_EXECUTE_DELETE(Signal *signal, 			       Uint32 callbackData,			       Uint32 returnCode);  void  dropEventUtilPrepareRef(Signal* signal,			  Uint32 callbackData,			  Uint32 returnCode);  void  dropEventUtilExecuteRef(Signal* signal,			  Uint32 callbackData,			  Uint32 returnCode);  int  sendSignalUtilReq(Callback *c,		    BlockReference ref, 		    GlobalSignalNumber gsn, 		    Signal* signal, 		    Uint32 length, 		    JobBufferLevel jbuf,		    LinearSectionPtr ptr[3],		    Uint32 noOfSections);  int  recvSignalUtilReq(Signal* signal, Uint32 returnCode);  void completeSubStartReq(Signal* signal, Uint32 ptrI,	Uint32 returnCode);  void completeSubStopReq(Signal* signal, Uint32 ptrI, Uint32 returnCode);  void completeSubRemoveReq(Signal* signal, Uint32 ptrI, Uint32 returnCode);    void dropEvent_sendReply(Signal* signal,			   OpDropEventPtr evntRecPtr);  void createEvent_RT_USER_CREATE(Signal* signal, OpCreateEventPtr evntRecPtr);  void createEventComplete_RT_USER_CREATE(Signal* signal,					  OpCreateEventPtr evntRecPtr);  void createEvent_RT_USER_GET(Signal* signal, OpCreateEventPtr evntRecPtr);  void createEventComplete_RT_USER_GET(Signal* signal, OpCreateEventPtr evntRecPtr);  void createEvent_RT_DICT_AFTER_GET(Signal* signal, OpCreateEventPtr evntRecPtr);  void createEvent_nodeFailCallback(Signal* signal, Uint32 eventRecPtrI,				    Uint32 returnCode);  void createEvent_sendReply(Signal* signal, OpCreateEventPtr evntRecPtr,			     LinearSectionPtr *ptr = NULL, int noLSP = 0);  void prepareTransactionEventSysTable (Callback *c,					Signal* signal,					Uint32 senderData,					UtilPrepareReq::OperationTypeValue prepReq);  void prepareUtilTransaction(Callback *c,			      Signal* signal,			      Uint32 senderData,			      Uint32 tableId,			      const char *tableName,			      UtilPrepareReq::OperationTypeValue prepReq,			      Uint32 noAttr,			      Uint32 attrIds[],			      const char *attrNames[]);  void executeTransEventSysTable(Callback *c,				 Signal *signal,				 const Uint32 ptrI,				 sysTab_NDBEVENTS_0& m_eventRec,				 const Uint32 prepareId,				 UtilPrepareReq::OperationTypeValue prepReq);  void executeTransaction(Callback *c,			  Signal* signal, 			  Uint32 senderData,			  Uint32 prepareId,			  Uint32 noAttr,			  LinearSectionPtr headerPtr,			  LinearSectionPtr dataPtr);  void parseReadEventSys(Signal *signal, sysTab_NDBEVENTS_0& m_eventRec);  // create trigger  void createTrigger_recvReply(Signal* signal, const CreateTrigConf* conf,      const CreateTrigRef* ref);  void createTrigger_slavePrepare(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_masterSeize(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_slaveCreate(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_toAlterTrigger(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_fromAlterTrigger(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_slaveCommit(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_slaveAbort(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_sendSlaveReq(Signal* signal, OpCreateTriggerPtr opPtr);  void createTrigger_sendReply(Signal* signal, OpCreateTriggerPtr opPtr, bool);  // drop trigger  void dropTrigger_recvReply(Signal* signal, const DropTrigConf* conf,      const DropTrigRef* ref);  void dropTrigger_slavePrepare(Signal* signal, OpDropTriggerPtr opPtr);  void dropTrigger_toAlterTrigger(Signal* signal, OpDropTriggerPtr opPtr);  void dropTrigger_fromAlterTrigger(Signal* signal, OpDropTriggerPtr opPtr);  void dropTrigger_slaveCommit(Signal* signal, OpDropTriggerPtr opPtr);  void dropTrigger_slaveAbort(Signal* signal, OpDropTriggerPtr opPtr);  void dropTrigger_sendSlaveReq(Signal* signal, OpDropTriggerPtr opPtr);  void dropTrigger_sendReply(Signal* signal, OpDropTriggerPtr opPtr, bool);  // alter trigger  void alterTrigger_recvReply(Signal* signal, const AlterTrigConf* conf,      const AlterTrigRef* ref);  void alterTrigger_slavePrepare(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_toCreateLocal(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_fromCreateLocal(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_toDropLocal(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_fromDropLocal(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_slaveCommit(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_slaveAbort(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_sendSlaveReq(Signal* signal, OpAlterTriggerPtr opPtr);  void alterTrigger_sendReply(Signal* signal, OpAlterTriggerPtr opPtr, bool);  // support  void getTableKeyList(TableRecordPtr tablePtr, AttributeList& list);  void getIndexAttr(TableRecordPtr indexPtr, Uint32 itAttr, Uint32* id);  void getIndexAttrList(TableRecordPtr indexPtr, Attribu

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -