mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
wl2126 - ndb - fix last unhandled part of read_multi_range
reading sorted multi_range with several range-scans BitKeeper/deleted/.del-NdbResultSet.hpp~e0042f4c18088ff6: Delete: ndb/include/ndbapi/NdbResultSet.hpp BitKeeper/deleted/.del-NdbResultSet.cpp~84d192cf3f42600d: Delete: ndb/src/ndbapi/NdbResultSet.cpp ndb/include/ndbapi/NdbApi.hpp: Remove NdbResultSet ndb/include/ndbapi/NdbIndexScanOperation.hpp: Remove NdbResultSet ndb/include/ndbapi/NdbScanOperation.hpp: Remove NdbResultSet ndb/src/ndbapi/Makefile.am: Remove NdbResultSet ndb/src/ndbapi/NdbConnection.cpp: Remove NdbResultSet ndb/src/ndbapi/NdbIndexOperation.cpp: Remove NdbResultSet ndb/src/ndbapi/NdbScanOperation.cpp: Remove NdbResultSet ndb/test/include/HugoOperations.hpp: Remove NdbResultSet ndb/test/ndbapi/ScanFunctions.hpp: Remove NdbResultSet ndb/test/ndbapi/ScanInterpretTest.hpp: Remove NdbResultSet ndb/test/ndbapi/bank/Bank.cpp: Remove NdbResultSet ndb/test/ndbapi/bank/BankLoad.cpp: Remove NdbResultSet ndb/test/ndbapi/slow_select.cpp: Remove NdbResultSet ndb/test/ndbapi/testBlobs.cpp: Remove NdbResultSet ndb/test/ndbapi/testDataBuffers.cpp: Remove NdbResultSet ndb/test/ndbapi/testDeadlock.cpp: Remove NdbResultSet ndb/test/ndbapi/testIndex.cpp: Remove NdbResultSet ndb/test/ndbapi/testOIBasic.cpp: Remove NdbResultSet ndb/test/ndbapi/testReadPerf.cpp: Remove NdbResultSet ndb/test/ndbapi/testScan.cpp: Remove NdbResultSet ndb/test/ndbapi/testScanPerf.cpp: Remove NdbResultSet ndb/test/src/HugoOperations.cpp: Remove NdbResultSet ndb/test/src/HugoTransactions.cpp: Remove NdbResultSet ndb/test/src/UtilTransactions.cpp: Remove NdbResultSet ndb/tools/delete_all.cpp: Remove NdbResultSet ndb/tools/select_all.cpp: Remove NdbResultSet ndb/tools/select_count.cpp: Remove NdbResultSet sql/ha_ndbcluster.cc: 1) Fix a = 3 -> a= 3 2) Impl. last part of wl2126 ordered "multi ordered scan"
This commit is contained in:
@ -266,7 +266,6 @@ run_read(){
|
||||
NdbScanOperation * pSp;
|
||||
NdbIndexOperation * pUp;
|
||||
NdbIndexScanOperation * pIp;
|
||||
NdbResultSet * rs = (NdbResultSet*)~0;
|
||||
|
||||
Uint32 start_row = rand() % (rows - range);
|
||||
Uint32 stop_row = start_row + range;
|
||||
@ -319,27 +318,27 @@ run_read(){
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
pOp = pIp = pTrans->getNdbIndexScanOperation(g_ordered,g_table);
|
||||
rs = pIp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0);
|
||||
pOp = pSp = pIp = pTrans->getNdbIndexScanOperation(g_ordered,g_table);
|
||||
pIp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0);
|
||||
check = pIp->setBound(pk, NdbIndexScanOperation::BoundEQ, &start_row);
|
||||
break;
|
||||
case 5:
|
||||
pOp = pIp = pTrans->getNdbIndexScanOperation(g_ordered,g_table);
|
||||
rs = pIp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0);
|
||||
pOp = pSp = pIp = pTrans->getNdbIndexScanOperation(g_ordered,g_table);
|
||||
pIp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0);
|
||||
check = pIp->setBound(pk, NdbIndexScanOperation::BoundLE, &start_row);
|
||||
check = pIp->setBound(pk, NdbIndexScanOperation::BoundGT, &stop_row);
|
||||
start_row = stop_row;
|
||||
break;
|
||||
case 6:
|
||||
pOp = pIp = pTrans->getNdbIndexScanOperation(g_ordered,g_table);
|
||||
rs = pIp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0, true);
|
||||
pOp = pSp = pIp = pTrans->getNdbIndexScanOperation(g_ordered,g_table);
|
||||
pIp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0, true);
|
||||
check = pIp->setBound(pk, NdbIndexScanOperation::BoundLE, &start_row);
|
||||
check = pIp->setBound(pk, NdbIndexScanOperation::BoundGT, &stop_row);
|
||||
start_row = stop_row;
|
||||
break;
|
||||
case 7:
|
||||
pOp = pSp = pTrans->getNdbScanOperation(g_table);
|
||||
rs = pSp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0);
|
||||
pSp->readTuples(NdbScanOperation::LM_CommittedRead, 0, 0);
|
||||
NdbScanFilter filter(pOp) ;
|
||||
filter.begin(NdbScanFilter::AND);
|
||||
filter.ge(pk, start_row);
|
||||
@ -355,7 +354,6 @@ run_read(){
|
||||
ndbout << pTrans->getNdbError() << endl;
|
||||
}
|
||||
assert(check == 0);
|
||||
assert(rs);
|
||||
|
||||
for(int j = 0; j<g_tab->getNoOfColumns(); j++){
|
||||
res = pOp->getValue(j);
|
||||
@ -368,7 +366,7 @@ run_read(){
|
||||
}
|
||||
assert(check == 0);
|
||||
if(g_paramters[P_OPER].value >= 4){
|
||||
while((check = rs->nextResult(true)) == 0){
|
||||
while((check = pSp->nextResult(true)) == 0){
|
||||
cnt++;
|
||||
}
|
||||
|
||||
@ -377,13 +375,13 @@ run_read(){
|
||||
return -1;
|
||||
}
|
||||
assert(check == 1);
|
||||
rs->close();
|
||||
pSp->close();
|
||||
}
|
||||
}
|
||||
assert(g_paramters[P_OPER].value < 4 || (cnt == range));
|
||||
|
||||
|
||||
pTrans->close();
|
||||
|
||||
|
||||
stop = NdbTick_CurrentMillisecond();
|
||||
g_times[g_paramters[P_OPER].value] += (stop - start1);
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user