Add support/test for using my.cnf [cluster_config]
This commit is contained in:
jonas@perch.ndb.mysql.com 2005-09-30 12:19:15 +02:00
parent 1e6f19074e
commit 6cff2db932
5 changed files with 43 additions and 6 deletions

View File

@ -3,4 +3,5 @@ ndbd,1,localhost ndbd,2,localhost ndb_mgmd,3,localhost mysqld,4, mysqld,5, mysql
1 localhost 41943040 12582912 1 localhost 41943040 12582912
2 localhost 41943040 12582912 2 localhost 41943040 12582912
1 2 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,,

View File

@ -0,0 +1,15 @@
[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

View File

@ -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 --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 # 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

View File

@ -843,7 +843,7 @@ InitConfigFileParser::parse_mycnf()
} }
Context ctx(m_info); Context ctx(m_info, m_errstream);
const char *groups[]= { "cluster_config", 0 }; const char *groups[]= { "cluster_config", 0 };
if (load_defaults(options, groups)) if (load_defaults(options, groups))
goto end; goto end;

View File

@ -41,6 +41,7 @@ static const char * g_host = 0;
static const char * g_field_delimiter=","; static const char * g_field_delimiter=",";
static const char * g_row_delimiter=" "; static const char * g_row_delimiter=" ";
static const char * g_config_file = 0; static const char * g_config_file = 0;
static int g_mycnf = 0;
int g_print_full_config, opt_ndb_shm; int g_print_full_config, opt_ndb_shm;
my_bool opt_core; my_bool opt_core;
@ -94,6 +95,9 @@ static struct my_option my_long_options[] =
{ "config-file", 256, "Path to config.ini", { "config-file", 256, "Path to config.ini",
(gptr*) &g_config_file, (gptr*) &g_config_file, (gptr*) &g_config_file, (gptr*) &g_config_file,
0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, 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} { 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; ndb_mgm_configuration * conf = 0;
if (g_config_file) if (g_config_file || g_mycnf)
conf = load_configuration(); conf = load_configuration();
else else
conf = fetch_configuration(); conf = fetch_configuration();
if (conf == 0)
{
return -1;
}
Vector<Apply*> select_list; Vector<Apply*> select_list;
Vector<Match*> where_clause; Vector<Match*> where_clause;
@ -437,10 +446,20 @@ ndb_mgm_configuration*
load_configuration() load_configuration()
{ {
InitConfigFileParser parser(stderr); InitConfigFileParser parser(stderr);
if (g_verbose) if (g_config_file)
fprintf(stderr, "Using config.ini : %s", 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;
}
Config* conf = parser.parseConfig(g_config_file); if (g_verbose)
fprintf(stderr, "Using my.cnf");
Config* conf = parser.parse_mycnf();
if (conf) if (conf)
return conf->m_configValues; return conf->m_configValues;