#At file:///home/jonas/src/telco-7.0/ based on revid:jonas@stripped
3840 Jonas Oreland 2010-10-07
ndb - bug#57307 - only look at m_scan_frag_conf_status when aborting scans in DBTC
modified:
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp
=== modified file 'storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp'
--- a/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp 2010-10-07 05:39:39 +0000
+++ b/storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp 2010-10-07 11:24:22 +0000
@@ -11222,7 +11222,8 @@ Dbtc::close_scan_req(Signal* signal, Sca
ndbrequire(curr.p->scanFragState == ScanFragRec::DELIVERED);
delivered.remove(curr);
- if(curr.p->m_ops > 0 && curr.p->m_scan_frag_conf_status == 0){
+ if (curr.p->m_scan_frag_conf_status == 0)
+ {
jam();
running.add(curr);
curr.p->scanFragState = ScanFragRec::LQH_ACTIVE;
@@ -11231,7 +11232,9 @@ Dbtc::close_scan_req(Signal* signal, Sca
sendSignal(curr.p->lqhBlockref, GSN_SCAN_NEXTREQ, signal,
ScanFragNextReq::SignalLength, JBB);
- } else {
+ }
+ else
+ {
jam();
c_scan_frag_pool.release(curr);
curr.p->scanFragState = ScanFragRec::COMPLETED;
@@ -11251,7 +11254,8 @@ Dbtc::close_scan_req(Signal* signal, Sca
queued.remove(curr);
scanP->m_queued_count--;
- if(curr.p->m_ops > 0){
+ if (curr.p->m_scan_frag_conf_status == 0)
+ {
jam();
running.add(curr);
curr.p->scanFragState = ScanFragRec::LQH_ACTIVE;
@@ -11259,7 +11263,9 @@ Dbtc::close_scan_req(Signal* signal, Sca
nextReq->senderData = curr.i;
sendSignal(curr.p->lqhBlockref, GSN_SCAN_NEXTREQ, signal,
ScanFragNextReq::SignalLength, JBB);
- } else {
+ }
+ else
+ {
jam();
c_scan_frag_pool.release(curr);
curr.p->scanFragState = ScanFragRec::COMPLETED;
Attachment: [text/bzr-bundle] bzr/jonas@mysql.com-20101007112422-bf6wxo3x16k76szh.bundle
| Thread |
|---|
| • bzr commit into mysql-5.1-telco-7.0 branch (jonas:3840) Bug#57307 | Jonas Oreland | 7 Oct |