Commit 197d5918 authored by unknown's avatar unknown
Browse files

Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1

into  mysql.com:/home/marty/MySQL/mysql-5.1-extra


sql/ha_ndbcluster.cc:
  Auto merged
parents 2773b73c bc5c62e5
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@
#im_life_cycle             : Bug#20368 2006-06-10 alik    im_life_cycle test fails
ndb_autodiscover         : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover2        : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover3        : BUD#20843 2006-07-04 tomas ndb_autodiscover3 fails randomly
#ndb_binlog_discover      : BUG#19395 2006-04-28 tomas/knielsen mysqld does not always detect cluster shutdown
#ndb_cache2               : BUG#18597 2006-03-28 brian simultaneous drop table and ndb statistics update triggers node failure
#ndb_cache_multi2         : BUG#18597 2006-04-10 kent  simultaneous drop table and ndb statistics update triggers node failure
+1 −0
Original line number Diff line number Diff line
@@ -238,6 +238,7 @@ class Dbtup;
#define ZSCAN_MARKERS 18
#define ZOPERATION_EVENT_REP 19
#define ZPREP_DROP_TABLE 20
#define ZENABLE_EXPAND_CHECK 21

/* ------------------------------------------------------------------------- */
/*        NODE STATE DURING SYSTEM RESTART, VARIABLES CNODES_SR_STATE        */
+42 −14
Original line number Diff line number Diff line
@@ -416,6 +416,35 @@ void Dblqh::execCONTINUEB(Signal* signal)
    checkDropTab(signal);
    return;
    break;
  case ZENABLE_EXPAND_CHECK:
  {
    jam();
    fragptr.i = signal->theData[1];
    if (fragptr.i != RNIL)
    {
      jam();
      c_redo_complete_fragments.getPtr(fragptr);
      signal->theData[0] = fragptr.p->tabRef;
      signal->theData[1] = fragptr.p->fragId;
      sendSignal(DBACC_REF, GSN_EXPANDCHECK2, signal, 2, JBB);
      c_redo_complete_fragments.next(fragptr);
      signal->theData[0] = ZENABLE_EXPAND_CHECK;
      signal->theData[1] = fragptr.i;
      sendSignal(DBLQH_REF, GSN_CONTINUEB, signal, 2, JBB);	
      return;
    }
    else
    {
      jam();
      c_redo_complete_fragments.remove();
      StartRecConf * conf = (StartRecConf*)signal->getDataPtrSend();
      conf->startingNodeId = getOwnNodeId();
      sendSignal(cmasterDihBlockref, GSN_START_RECCONF, signal, 
		 StartRecConf::SignalLength, JBB);
      return;
    }
  }
  default:
    ndbrequire(false);
    break;
@@ -15659,23 +15688,22 @@ void Dblqh::srFourthComp(Signal* signal)
             (cstartType == NodeState::ST_SYSTEM_RESTART)) {
    jam();
    
    if(cstartType == NodeState::ST_SYSTEM_RESTART)
    {
      jam();
      if (c_redo_complete_fragments.first(fragptr))
      {
	jam();
        signal->theData[0] = ZENABLE_EXPAND_CHECK;
        signal->theData[1] = fragptr.i;
        sendSignal(DBLQH_REF, GSN_CONTINUEB, signal, 2, JBB);
	return;
      }
    }
    StartRecConf * conf = (StartRecConf*)signal->getDataPtrSend();
    conf->startingNodeId = getOwnNodeId();
    sendSignal(cmasterDihBlockref, GSN_START_RECCONF, signal, 
		 StartRecConf::SignalLength, JBB);
    if(cstartType == NodeState::ST_SYSTEM_RESTART){
      c_redo_complete_fragments.first(fragptr);
      while(fragptr.i != RNIL){
	signal->theData[0] = fragptr.p->tabRef;
	signal->theData[1] = fragptr.p->fragId;
	sendSignal(DBACC_REF, GSN_EXPANDCHECK2, signal, 2, JBB);
	c_redo_complete_fragments.next(fragptr);
      }
      c_redo_complete_fragments.remove();
    }
  } else {
    ndbrequire(false);
  }//if
+1 −0
Original line number Diff line number Diff line
@@ -294,6 +294,7 @@ int runRestarts(NDBT_Context* ctx, NDBT_Step* step){
    }    
    i++;
  }
  ctx->stopTest();
  return result;
}