Commit dbc72145 authored by unknown's avatar unknown
Browse files

ndb

  Add support/test for using my.cnf [cluster_config]


mysql-test/r/ndb_config.result:
  Add support for ndb_config to read my.cnf
mysql-test/t/ndb_config.test:
  Add support for ndb_config to read my.cnf
ndb/src/mgmsrv/InitConfigFileParser.cpp:
  merge
ndb/tools/ndb_config.cpp:
  Add support for ndb_config to read my.cnf
mysql-test/std_data/ndb_config_mycnf1.cnf:
  New BitKeeper file ``mysql-test/std_data/ndb_config_mycnf1.cnf''
parent 3827a110
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -3,4 +3,5 @@ ndbd,1,localhost ndbd,2,localhost ndb_mgmd,3,localhost mysqld,4, mysqld,5, mysql
1 localhost 41943040 12582912
2 localhost 41943040 12582912
1 2
ndbd,1,localhost ndbd,2,localhost ndb_mgmd,3, mysqld,4, mysqld,5, mysqld,6, mysqld,7,
ndbd,1,localhost ndbd,2,localhost ndb_mgmd,3,localhost mysqld,4, mysqld,5, mysqld,6, mysqld,7,
ndbd,1,localhost,52428800,26214400 ndbd,2,localhost,52428800,36700160 ndbd,3,localhost,52428800,52428800 ndbd,4,localhost,52428800,52428800 ndb_mgmd,5,localhost,, mysqld,6,localhost,,
+15 −0
Original line number Diff line number Diff line
[cluster_config]
NoOfReplicas=1
DataMemory=50M

[cluster_config.jonas]
IndexMemory=50M
ndbd = localhost,localhost,localhost,localhost
ndb_mgmd = localhost
mysqld = localhost

[cluster_config.ndbd.1]
DataMemory=25M

[cluster_config.ndbd.2.jonas]
DataMemory=35M
+2 −0
Original line number Diff line number Diff line
@@ -9,3 +9,5 @@
--exec $NDB_TOOLS_DIR/ndb_config --no-defaults --query=type,nodeid,host --config-file=$NDB_BACKUP_DIR/config.ini 2> /dev/null

# End of 4.1 tests

--exec $NDB_TOOLS_DIR/ndb_config --defaults-group-suffix=.jonas --defaults-file=$MYSQL_TEST_DIR/std_data/ndb_config_mycnf1.cnf --query=type,nodeid,host,IndexMemory,DataMemory --mycnf 2> /dev/null
+1 −1
Original line number Diff line number Diff line
@@ -843,7 +843,7 @@ InitConfigFileParser::parse_mycnf()
  }

  
  Context ctx(m_info); 
  Context ctx(m_info, m_errstream); 
  const char *groups[]= { "cluster_config", 0 };
  if (load_defaults(options, groups))
    goto end;
+22 −3
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ static const char * g_host = 0;
static const char * g_field_delimiter=",";
static const char * g_row_delimiter=" ";
static const char * g_config_file = 0;
static int g_mycnf = 0;

int g_print_full_config, opt_ndb_shm;
my_bool opt_core;
@@ -94,6 +95,9 @@ static struct my_option my_long_options[] =
  { "config-file", 256, "Path to config.ini",
    (gptr*) &g_config_file, (gptr*) &g_config_file,
    0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
  { "mycnf", 256, "Read config from my.cnf",
    (gptr*) &g_mycnf, (gptr*) &g_mycnf,
    0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
  { 0, 0, 0, 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0}
};

@@ -163,11 +167,16 @@ main(int argc, char** argv){

  ndb_mgm_configuration * conf = 0;

  if (g_config_file)
  if (g_config_file || g_mycnf)
    conf = load_configuration();
  else
    conf = fetch_configuration();

  if (conf == 0)
  {
    return -1;
  }

  Vector<Apply*> select_list;
  Vector<Match*> where_clause;

@@ -437,12 +446,22 @@ ndb_mgm_configuration*
load_configuration()
{  
  InitConfigFileParser parser(stderr);
  if (g_config_file)
  {
    if (g_verbose)
      fprintf(stderr, "Using config.ini : %s", g_config_file);
    
    Config* conf = parser.parseConfig(g_config_file);
    if (conf)
      return conf->m_configValues;
  }
  
  if (g_verbose)
    fprintf(stderr, "Using my.cnf");
  
  Config* conf = parser.parse_mycnf();
  if (conf)
    return conf->m_configValues;

  return 0;
}