From: Jonas Oreland Date: January 25 2012 2:30pm Subject: bzr push into mysql-5.1-telco-7.0 branch (jonas.oreland:4822 to 4823) List-Archive: http://lists.mysql.com/commits/142554 Message-Id: <20120125143001.1443055C2B5@perch.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit 4823 Jonas Oreland 2012-01-25 ndb - fix regression introduced in fix for bug-13602508 modified: storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp 4822 Jonas Oreland 2012-01-25 ndb - add possibility to have thread_local_pool seize more than 1 object at a time from thr_safe_pool (to reduce mutex contention) modified: storage/ndb/src/kernel/vm/mt.cpp === modified file 'storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp' --- a/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp 2011-12-13 10:46:14 +0000 +++ b/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp 2012-01-25 14:29:38 +0000 @@ -574,7 +574,8 @@ public: Uint8 m_last_row; Uint8 m_reserved; Uint8 statScan; - Uint8 dummy[3]; // align? + Uint8 m_stop_batch; + Uint8 dummy[2]; // align? }; // Size 272 bytes typedef Ptr ScanRecordPtr; @@ -3300,7 +3301,8 @@ Dblqh::ScanRecord::check_scan_batch_comp Uint32 max_rows = m_max_batch_size_rows; Uint32 max_bytes = m_max_batch_size_bytes; - return (max_rows > 0 && (m_curr_batch_size_rows >= max_rows)) || + return m_stop_batch || + (max_rows > 0 && (m_curr_batch_size_rows >= max_rows)) || (max_bytes > 0 && (m_curr_batch_size_bytes >= max_bytes)); } === modified file 'storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp' --- a/storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp 2012-01-18 09:29:20 +0000 +++ b/storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp 2012-01-25 14:29:38 +0000 @@ -11294,7 +11294,7 @@ void Dblqh::scanTupkeyConfLab(Signal* si * * TODO: We should have counters for this... */ - tdata5 = 1; + scanptr.p->m_stop_batch = 1; } } @@ -11604,6 +11604,7 @@ Uint32 Dblqh::initScanrec(const ScanFrag scanptr.p->scanTcrec = tcConnectptr.i; scanptr.p->scanSchemaVersion = scanFragReq->schemaVersion; + scanptr.p->m_stop_batch = 0; scanptr.p->m_curr_batch_size_rows = 0; scanptr.p->m_curr_batch_size_bytes= 0; scanptr.p->m_max_batch_size_rows = max_rows; @@ -12091,6 +12092,8 @@ void Dblqh::sendScanFragConf(Signal* sig scanptr.p->m_curr_batch_size_rows = 0; scanptr.p->m_curr_batch_size_bytes= 0; } + + scanptr.p->m_stop_batch = 0; }//Dblqh::sendScanFragConf() /* ######################################################################### */ No bundle (reason: useless for push emails).