Commit e5934af1 authored by unknown's avatar unknown
Browse files

Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1

into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1

parents 96f9c9d9 2eb2383e
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -358,6 +358,10 @@ sub main () {

  if ( $opt_start_and_exit )
  {
    if ( ndbcluster_start() )
    {
      mtr_error("Can't start ndbcluster");
    }
    if ( mysqld_start('master',0,[],[]) )
    {
      mtr_report("Servers started, exiting");
@@ -1054,7 +1058,7 @@ sub ndbcluster_start () {
		"--data-dir=$glob_mysql_test_dir/var"],
	       "", "/dev/null", "", "") )
  {
    mtr_error("Error ndbcluster_install");
    mtr_error("Error ndbcluster_start");
    return 1;
  }

+1 −0
Original line number Diff line number Diff line
@@ -376,6 +376,7 @@ extern "C" {
  int ndb_mgm_set_connectstring(NdbMgmHandle handle,
				const char *connect_string);

  int ndb_mgm_set_configuration_nodeid(NdbMgmHandle handle, int nodeid);
  int ndb_mgm_get_configuration_nodeid(NdbMgmHandle handle);
  int ndb_mgm_get_connected_port(NdbMgmHandle handle);
  const char *ndb_mgm_get_connected_host(NdbMgmHandle handle);
+2 −0
Original line number Diff line number Diff line
@@ -55,6 +55,8 @@ public:
   */
  Uint32 allocNodeId(int no_retries, int retry_delay_in_seconds);

  int setNodeId(Uint32 nodeid);

  /**
   * Get config using socket
   */
+6 −0
Original line number Diff line number Diff line
@@ -316,6 +316,12 @@ ConfigRetriever::verifyConfig(const struct ndb_mgm_configuration * conf, Uint32
  return true;
}

int
ConfigRetriever::setNodeId(Uint32 nodeid)
{
  return ndb_mgm_set_configuration_nodeid(m_handle, nodeid);
}

Uint32
ConfigRetriever::allocNodeId(int no_retries, int retry_delay_in_seconds)
{
+9 −0
Original line number Diff line number Diff line
@@ -141,6 +141,8 @@ Configuration::init(int argc, char** argv)
  else
    _programName = strdup("");
  
  globalData.ownId= 0;

  return true;
}

@@ -215,6 +217,13 @@ Configuration::fetch_configuration(){

  ConfigRetriever &cr= *m_config_retriever;
  
  /**
   * if we have a nodeid set (e.g in a restart situation)
   * reuse it
   */
  if (globalData.ownId)
    cr.setNodeId(globalData.ownId);

  globalData.ownId = cr.allocNodeId(2 /*retry*/,3 /*delay*/);
  
  if(globalData.ownId == 0){
Loading