mariadb/ndb/test/ndbapi
unknown 5fae29039d BUG#27370: Potential inconsistent blob reads for ReadCommitted reads.
The old blob implementation had code that attempted to upgrade the lock mode for
LM_CommittedRead operations, but it did not work properly as it did not recompute
the operation flags.

As a consequence, reading a blob with LM_CommittedRead could return inconsistent
data, with different part of the read data being from different commits done by
other transactions.

The fix is to correctly recompute all necessary flags when upgrading lock mode.


ndb/include/kernel/signaldata/ScanTab.hpp:
  Remove assumption in setXXX() methods that old value is zero, needed to allow blob
  code to upgrade lock mode.
  Fix spelling and commments.
ndb/include/ndbapi/NdbOperation.hpp:
  Add method to change lock mode, to allow blob code to upgrade lock mode.
ndb/include/ndbapi/NdbScanOperation.hpp:
  Add method to change lock mode, to allow blob code to upgrade lock mode.
ndb/src/ndbapi/NdbBlob.cpp:
  Fix upgrading lock mode (old code had no effect).
ndb/src/ndbapi/NdbOperationDefine.cpp:
  Add method to change lock mode, to allow blob code to upgrade lock mode.
ndb/src/ndbapi/NdbScanOperation.cpp:
  Add method to change lock mode, to allow blob code to upgrade lock mode.
ndb/test/ndbapi/testBlobs.cpp:
  Add testcase.
ndb/test/run-test/daily-basic-tests.txt:
  Enable bug tests for auto test.
