#include <NdbIndexOperation.hpp>

Public Member Functions | |
| LockMode | getLockMode () const |
| AbortOption | getAbortOption () const |
| int | setAbortOption (AbortOption) |
| virtual NdbTransaction * | getNdbTransaction () const |
Define Standard Operation | |
| int | insertTuple () |
| int | readTuple (LockMode) |
| int | readTuple () |
| int | readTupleExclusive () |
| int | simpleRead () |
| int | dirtyRead () |
| int | committedRead () |
| int | updateTuple () |
| int | deleteTuple () |
| const NdbDictionary::Index * | getIndex () const |
| int | dirtyUpdate () |
Specify Search Conditions | |
| int | equal (const char *anAttrName, const char *aValue, Uint32 len) |
| int | equal (const char *anAttrName, const char *aValue) |
| int | equal (const char *anAttrName, Int32 aValue) |
| int | equal (const char *anAttrName, Uint32 aValue) |
| int | equal (const char *anAttrName, Int64 aValue) |
| int | equal (const char *anAttrName, Uint64 aValue) |
| int | equal (Uint32 anAttrId, const char *aValue, Uint32 len) |
| int | equal (Uint32 anAttrId, const char *aValue) |
| int | equal (Uint32 anAttrId, Int32 aValue) |
| int | equal (Uint32 anAttrId, Uint32 aValue) |
| int | equal (Uint32 anAttrId, Int64 aValue) |
| int | equal (Uint32 anAttrId, Uint64 aValue) |
Specify Attribute Actions for Operations | |
| NdbRecAttr * | getValue (const char *anAttrName, char *aValue=0) |
| NdbRecAttr * | getValue (Uint32 anAttrId, char *aValue=0) |
| NdbRecAttr * | getValue (const NdbDictionary::Column *, char *val=0) |
| int | setValue (const char *anAttrName, const char *aValue, Uint32 len) |
| int | setValue (const char *anAttrName, const char *aValue) |
| int | setValue (const char *anAttrName, Int32 aValue) |
| int | setValue (const char *anAttrName, Uint32 aValue) |
| int | setValue (const char *anAttrName, Int64 aValue) |
| int | setValue (const char *anAttrName, Uint64 aValue) |
| int | setValue (const char *anAttrName, float aValue) |
| int | setValue (const char *anAttrName, double aValue) |
| int | setValue (Uint32 anAttrId, const char *aValue, Uint32 len) |
| int | setValue (Uint32 anAttrId, const char *aValue) |
| int | setValue (Uint32 anAttrId, Int32 aValue) |
| int | setValue (Uint32 anAttrId, Uint32 aValue) |
| int | setValue (Uint32 anAttrId, Int64 aValue) |
| int | setValue (Uint32 anAttrId, Uint64 aValue) |
| int | setValue (Uint32 anAttrId, float aValue) |
| int | setValue (Uint32 anAttrId, double aValue) |
| virtual NdbBlob * | getBlobHandle (const char *anAttrName) |
| virtual NdbBlob * | getBlobHandle (Uint32 anAttrId) |
| virtual NdbBlob * | getBlobHandle (const char *anAttrName) const |
| virtual NdbBlob * | getBlobHandle (Uint32 anAttrId) const |
Error Handling | |
| const NdbError & | getNdbError () const |
| int | getNdbErrorLine () |
| int | getNdbErrorLine () const |
| const char * | getTableName () const |
| const NdbDictionary::Table * | getTable () const |
| const Type | getType () const |
Protected Types | |
| enum | OperationStatus { Init, OperationDefined, TupleKeyDefined, GetValue, SetValue, ExecInterpretedValue, SetValueInterpreted, FinalGetValue, SubroutineExec, SubroutineEnd, WaitResponse, Finished, UseNdbRecord } |
Protected Member Functions | |
| int | setValue (const NdbColumnImpl *anAttrObject, const char *aValue) |
| NdbBlob * | getBlobHandle (NdbTransaction *aCon, const NdbColumnImpl *anAttrObject) |
| NdbBlob * | getBlobHandle (NdbTransaction *aCon, const NdbColumnImpl *anAttrObject) const |
| bool | needReply () |
| int | init (const class NdbTableImpl *, NdbTransaction *aCon, bool useRec) |
| void | initInterpreter () |
| void | next (NdbOperation *) |
| NdbOperation * | next () |
| OperationStatus | Status () |
| void | Status (OperationStatus) |
| void | NdbCon (NdbTransaction *) |
| virtual void | release () |
| void | postExecuteRelease () |
| void | setStartIndicator () |
| int | doSendKeyReq (int processorId, GenericSectionPtr *secs, Uint32 numSecs) |
| int | doSend (int ProcessorId, Uint32 lastFlag) |
| virtual int | prepareSend (Uint32 TC_ConnectPtr, Uint64 TransactionId, AbortOption) |
| virtual void | setLastFlag (NdbApiSignal *signal, Uint32 lastFlag) |
| int | prepareSendInterpreted () |
| int | initInterpretedInfo (const NdbInterpretedCode *code, Uint32 *&interpretedInfo, Uint32 *stackSpace, Uint32 stackSpaceEntries, Uint32 *&dynamicSpace) |
| void | freeInterpretedInfo (Uint32 *&dynamicSpace) |
| int | buildInterpretedProgramSignals (Uint32 aTC_ConnectPtr, Uint64 aTransId, Uint32 **attrInfoPtr, Uint32 *remain, const NdbInterpretedCode *code, Uint32 *interpretedWorkspace, bool mainProgram, Uint32 &wordsWritten) |
| int | buildSignalsNdbRecord (Uint32 aTC_ConnectPtr, Uint64 aTransId) |
| int | prepareSendNdbRecord (AbortOption ao) |
| Uint32 | fillTcKeyReqHdr (TcKeyReq *tcKeyReq, Uint32 connectPtr, Uint64 transId) |
| int | allocKeyInfo () |
| int | allocAttrInfo () |
| int | insertKEYINFO_NdbRecord (const char *value, Uint32 byteSize) |
| int | insertATTRINFOHdr_NdbRecord (Uint32 attrId, Uint32 attrLen) |
| int | insertATTRINFOData_NdbRecord (const char *value, Uint32 size) |
| int | receiveTCKEYREF (NdbApiSignal *) |
| int | checkMagicNumber (bool b=true) |
| int | checkState_TransId (NdbApiSignal *aSignal) |
| virtual int | equal_impl (const NdbColumnImpl *, const char *aValue) |
| virtual NdbRecAttr * | getValue_impl (const NdbColumnImpl *, char *aValue=0) |
| NdbRecAttr * | getValue_NdbRecord (const NdbColumnImpl *tAttrInfo, char *aValue) |
| int | incValue (const NdbColumnImpl *anAttrObject, Uint32 aValue) |
| int | incValue (const NdbColumnImpl *anAttrObject, Uint64 aValue) |
| int | subValue (const NdbColumnImpl *anAttrObject, Uint32 aValue) |
| int | subValue (const NdbColumnImpl *anAttrObject, Uint64 aValue) |
| int | read_attr (const NdbColumnImpl *anAttrObject, Uint32 RegDest) |
| int | write_attr (const NdbColumnImpl *anAttrObject, Uint32 RegSource) |
| int | branch_reg_reg (Uint32 type, Uint32, Uint32, Uint32) |
| int | branch_col (Uint32 type, Uint32, const void *, Uint32, Uint32 Label) |
| int | branch_col_null (Uint32 type, Uint32 col, Uint32 Label) |
| NdbBlob * | linkInBlobHandle (NdbTransaction *aCon, const NdbColumnImpl *column, NdbBlob *&lastPtr) |
| int | getBlobHandlesNdbRecord (NdbTransaction *aCon) |
| int | getBlobHandlesNdbRecordDelete (NdbTransaction *aCon, bool checkReadSet) |
| int | insertATTRINFO (Uint32 aData) |
| int | insertATTRINFOloop (const Uint32 *aDataPtr, Uint32 aLength) |
| int | insertKEYINFO (const char *aValue, Uint32 aStartPosition, Uint32 aKeyLenInByte) |
| void | reorderKEYINFO () |
| virtual void | setErrorCode (int aErrorCode) const |
| virtual void | setErrorCodeAbort (int aErrorCode) const |
| bool | isNdbRecordOperation () |
| int | incCheck (const NdbColumnImpl *anAttrObject) |
| int | initial_interpreterCheck () |
| int | intermediate_interpreterCheck () |
| int | read_attrCheck (const NdbColumnImpl *anAttrObject) |
| int | write_attrCheck (const NdbColumnImpl *anAttrObject) |
| int | labelCheck () |
| int | insertCall (Uint32 aCall) |
| int | insertBranch (Uint32 aBranch) |
| Uint32 | ptr2int () |
| int | getKeyFromTCREQ (Uint32 *data, Uint32 &size) |
| virtual void | setReadLockMode (LockMode lockMode) |
| NdbRecAttr * | getVarValue (const NdbColumnImpl *, char *aBareValue, Uint16 *aLenLoc) |
| int | setVarValue (const NdbColumnImpl *, const char *aBareValue, const Uint16 &aLen) |
| Uint32 | repack_read (Uint32 len) |
Static Protected Member Functions | |
| static int | handleOperationOptions (const OperationType type, const OperationOptions *opts, const Uint32 sizeOfOptions, NdbOperation *op) |
Protected Attributes | |
| Type | m_type |
| NdbReceiver | theReceiver |
| NdbError | theError |
| int | theErrorLine |
| Ndb * | theNdb |
| NdbTransaction * | theNdbCon |
| NdbOperation * | theNext |
| union { | |
| NdbApiSignal * theTCREQ | |
| NdbApiSignal * theSCAN_TABREQ | |
| NdbApiSignal * theRequest | |
| }; | |
| NdbApiSignal * | theFirstATTRINFO |
| NdbApiSignal * | theCurrentATTRINFO |
| Uint32 | theTotalCurrAI_Len |
| Uint32 | theAI_LenInCurrAI |
| NdbApiSignal * | theLastKEYINFO |
| class NdbLabel * | theFirstLabel |
| class NdbLabel * | theLastLabel |
| class NdbBranch * | theFirstBranch |
| class NdbBranch * | theLastBranch |
| class NdbCall * | theFirstCall |
| class NdbCall * | theLastCall |
| class NdbSubroutine * | theFirstSubroutine |
| class NdbSubroutine * | theLastSubroutine |
| Uint32 | theNoOfLabels |
| Uint32 | theNoOfSubroutines |
| Uint32 * | theKEYINFOptr |
| Uint32 | keyInfoRemain |
| Uint32 * | theATTRINFOptr |
| Uint32 | attrInfoRemain |
| class NdbTableImpl * | m_currentTable |
| class NdbTableImpl * | m_accessTable |
| Uint32 | theTupleKeyDefined [NDB_MAX_NO_OF_ATTRIBUTES_IN_KEY][3] |
| Uint32 | theTotalNrOfKeyWordInSignal |
| Uint32 | theTupKeyLen |
| Uint8 | theNoOfTupKeyLeft |
| OperationType | theOperationType |
| LockMode | theLockMode |
| OperationStatus | theStatus |
| Uint32 | theMagicNumber |
| Uint32 | theScanInfo |
| Uint32 | theDistributionKey |
| Uint32 | theSubroutineSize |
| Uint32 | theInitialReadSize |
| Uint32 | theInterpretedSize |
| Uint32 | theFinalUpdateSize |
| Uint32 | theFinalReadSize |
| Uint8 | theStartIndicator |
| Uint8 | theCommitIndicator |
| Uint8 | theSimpleIndicator |
| Uint8 | theDirtyIndicator |
| Uint8 | theInterpretIndicator |
| Int8 | theDistrKeyIndicator_ |
| Uint8 | m_no_disk_flag |
| Uint8 | m_use_any_value |
| Uint16 | m_tcReqGSN |
| Uint16 | m_keyInfoGSN |
| Uint16 | m_attrInfoGSN |
| const NdbRecord * | m_key_record |
| const char * | m_key_row |
| Uint32 | m_keyinfo_length |
| const NdbRecord * | m_attribute_record |
| const char * | m_attribute_row |
| Uint32 | m_read_mask [(NDB_MAX_ATTRIBUTES_IN_TABLE+31)>>5] |
| const NdbInterpretedCode * | m_interpreted_code |
| const SetValueSpec * | m_extraSetValues |
| Uint32 | m_numExtraSetValues |
| Uint32 | m_any_value |
| NdbBlob * | theBlobList |
| Int8 | m_abortOption |
| Int8 | m_noErrorPropagation |
Private Member Functions | |
| NdbIndexOperation (Ndb *aNdb) | |
| ~NdbIndexOperation () | |
| int | receiveTCINDXREF (NdbApiSignal *aSignal) |
| int | indxInit (const class NdbIndexImpl *anIndex, const class NdbTableImpl *aTable, NdbTransaction *, bool useRec) |
Private Attributes | |
| const NdbIndexImpl * | m_theIndex |
Friends | |
| struct | Ndb_free_list_t< NdbIndexOperation > |
| struct | Ndb_free_list_t< NdbOperation > |
Define Standard Operation Type | |
| virtual int | writeTuple () |
| virtual int | dirtyWrite () |
| enum | Type { PrimaryKeyAccess, UniqueIndexAccess, TableScan, OrderedIndexScan } |
| enum | LockMode { LM_Read, LM_Exclusive, LM_SimpleRead = 3 } |
| enum | AbortOption { DefaultAbortOption = -1, AbortOnError = 0, AO_IgnoreError = 2 } |
enum NdbOperation::AbortOption [inherited] |
How should transaction be handled if operation fails.
If AO_IgnoreError, a failure in one operation will not abort the transaction, and NdbTransaction::execute() will return 0 (success). Use NdbOperation::getNdbError() to check for errors from individual operations.
If AbortOnError, a failure in one operation will abort the transaction and cause NdbTransaction::execute() to return -1.
Abort option can be set on execute(), or in the individual operation. Setting AO_IgnoreError or AbortOnError in execute() overrides the settings on individual operations. Setting DefaultAbortOption in execute() (the default) causes individual operation settings to be used.
For READ, default is AO_IgnoreError DML, default is AbortOnError CommittedRead does _only_ support AO_IgnoreError
enum NdbOperation::LockMode [inherited] |
enum NdbOperation::OperationStatus [protected, inherited] |
enum NdbOperation::Type [inherited] |
Different access types (supported by sub-classes of NdbOperation)
| NdbIndexOperation::NdbIndexOperation | ( | Ndb * | aNdb | ) | [private] |
| NdbIndexOperation::~NdbIndexOperation | ( | ) | [private] |
| int NdbOperation::allocAttrInfo | ( | ) | [protected, inherited] |
| int NdbOperation::allocKeyInfo | ( | ) | [protected, inherited] |
| int NdbOperation::branch_col | ( | Uint32 | type, | |
| Uint32 | , | |||
| const void * | , | |||
| Uint32 | , | |||
| Uint32 | Label | |||
| ) | [protected, inherited] |
| int NdbOperation::branch_col_null | ( | Uint32 | type, | |
| Uint32 | col, | |||
| Uint32 | Label | |||
| ) | [protected, inherited] |
| int NdbOperation::branch_reg_reg | ( | Uint32 | type, | |
| Uint32 | , | |||
| Uint32 | , | |||
| Uint32 | ||||
| ) | [protected, inherited] |
| int NdbOperation::buildInterpretedProgramSignals | ( | Uint32 | aTC_ConnectPtr, | |
| Uint64 | aTransId, | |||
| Uint32 ** | attrInfoPtr, | |||
| Uint32 * | remain, | |||
| const NdbInterpretedCode * | code, | |||
| Uint32 * | interpretedWorkspace, | |||
| bool | mainProgram, | |||
| Uint32 & | wordsWritten | |||
| ) | [protected, inherited] |
| int NdbOperation::buildSignalsNdbRecord | ( | Uint32 | aTC_ConnectPtr, | |
| Uint64 | aTransId | |||
| ) | [protected, inherited] |
| int NdbOperation::checkMagicNumber | ( | bool | b = true |
) | [protected, inherited] |
| int NdbOperation::checkState_TransId | ( | NdbApiSignal * | aSignal | ) | [protected, inherited] |
| int NdbIndexOperation::committedRead | ( | ) | [virtual] |
Define the NdbOperation to be a standard operation of type committedRead. When calling NdbTransaction::execute, this operation read latest committed value of the record.
This means that if another transaction is updating the record, then the current transaction will not wait. It will instead use the latest committed value of the record.
Reimplemented from NdbOperation.
| int NdbIndexOperation::deleteTuple | ( | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type deleteTuple.
When calling NdbTransaction::execute, this operation deletes a tuple.
Reimplemented from NdbOperation.
| int NdbIndexOperation::dirtyRead | ( | ) | [virtual] |
Define the NdbOperation to be a standard operation of type committedRead. When calling NdbTransaction::execute, this operation read latest committed value of the record.
This means that if another transaction is updating the record, then the current transaction will not wait. It will instead use the latest committed value of the record.
Reimplemented from NdbOperation.
| int NdbIndexOperation::dirtyUpdate | ( | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type dirtyUpdate.
When calling NdbTransaction::execute, this operation updates without two-phase commit.
Reimplemented from NdbOperation.
| virtual int NdbOperation::dirtyWrite | ( | ) | [virtual, inherited] |
Define the NdbOperation to be a standard operation of type dirtyWrite. When calling NdbTransaction::execute, this operation writes without two-phase commit.
| int NdbOperation::doSend | ( | int | ProcessorId, | |
| Uint32 | lastFlag | |||
| ) | [protected, inherited] |
| int NdbOperation::doSendKeyReq | ( | int | processorId, | |
| GenericSectionPtr * | secs, | |||
| Uint32 | numSecs | |||
| ) | [protected, inherited] |
| int NdbOperation::equal | ( | Uint32 | anAttrId, | |
| Uint64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | Uint32 | anAttrId, | |
| Int64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | Uint32 | anAttrId, | |
| Uint32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | Uint32 | anAttrId, | |
| Int32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | Uint32 | anAttrId, | |
| const char * | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | Uint32 | anAttrId, | |
| const char * | aValue, | |||
| Uint32 | len | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | const char * | anAttrName, | |
| Uint64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | const char * | anAttrName, | |
| Int64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | const char * | anAttrName, | |
| Uint32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | const char * | anAttrName, | |
| Int32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | const char * | anAttrName, | |
| const char * | aValue | |||
| ) | [inherited] |
| int NdbOperation::equal | ( | const char * | anAttrName, | |
| const char * | aValue, | |||
| Uint32 | len | |||
| ) | [inherited] |
Define a search condition with equality. The condition is true if the attribute has the given value. To set search conditions on multiple attributes, use several equals (then all of them must be satisfied for the tuple to be selected).
There are 10 versions of equal() with slightly different parameters.
If attribute has fixed size, value must include all bytes. In particular a Char must be native-blank padded. If attribute has variable size, value must start with 1 or 2 little-endian length bytes (2 if Long*).
| anAttrName | Attribute name | |
| aValue | Attribute value. |
| virtual int NdbOperation::equal_impl | ( | const NdbColumnImpl * | , | |
| const char * | aValue | |||
| ) | [protected, virtual, inherited] |
Reimplemented in NdbIndexScanOperation.
| Uint32 NdbOperation::fillTcKeyReqHdr | ( | TcKeyReq * | tcKeyReq, | |
| Uint32 | connectPtr, | |||
| Uint64 | transId | |||
| ) | [protected, inherited] |
| void NdbOperation::freeInterpretedInfo | ( | Uint32 *& | dynamicSpace | ) | [protected, inherited] |
| AbortOption NdbOperation::getAbortOption | ( | ) | const [inherited] |
Get/set abort option
| NdbBlob* NdbOperation::getBlobHandle | ( | NdbTransaction * | aCon, | |
| const NdbColumnImpl * | anAttrObject | |||
| ) | const [protected, inherited] |
| NdbBlob* NdbOperation::getBlobHandle | ( | NdbTransaction * | aCon, | |
| const NdbColumnImpl * | anAttrObject | |||
| ) | [protected, inherited] |
| virtual NdbBlob* NdbOperation::getBlobHandle | ( | Uint32 | anAttrId | ) | const [virtual, inherited] |
| virtual NdbBlob* NdbOperation::getBlobHandle | ( | const char * | anAttrName | ) | const [virtual, inherited] |
| virtual NdbBlob* NdbOperation::getBlobHandle | ( | Uint32 | anAttrId | ) | [virtual, inherited] |
| virtual NdbBlob* NdbOperation::getBlobHandle | ( | const char * | anAttrName | ) | [virtual, inherited] |
This method replaces getValue/setValue for blobs. It creates a blob handle NdbBlob. A second call with same argument returns the previously created handle. The handle is linked to the operation and is maintained automatically.
See NdbBlob for details.
For NdbRecord operation, this method can be used to fetch the blob handle for an NdbRecord operation that references the blob, but extra blob columns can not be added with this call (it will return 0).
For reading with NdbRecord, the NdbRecord entry for each blob must reserve space in the row for sizeof(NdbBlob *). The blob handle will be stored there, providing an alternative way of obtaining the blob handle.
| int NdbOperation::getBlobHandlesNdbRecord | ( | NdbTransaction * | aCon | ) | [protected, inherited] |
| int NdbOperation::getBlobHandlesNdbRecordDelete | ( | NdbTransaction * | aCon, | |
| bool | checkReadSet | |||
| ) | [protected, inherited] |
| const NdbDictionary::Index* NdbIndexOperation::getIndex | ( | ) | const |
Get index object for this operation
| int NdbOperation::getKeyFromTCREQ | ( | Uint32 * | data, | |
| Uint32 & | size | |||
| ) | [protected, inherited] |
| LockMode NdbOperation::getLockMode | ( | ) | const [inline, inherited] |
Return lock mode for operation
| const NdbError& NdbOperation::getNdbError | ( | ) | const [inherited] |
Get the latest error code.
| int NdbOperation::getNdbErrorLine | ( | ) | const [inherited] |
| int NdbOperation::getNdbErrorLine | ( | ) | [inherited] |
Get the method number where the error occured.
| virtual NdbTransaction* NdbOperation::getNdbTransaction | ( | ) | const [virtual, inherited] |
Get NdbTransaction object pointer for this operation
Reimplemented in NdbScanOperation.
| const NdbDictionary::Table* NdbOperation::getTable | ( | ) | const [inherited] |
Get table object for this operation Not supported for NdbRecord operation.
| const char* NdbOperation::getTableName | ( | ) | const [inherited] |
Get table name of this operation. Not supported for NdbRecord operation.
| const Type NdbOperation::getType | ( | ) | const [inherited] |
Get the type of access for this operation
| NdbRecAttr* NdbOperation::getValue | ( | const NdbDictionary::Column * | , | |
| char * | val = 0 | |||
| ) | [inherited] |
| NdbRecAttr* NdbOperation::getValue | ( | Uint32 | anAttrId, | |
| char * | aValue = 0 | |||
| ) | [inherited] |
| NdbRecAttr* NdbOperation::getValue | ( | const char * | anAttrName, | |
| char * | aValue = 0 | |||
| ) | [inherited] |
Defines a retrieval operation of an attribute value. The NDB API allocate memory for the NdbRecAttr object that will hold the returned attribute value.
There are two versions of NdbOperation::getValue with slightly different parameters.
This method does not fetch the attribute value from the database! The NdbRecAttr object returned by this method is not readable/printable before the transaction has been executed with NdbTransaction::execute.
| anAttrName | Attribute name | |
| aValue | If this is non-NULL, then the attribute value will be returned in this parameter. If NULL, then the attribute value will only be stored in the returned NdbRecAttr object. |
| virtual NdbRecAttr* NdbOperation::getValue_impl | ( | const NdbColumnImpl * | , | |
| char * | aValue = 0 | |||
| ) | [protected, virtual, inherited] |
Reimplemented in NdbIndexScanOperation, and NdbScanOperation.
| NdbRecAttr* NdbOperation::getValue_NdbRecord | ( | const NdbColumnImpl * | tAttrInfo, | |
| char * | aValue | |||
| ) | [protected, inherited] |
| NdbRecAttr* NdbOperation::getVarValue | ( | const NdbColumnImpl * | , | |
| char * | aBareValue, | |||
| Uint16 * | aLenLoc | |||
| ) | [protected, inherited] |
| static int NdbOperation::handleOperationOptions | ( | const OperationType | type, | |
| const OperationOptions * | opts, | |||
| const Uint32 | sizeOfOptions, | |||
| NdbOperation * | op | |||
| ) | [static, protected, inherited] |
| int NdbOperation::incCheck | ( | const NdbColumnImpl * | anAttrObject | ) | [protected, inherited] |
| int NdbOperation::incValue | ( | const NdbColumnImpl * | anAttrObject, | |
| Uint64 | aValue | |||
| ) | [protected, inherited] |
| int NdbOperation::incValue | ( | const NdbColumnImpl * | anAttrObject, | |
| Uint32 | aValue | |||
| ) | [protected, inherited] |
| int NdbIndexOperation::indxInit | ( | const class NdbIndexImpl * | anIndex, | |
| const class NdbTableImpl * | aTable, | |||
| NdbTransaction * | , | |||
| bool | useRec | |||
| ) | [private] |
| int NdbOperation::init | ( | const class NdbTableImpl * | , | |
| NdbTransaction * | aCon, | |||
| bool | useRec | |||
| ) | [protected, inherited] |
| int NdbOperation::initial_interpreterCheck | ( | ) | [protected, inherited] |
| int NdbOperation::initInterpretedInfo | ( | const NdbInterpretedCode * | code, | |
| Uint32 *& | interpretedInfo, | |||
| Uint32 * | stackSpace, | |||
| Uint32 | stackSpaceEntries, | |||
| Uint32 *& | dynamicSpace | |||
| ) | [protected, inherited] |
| void NdbOperation::initInterpreter | ( | ) | [protected, inherited] |
| int NdbOperation::insertATTRINFO | ( | Uint32 | aData | ) | [protected, inherited] |
| int NdbOperation::insertATTRINFOData_NdbRecord | ( | const char * | value, | |
| Uint32 | size | |||
| ) | [protected, inherited] |
| int NdbOperation::insertATTRINFOHdr_NdbRecord | ( | Uint32 | attrId, | |
| Uint32 | attrLen | |||
| ) | [protected, inherited] |
| int NdbOperation::insertATTRINFOloop | ( | const Uint32 * | aDataPtr, | |
| Uint32 | aLength | |||
| ) | [protected, inherited] |
| int NdbOperation::insertBranch | ( | Uint32 | aBranch | ) | [protected, inherited] |
| int NdbOperation::insertCall | ( | Uint32 | aCall | ) | [protected, inherited] |
| int NdbOperation::insertKEYINFO | ( | const char * | aValue, | |
| Uint32 | aStartPosition, | |||
| Uint32 | aKeyLenInByte | |||
| ) | [protected, inherited] |
| int NdbOperation::insertKEYINFO_NdbRecord | ( | const char * | value, | |
| Uint32 | byteSize | |||
| ) | [protected, inherited] |
| int NdbIndexOperation::insertTuple | ( | ) | [virtual] |
insert is not allowed
Reimplemented from NdbOperation.
| int NdbOperation::intermediate_interpreterCheck | ( | ) | [protected, inherited] |
| bool NdbOperation::isNdbRecordOperation | ( | ) | [protected, inherited] |
| int NdbOperation::labelCheck | ( | ) | [protected, inherited] |
| NdbBlob* NdbOperation::linkInBlobHandle | ( | NdbTransaction * | aCon, | |
| const NdbColumnImpl * | column, | |||
| NdbBlob *& | lastPtr | |||
| ) | [protected, inherited] |
| void NdbOperation::NdbCon | ( | NdbTransaction * | ) | [protected, inherited] |
| bool NdbOperation::needReply | ( | ) | [protected, inherited] |
| NdbOperation* NdbOperation::next | ( | ) | [protected, inherited] |
| void NdbOperation::next | ( | NdbOperation * | ) | [protected, inherited] |
| void NdbOperation::postExecuteRelease | ( | ) | [protected, inherited] |
| virtual int NdbOperation::prepareSend | ( | Uint32 | TC_ConnectPtr, | |
| Uint64 | TransactionId, | |||
| AbortOption | ||||
| ) | [protected, virtual, inherited] |
| int NdbOperation::prepareSendInterpreted | ( | ) | [protected, inherited] |
| int NdbOperation::prepareSendNdbRecord | ( | AbortOption | ao | ) | [protected, inherited] |
| Uint32 NdbOperation::ptr2int | ( | ) | [inline, protected, inherited] |
| int NdbOperation::read_attr | ( | const NdbColumnImpl * | anAttrObject, | |
| Uint32 | RegDest | |||
| ) | [protected, inherited] |
| int NdbOperation::read_attrCheck | ( | const NdbColumnImpl * | anAttrObject | ) | [protected, inherited] |
| int NdbIndexOperation::readTuple | ( | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type readTuple. When calling NdbTransaction::execute, this operation reads a tuple.
Reimplemented from NdbOperation.
| int NdbIndexOperation::readTuple | ( | LockMode | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type readTuple. When calling NdbTransaction::execute, this operation reads a tuple.
Reimplemented from NdbOperation.
| int NdbIndexOperation::readTupleExclusive | ( | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type readTupleExclusive. When calling NdbTransaction::execute, this operation read a tuple using an exclusive lock.
Reimplemented from NdbOperation.
| int NdbIndexOperation::receiveTCINDXREF | ( | NdbApiSignal * | aSignal | ) | [private] |
| int NdbOperation::receiveTCKEYREF | ( | NdbApiSignal * | ) | [protected, inherited] |
| virtual void NdbOperation::release | ( | ) | [protected, virtual, inherited] |
Reimplemented in NdbScanOperation.
| void NdbOperation::reorderKEYINFO | ( | ) | [protected, inherited] |
| Uint32 NdbOperation::repack_read | ( | Uint32 | len | ) | [protected, inherited] |
| int NdbOperation::setAbortOption | ( | AbortOption | ) | [inherited] |
| virtual void NdbOperation::setErrorCode | ( | int | aErrorCode | ) | const [protected, virtual, inherited] |
| virtual void NdbOperation::setErrorCodeAbort | ( | int | aErrorCode | ) | const [protected, virtual, inherited] |
| virtual void NdbOperation::setLastFlag | ( | NdbApiSignal * | signal, | |
| Uint32 | lastFlag | |||
| ) | [protected, virtual, inherited] |
| virtual void NdbOperation::setReadLockMode | ( | LockMode | lockMode | ) | [protected, virtual, inherited] |
Reimplemented in NdbScanOperation.
| void NdbOperation::setStartIndicator | ( | ) | [protected, inherited] |
| int NdbOperation::setValue | ( | const NdbColumnImpl * | anAttrObject, | |
| const char * | aValue | |||
| ) | [protected, inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| double | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| float | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| Uint64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| Int64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| Uint32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| Int32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| const char * | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | Uint32 | anAttrId, | |
| const char * | aValue, | |||
| Uint32 | len | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| double | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| float | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| Uint64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| Int64 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| Uint32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| Int32 | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| const char * | aValue | |||
| ) | [inherited] |
| int NdbOperation::setValue | ( | const char * | anAttrName, | |
| const char * | aValue, | |||
| Uint32 | len | |||
| ) | [inherited] |
Define an attribute to set or update in query.
To set a NULL value, use the following construct:
setValue("ATTR_NAME", (char*)NULL);
There are a number of NdbOperation::setValue methods that take a certain type as input (pass by value rather than passing a pointer). As the interface is currently implemented it is the responsibility of the application programmer to use the correct types.
The NDB API will however check that the application sends a correct length to the interface as given in the length parameter. The passing of char* as the value can contain any type or any type of array. If length is not provided or set to zero, then the API will assume that the pointer is correct and not bother with checking it.
For insertTuple() it is not necessary to use setValue() on key attributes before other attributes.
There are 14 versions of NdbOperation::setValue with slightly different parameters.
See note under equal() about value format and length.
| anAttrName | Name (or Id) of attribute. | |
| aValue | Attribute value to set. |
| int NdbOperation::setVarValue | ( | const NdbColumnImpl * | , | |
| const char * | aBareValue, | |||
| const Uint16 & | aLen | |||
| ) | [protected, inherited] |
| int NdbIndexOperation::simpleRead | ( | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type simpleRead. When calling NdbTransaction::execute, this operation reads an existing tuple (using shared read lock), but releases lock immediately after read.
Reimplemented from NdbOperation.
| void NdbOperation::Status | ( | OperationStatus | ) | [protected, inherited] |
| OperationStatus NdbOperation::Status | ( | ) | [protected, inherited] |
| int NdbOperation::subValue | ( | const NdbColumnImpl * | anAttrObject, | |
| Uint64 | aValue | |||
| ) | [protected, inherited] |
| int NdbOperation::subValue | ( | const NdbColumnImpl * | anAttrObject, | |
| Uint32 | aValue | |||
| ) | [protected, inherited] |
| int NdbIndexOperation::updateTuple | ( | ) | [virtual] |
Define the NdbIndexOperation to be a standard operation of type updateTuple.
When calling NdbTransaction::execute, this operation updates a tuple in the table.
Reimplemented from NdbOperation.
| int NdbOperation::write_attr | ( | const NdbColumnImpl * | anAttrObject, | |
| Uint32 | RegSource | |||
| ) | [protected, inherited] |
| int NdbOperation::write_attrCheck | ( | const NdbColumnImpl * | anAttrObject | ) | [protected, inherited] |
| virtual int NdbOperation::writeTuple | ( | ) | [virtual, inherited] |
Define the NdbOperation to be a standard operation of type writeTuple. When calling NdbTransaction::execute, this operation writes a tuple to the table. If the tuple exists, it updates it, otherwise an insert takes place.
friend struct Ndb_free_list_t< NdbIndexOperation > [friend] |
friend struct Ndb_free_list_t< NdbOperation > [friend, inherited] |
union { ... } [protected, inherited] |
Uint32 NdbOperation::attrInfoRemain [protected, inherited] |
Uint32 NdbOperation::keyInfoRemain [protected, inherited] |
Int8 NdbOperation::m_abortOption [protected, inherited] |
class NdbTableImpl* NdbOperation::m_accessTable [protected, inherited] |
Uint32 NdbOperation::m_any_value [protected, inherited] |
const NdbRecord* NdbOperation::m_attribute_record [protected, inherited] |
const char* NdbOperation::m_attribute_row [protected, inherited] |
Uint16 NdbOperation::m_attrInfoGSN [protected, inherited] |
class NdbTableImpl* NdbOperation::m_currentTable [protected, inherited] |
const SetValueSpec* NdbOperation::m_extraSetValues [protected, inherited] |
const NdbInterpretedCode* NdbOperation::m_interpreted_code [protected, inherited] |
const NdbRecord* NdbOperation::m_key_record [protected, inherited] |
const char* NdbOperation::m_key_row [protected, inherited] |
Uint32 NdbOperation::m_keyinfo_length [protected, inherited] |
Uint16 NdbOperation::m_keyInfoGSN [protected, inherited] |
Uint8 NdbOperation::m_no_disk_flag [protected, inherited] |
Int8 NdbOperation::m_noErrorPropagation [protected, inherited] |
Uint32 NdbOperation::m_numExtraSetValues [protected, inherited] |
Uint32 NdbOperation::m_read_mask[(NDB_MAX_ATTRIBUTES_IN_TABLE+31)>>5] [protected, inherited] |
Uint16 NdbOperation::m_tcReqGSN [protected, inherited] |
const NdbIndexImpl* NdbIndexOperation::m_theIndex [private] |
Type NdbOperation::m_type [protected, inherited] |
Uint8 NdbOperation::m_use_any_value [protected, inherited] |
Uint32 NdbOperation::theAI_LenInCurrAI [protected, inherited] |
Uint32* NdbOperation::theATTRINFOptr [protected, inherited] |
NdbBlob* NdbOperation::theBlobList [protected, inherited] |
Uint8 NdbOperation::theCommitIndicator [protected, inherited] |
NdbApiSignal* NdbOperation::theCurrentATTRINFO [protected, inherited] |
Uint8 NdbOperation::theDirtyIndicator [protected, inherited] |
Uint32 NdbOperation::theDistributionKey [protected, inherited] |
Int8 NdbOperation::theDistrKeyIndicator_ [protected, inherited] |
NdbError NdbOperation::theError [protected, inherited] |
int NdbOperation::theErrorLine [protected, inherited] |
Uint32 NdbOperation::theFinalReadSize [protected, inherited] |
Uint32 NdbOperation::theFinalUpdateSize [protected, inherited] |
NdbApiSignal* NdbOperation::theFirstATTRINFO [protected, inherited] |
class NdbBranch* NdbOperation::theFirstBranch [protected, inherited] |
class NdbCall* NdbOperation::theFirstCall [protected, inherited] |
class NdbLabel* NdbOperation::theFirstLabel [protected, inherited] |
class NdbSubroutine* NdbOperation::theFirstSubroutine [protected, inherited] |
Uint32 NdbOperation::theInitialReadSize [protected, inherited] |
Uint32 NdbOperation::theInterpretedSize [protected, inherited] |
Uint8 NdbOperation::theInterpretIndicator [protected, inherited] |
Uint32* NdbOperation::theKEYINFOptr [protected, inherited] |
class NdbBranch* NdbOperation::theLastBranch [protected, inherited] |
class NdbCall* NdbOperation::theLastCall [protected, inherited] |
NdbApiSignal* NdbOperation::theLastKEYINFO [protected, inherited] |
class NdbLabel* NdbOperation::theLastLabel [protected, inherited] |
class NdbSubroutine* NdbOperation::theLastSubroutine [protected, inherited] |
LockMode NdbOperation::theLockMode [protected, inherited] |
Uint32 NdbOperation::theMagicNumber [protected, inherited] |
Ndb* NdbOperation::theNdb [protected, inherited] |
NdbTransaction* NdbOperation::theNdbCon [protected, inherited] |
NdbOperation* NdbOperation::theNext [protected, inherited] |
Uint32 NdbOperation::theNoOfLabels [protected, inherited] |
Uint32 NdbOperation::theNoOfSubroutines [protected, inherited] |
Uint8 NdbOperation::theNoOfTupKeyLeft [protected, inherited] |
OperationType NdbOperation::theOperationType [protected, inherited] |
NdbReceiver NdbOperation::theReceiver [protected, inherited] |
NdbApiSignal* NdbOperation::theRequest [inherited] |
NdbApiSignal* NdbOperation::theSCAN_TABREQ [inherited] |
Uint32 NdbOperation::theScanInfo [protected, inherited] |
Uint8 NdbOperation::theSimpleIndicator [protected, inherited] |
Uint8 NdbOperation::theStartIndicator [protected, inherited] |
OperationStatus NdbOperation::theStatus [protected, inherited] |
Uint32 NdbOperation::theSubroutineSize [protected, inherited] |
NdbApiSignal* NdbOperation::theTCREQ [inherited] |
Uint32 NdbOperation::theTotalCurrAI_Len [protected, inherited] |
Uint32 NdbOperation::theTotalNrOfKeyWordInSignal [protected, inherited] |
Uint32 NdbOperation::theTupKeyLen [protected, inherited] |
Uint32 NdbOperation::theTupleKeyDefined[NDB_MAX_NO_OF_ATTRIBUTES_IN_KEY][3] [protected, inherited] |
Based on MySQL Cluster 7.0.10.
This page is for information only and is not maintained by MySQL or Sun Microsystems - use at your own risk. For an upto date view of the API refer to the header files included with your MySQL Cluster distribution or check the MySQL Cluster API Developer Guide.