#At file:///export/space/pekka/ndb/version/my51-wl4391/
2715 Pekka Nousiainen 2008-08-11 [merge]
merge
modified:
storage/ndb/include/ndbapi/NdbScanOperation.hpp
storage/ndb/src/ndbapi/NdbScanOperation.cpp
=== modified file 'storage/ndb/include/ndbapi/NdbScanOperation.hpp'
--- a/storage/ndb/include/ndbapi/NdbScanOperation.hpp 2008-06-17 20:28:45 +0000
+++ b/storage/ndb/include/ndbapi/NdbScanOperation.hpp 2008-08-11 12:51:32 +0000
@@ -544,6 +544,9 @@ protected:
/* This flag indicates whether a scan operation is using the old API */
bool m_scanUsingOldApi;
+ /* Whether readTuples has been called - only valid for old Api scans */
+ bool m_readTuplesCalled;
+
/* Scan definition information saved by RecAttr scan API */
LockMode m_savedLockModeOldApi;
Uint32 m_savedScanFlagsOldApi;
=== modified file 'storage/ndb/src/ndbapi/NdbScanOperation.cpp'
--- a/storage/ndb/src/ndbapi/NdbScanOperation.cpp 2008-08-06 15:46:41 +0000
+++ b/storage/ndb/src/ndbapi/NdbScanOperation.cpp 2008-08-11 12:51:32 +0000
@@ -54,6 +54,7 @@ NdbScanOperation::NdbScanOperation(Ndb*
m_executed = false;
m_scan_buffer= NULL;
m_scanUsingOldApi= true;
+ m_readTuplesCalled= false;
m_interpretedCodeOldApi= NULL;
}
@@ -120,6 +121,7 @@ NdbScanOperation::init(const NdbTableImp
m_read_range_no = 0;
m_executed = false;
m_scanUsingOldApi= true;
+ m_readTuplesCalled= false;
m_interpretedCodeOldApi= NULL;
m_api_receivers_count = 0;
@@ -937,15 +939,16 @@ NdbScanOperation::readTuples(NdbScanOper
Uint32 parallel,
Uint32 batch)
{
- // It is only possible to call readTuples if the scan transaction
- // doesn't already contain a scan operation
- if (theNdbCon->theScanningOp != NULL)
+ // It is only possible to call readTuples if readTuples hasn't
+ // already been called
+ if (m_readTuplesCalled)
{
setErrorCode(4605);
return -1;
}
/* Save parameters for later */
+ m_readTuplesCalled= true;
m_savedLockModeOldApi= lm;
m_savedScanFlagsOldApi= scan_flags;
m_savedParallelOldApi= parallel;
| Thread |
|---|
| • bzr commit into mysql-5.1 branch (pekka:2715) WL#4391 | Pekka Nousiainen | 11 Aug |