2007-04-24 08:15:31 +02:00
..
bank my_strtoll10-x86.s: 2006-12-31 01:02:27 +01:00
bench Many files: 2006-12-23 20:17:15 +01:00
old_dirs Many files: 2006-12-23 20:17:15 +01:00
acid.cpp Many files: 2006-12-23 20:17:15 +01:00
acid2.cpp Many files: 2006-12-23 20:17:15 +01:00
adoInsertRecs.cpp Many files: 2006-12-23 20:17:15 +01:00
asyncGenerator.cpp Many files: 2006-12-23 20:17:15 +01:00
benchronja.cpp Many files: 2006-12-23 20:17:15 +01:00
bulk_copy.cpp Many files: 2006-12-23 20:17:15 +01:00
cdrserver.cpp Many files: 2006-12-23 20:17:15 +01:00
celloDb.cpp Many files: 2006-12-23 20:17:15 +01:00
create_all_tabs.cpp Many files: 2006-12-23 20:17:15 +01:00
create_tab.cpp Many files: 2006-12-23 20:17:15 +01:00
drop_all_tabs.cpp Many files: 2006-12-23 20:17:15 +01:00
flex_bench_mysql.cpp Many files: 2006-12-23 20:17:15 +01:00
flexAsynch.cpp Many files: 2006-12-23 20:17:15 +01:00
flexBench.cpp Many files: 2006-12-23 20:17:15 +01:00
flexHammer.cpp Many files: 2006-12-23 20:17:15 +01:00
flexScan.cpp Many files: 2006-12-23 20:17:15 +01:00
flexTimedAsynch.cpp Many files: 2006-12-23 20:17:15 +01:00
flexTT.cpp Many files: 2006-12-23 20:17:15 +01:00
index.cpp Many files: 2006-12-23 20:17:15 +01:00
index2.cpp Many files: 2006-12-23 20:17:15 +01:00
initronja.cpp Many files: 2006-12-23 20:17:15 +01:00
InsertRecs.cpp Many files: 2006-12-23 20:17:15 +01:00
interpreterInTup.cpp Many files: 2006-12-23 20:17:15 +01:00
mainAsyncGenerator.cpp Many files: 2006-12-23 20:17:15 +01:00
Makefile.am correct NAND/NOR scan operations, and add a test case for it. 2007-03-01 15:13:33 +08:00
msa.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_async1.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_async2.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_populate.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_transaction.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_transaction2.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_transaction3.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_transaction4.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_transaction5.cpp Many files: 2006-12-23 20:17:15 +01:00
ndb_user_transaction6.cpp Many files: 2006-12-23 20:17:15 +01:00
restarter.cpp Many files: 2006-12-23 20:17:15 +01:00
restarter2.cpp Many files: 2006-12-23 20:17:15 +01:00
restarts.cpp Many files: 2006-12-23 20:17:15 +01:00
ScanFilter.hpp Many files: 2006-12-23 20:17:15 +01:00
ScanFunctions.hpp Many files: 2006-12-23 20:17:15 +01:00
ScanInterpretTest.hpp Many files: 2006-12-23 20:17:15 +01:00
size.cpp Many files: 2006-12-23 20:17:15 +01:00
slow_select.cpp ndb - Add includes to test prg as memcpy is introduced in NdbRecAttr 2005-01-23 20:13:42 +01:00
test_event.cpp Many files: 2006-12-23 20:17:15 +01:00
test_event_merge.cpp Many files: 2006-12-23 20:17:15 +01:00
test_event_multi_table.cpp Many files: 2006-12-23 20:17:15 +01:00
testBackup.cpp Many files: 2006-12-23 20:17:15 +01:00
testBasic.cpp Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0 2006-12-27 19:36:41 +01:00
testBasicAsynch.cpp Many files: 2006-12-23 20:17:15 +01:00
testBitfield.cpp fix compile error in testBitfield 2007-02-20 00:55:33 +01:00
testBlobs.cpp BUG#27370: Potential inconsistent blob reads for ReadCommitted reads. 2007-04-24 08:15:31 +02:00
testDataBuffers.cpp Many files: 2006-12-23 20:17:15 +01:00
testDeadlock.cpp Many files: 2006-12-23 20:17:15 +01:00
testDict.cpp Many files: 2006-12-23 20:17:15 +01:00
testGrepVerify.cpp Many files: 2006-12-23 20:17:15 +01:00
testIndex.cpp Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0 2006-12-27 19:36:41 +01:00
testInterpreter.cpp Many files: 2006-12-23 20:17:15 +01:00
testLcp.cpp ndb - more removal of old constructor usage in test prgs 2005-01-01 09:28:24 +01:00
testMgm.cpp Many files: 2006-12-23 20:17:15 +01:00
testNdbApi.cpp Many files: 2006-12-23 20:17:15 +01:00
testNodeRestart.cpp Merge perch.ndb.mysql.com:/home/jonas/src/50-work 2007-03-22 11:25:29 +01:00
testOIBasic.cpp Many files: 2006-12-23 20:17:15 +01:00
testOperations.cpp Many files: 2006-12-23 20:17:15 +01:00
testOrderedIndex.cpp Many files: 2006-12-23 20:17:15 +01:00
testPartitioning.cpp Many files: 2006-12-23 20:17:15 +01:00
testReadPerf.cpp Many files: 2006-12-23 20:17:15 +01:00
testRestartGci.cpp Many files: 2006-12-23 20:17:15 +01:00
testScan.cpp Many files: 2006-12-23 20:17:15 +01:00
testScanFilter.cpp correct NAND/NOR scan operations, and add a test case for it. 2007-03-01 15:13:33 +08:00
testScanInterpreter.cpp Many files: 2006-12-23 20:17:15 +01:00
testScanPerf.cpp Many files: 2006-12-23 20:17:15 +01:00
testSRBank.cpp Many files: 2006-12-23 20:17:15 +01:00
testSystemRestart.cpp Many files: 2006-12-23 20:17:15 +01:00
testTimeout.cpp Many files: 2006-12-23 20:17:15 +01:00
testTransactions.cpp Many files: 2006-12-23 20:17:15 +01:00
TraceNdbApi.cpp Many files: 2006-12-23 20:17:15 +01:00
userInterface.cpp Many files: 2006-12-23 20:17:15 +01:00
VerifyNdbApi.cpp Many files: 2006-12-23 20:17:15 +01:00