1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

wl1292 - workaround for mgmsrv node id problems

ndb/src/cw/cpcd/Makefile.am:
  Put cpcd in libexec
ndb/src/cw/cpcd/Process.cpp:
  Fixed reverse check with ulimit
ndb/test/run-test/main.cpp:
  Restart mgm server aswell on test failure.
  Removes problems with nodeid
This commit is contained in:
unknown
2004-08-04 20:48:48 +02:00
parent 42009c2f52
commit 8b45aa646e
3 changed files with 51 additions and 55 deletions

View File

@ -1,5 +1,5 @@
ndbtools_PROGRAMS = ndb_cpcd
ndbbin_PROGRAMS = ndb_cpcd
ndb_cpcd_SOURCES = main.cpp CPCD.cpp Process.cpp APIService.cpp Monitor.cpp common.cpp

View File

@ -209,11 +209,12 @@ int
set_ulimit(const BaseString & pair){
#ifdef HAVE_GETRLIMIT
errno = 0;
do {
Vector<BaseString> list;
pair.split(list, ":");
if(list.size() != 2){
break;
logger.error("Unable to process ulimit: split >%s< list.size()=%d",
pair.c_str(), list.size());
return -1;
}
int res;
@ -239,19 +240,14 @@ set_ulimit(const BaseString & pair){
_RLIMIT_FIX(RLIMIT_CPU);
} else {
errno = EINVAL;
break;
}
if(!res)
break;
return 0;
} while(false);
logger.error("Unable to process ulimit: %s(%s)",
pair.c_str(), strerror(errno));
if(res){
logger.error("Unable to process ulimit: %s res=%d error=%d(%s)",
pair.c_str(), res, errno, strerror(errno));
return -1;
#else
return 0; // Maybe it's ok anyway...
}
#endif
return 0;
}
void

View File

@ -106,13 +106,6 @@ main(int argc, const char ** argv){
if(!setup_hosts(g_config))
goto end;
if(!start_processes(g_config, atrt_process::NDB_MGM))
goto end;
if(!connect_ndb_mgm(g_config)){
goto end;
}
/**
* Main loop
*/
@ -122,12 +115,19 @@ main(int argc, const char ** argv){
*/
if(restart){
g_logger.info("(Re)starting ndb processes");
if(!stop_processes(g_config, atrt_process::NDB_MGM))
goto end;
if(!stop_processes(g_config, atrt_process::NDB_DB))
goto end;
if(!wait_ndb(g_config, NDB_MGM_NODE_STATUS_NO_CONTACT))
if(!start_processes(g_config, atrt_process::NDB_MGM))
goto end;
if(!connect_ndb_mgm(g_config)){
goto end;
}
if(!start_processes(g_config, atrt_process::NDB_DB))
goto end;