1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-10-31 18:30:33 +03:00

MCOL-770 - add code to start columnstore on remote nodes for non-distrubuted startsups

This commit is contained in:
david hill
2017-07-03 11:30:34 -05:00
parent d98f8b95ab
commit af6f02fddb

View File

@@ -502,8 +502,6 @@ static void startMgrProcessThread()
log.writeLog(__LINE__, "startMgrProcessThread launched", LOG_TYPE_DEBUG); log.writeLog(__LINE__, "startMgrProcessThread launched", LOG_TYPE_DEBUG);
// processManager.setSystemState(oam::MAN_INIT);
//get calpont software version and release //get calpont software version and release
SystemSoftware systemsoftware; SystemSoftware systemsoftware;
string softwareVersion; string softwareVersion;
@@ -564,8 +562,31 @@ static void startMgrProcessThread()
log.writeLog(__LINE__, "addModule - ERROR: get DistributedInstall", LOG_TYPE_ERROR); log.writeLog(__LINE__, "addModule - ERROR: get DistributedInstall", LOG_TYPE_ERROR);
} }
//send out moduleName to remote nodes on non-distrubuted install //if non-distrubuted install, send out a start service just to make sure Columnstore is runing on remote nodes
// if ( DistributedInstall == "n" ) //note this only works for systems with ssh-keys
if ( DistributedInstall == "n" )
{
for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++)
{
int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount;
if( moduleCount == 0)
continue;
DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin();
for ( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); pt++)
{
HostConfigList::iterator pt1 = (*pt).hostConfigList.begin();
for( ; pt1 != (*pt).hostConfigList.end() ; pt1++)
{
//run remote command script
string cmd = startup::StartUp::installDir() + "/bin/remote_command.sh " + (*pt1).IPAddr + " ssh '" + startup::StartUp::installDir() + "/bin/columnstore restart' 0";
system(cmd.c_str());
}
}
}
}
//send out moduleName to remote nodes, this will be used to startup new installed nodes
{ {
int status = API_SUCCESS; int status = API_SUCCESS;
int k = 0; int k = 0;
@@ -702,7 +723,7 @@ static void startMgrProcessThread()
//distribute config file //distribute config file
processManager.distributeConfigFile("system"); processManager.distributeConfigFile("system");
//now wait until all procmons are up and validate rpms on each module //now wait until all procmons are ACTIVE and validate rpms on each module
int status = API_SUCCESS; int status = API_SUCCESS;
int k = 0; int k = 0;
for( ; k < 180 ; k++ ) for( ; k < 180 ; k++ )