Commit 32544f17 authored by unknown's avatar unknown

Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb

into poseidon.ndb.mysql.com:/home/tomas/mysql-5.0-ndb

parents 07086656 56ba2a8d
......@@ -99,9 +99,11 @@
Each transaction (NdbTransaction object) consist of a list of
operations (Ndb*Operation objects).
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
Operations are of two different kinds:
-# standard operations, and
-# interpreted program operations.
#endif
<h3>Single row operations</h3>
After the operation is created using NdbTransaction::getNdbOperation
......@@ -205,8 +207,7 @@
The result of reading data from an NdbRecAttr object before
calling NdbTransaction::execute is undefined.
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
<h3>Interpreted Program Operations</h3>
The following types of interpreted program operations exist:
-# NdbOperation::interpretedUpdateTuple :
......@@ -267,7 +268,7 @@
There might be zero NdbOperation::getValue calls.
-# The fifth step is possible subroutine definitions using
NdbOperation::def_subroutine and NdbOperation::ret_sub.
#endif
@subsection secScan Scanning
The most common use of interpreted programs is for scanning
......@@ -361,7 +362,7 @@
but is of the following form:
-# Start transaction
-# Get NdbScanOperation for the table to be scanned
-# NdbScanOperation::readTuplesExclusive returns a handle to a
-# NdbScanOperation::readTuples(NdbOperation::LM_Exclusive) returns a handle to a
NdbResultSet.
-# Search conditions are defined by NdbScanFilter
-# Call NdbTransaction::execute(NoCommit) to start the scan.
......@@ -384,7 +385,7 @@
See the scan example program in @ref ndbapi_scan.cppn for example
usage of the new scan api.
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
<h3>Interpreted Programs</h3>
Interpretation programs are executed in a
register-based virtual machine.
......@@ -455,6 +456,7 @@
The parameter used by NdbOperation::def_subroutine
should match the automatic numbering to make it easier to
debug the interpreted program.
#endif
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
@section secAsync Asynchronous Transactions
......@@ -587,7 +589,7 @@
theTransaction = theNdb->startTransaction();
theOperation = theTransaction->getNdbOperation("TEST_TABLE");
if (theOperation == NULL) goto error;
theOperation->readTuple();
theOperation->readTuple(NdbOperation::LM_Read);
theOperation->setValue("ATTR_1", at1);
theOperation->setValue("ATTR_2", at1); //Here an error occurs
theOperation->setValue("ATTR_3", at1);
......
......@@ -168,7 +168,6 @@ public:
* @depricated
*/
virtual int dirtyRead();
#endif
/**
* Define the NdbOperation to be a standard operation of type committedRead.
......@@ -201,7 +200,9 @@ public:
* @return 0 if successful otherwise -1.
*/
virtual int dirtyWrite();
#endif
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
/** @} *********************************************************************/
/**
* @name Define Interpreted Program Operation Type
......@@ -221,6 +222,7 @@ public:
* @return 0 if successful otherwise -1.
*/
virtual int interpretedDeleteTuple();
#endif
/** @} *********************************************************************/
......@@ -377,6 +379,7 @@ public:
virtual NdbBlob* getBlobHandle(const char* anAttrName);
virtual NdbBlob* getBlobHandle(Uint32 anAttrId);
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
/** @} *********************************************************************/
/**
* @name Specify Interpreted Program Instructions
......@@ -675,6 +678,7 @@ public:
* @return -1 if unsuccessful.
*/
int ret_sub();
#endif
/** @} *********************************************************************/
......@@ -723,6 +727,7 @@ public:
LockMode getLockMode() const { return theLockMode; }
void setAbortOption(Int8 ao) { m_abortOption = ao; }
#ifndef DOXYGEN_SHOULD_SKIP_INTERNAL
/**
* Set/get distribution/partition key
*/
......@@ -730,6 +735,7 @@ public:
void setPartitionHash(Uint32 key);
void setPartitionHash(const Uint64 *, Uint32 len);
Uint32 getPartitionId() const;
#endif
protected:
int handle_distribution_key(const Uint64 *, Uint32 len);
protected:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment