You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-09-02 12:41:17 +03:00
MCOL-814 - amazon chnages for failover and query testing
This commit is contained in:
@@ -90,7 +90,7 @@ start() {
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
#checkInstallSetup
|
||||
checkInstallSetup
|
||||
|
||||
CoreFileFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Columnstore.xml Installation CoreFileFlag`
|
||||
if [ $CoreFileFlag = "y" ]; then
|
||||
|
@@ -4886,7 +4886,7 @@ bool copyFstab(string moduleName)
|
||||
if ( rootUser)
|
||||
cmd = "/bin/cp -f /etc/fstab " + installDir + "/local/etc/" + moduleName + "/. > /dev/null 2>&1";
|
||||
else
|
||||
cmd = "/sudo bin/cp -f /etc/fstab " + installDir + "/local/etc/" + moduleName + "/. > /dev/null 2>&1";
|
||||
cmd = "sudo /bin/cp -f /etc/fstab " + installDir + "/local/etc/" + moduleName + "/. > /dev/null 2>&1";
|
||||
|
||||
system(cmd.c_str());
|
||||
|
||||
|
@@ -1261,6 +1261,9 @@ void pingDeviceThread()
|
||||
break;
|
||||
|
||||
//set query system state not ready
|
||||
BRM::DBRM dbrm;
|
||||
dbrm.setSystemQueryReady(false);
|
||||
|
||||
processManager.setQuerySystemState(false);
|
||||
|
||||
processManager.setSystemState(oam::BUSY_INIT);
|
||||
@@ -1276,9 +1279,6 @@ void pingDeviceThread()
|
||||
//send notification
|
||||
oam.sendDeviceNotification(config.moduleName(), MODULE_UP);
|
||||
|
||||
//set module to enable state
|
||||
processManager.enableModule(moduleName, oam::AUTO_OFFLINE);
|
||||
|
||||
int status;
|
||||
|
||||
// if shared pm, move dbroots back to pm
|
||||
@@ -1289,6 +1289,9 @@ void pingDeviceThread()
|
||||
//restart to get the versionbuffer files closed so it can be unmounted
|
||||
processManager.restartProcessType("WriteEngineServer", moduleName);
|
||||
|
||||
//set module to enable state
|
||||
processManager.enableModule(moduleName, oam::AUTO_OFFLINE);
|
||||
|
||||
downActiveOAMModule = false;
|
||||
int retry;
|
||||
for ( retry = 0 ; retry < 5 ; retry++ )
|
||||
@@ -1380,6 +1383,9 @@ void pingDeviceThread()
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
//set module to enable state
|
||||
processManager.enableModule(moduleName, oam::AUTO_OFFLINE);
|
||||
|
||||
//restart module processes
|
||||
int retry = 0;
|
||||
@@ -1480,14 +1486,6 @@ void pingDeviceThread()
|
||||
continue;
|
||||
}
|
||||
|
||||
//call dbrm control, need to resume before start so the getdbrmfiles halt doesn't hang
|
||||
oam.dbrmctl("reload");
|
||||
log.writeLog(__LINE__, "'dbrmctl reload' done", LOG_TYPE_DEBUG);
|
||||
|
||||
// resume the dbrm
|
||||
oam.dbrmctl("resume");
|
||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
||||
|
||||
// next, startmodule
|
||||
status = processManager.startModule(moduleName, oam::FORCEFUL, oam::AUTO_OFFLINE);
|
||||
if ( status == oam::API_SUCCESS )
|
||||
@@ -1502,6 +1500,14 @@ void pingDeviceThread()
|
||||
if ( retry < ModuleProcMonWaitCount )
|
||||
{ // module successfully started
|
||||
|
||||
//call dbrm control, need to resume before start so the getdbrmfiles halt doesn't hang
|
||||
oam.dbrmctl("reload");
|
||||
log.writeLog(__LINE__, "'dbrmctl reload' done", LOG_TYPE_DEBUG);
|
||||
|
||||
// resume the dbrm
|
||||
oam.dbrmctl("resume");
|
||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
||||
|
||||
//distribute config file
|
||||
processManager.distributeConfigFile("system");
|
||||
sleep(1);
|
||||
@@ -1543,6 +1549,9 @@ void pingDeviceThread()
|
||||
processManager.restartProcessType("DMLProc", moduleName);
|
||||
}
|
||||
|
||||
//enable query stats
|
||||
dbrm.setSystemQueryReady(true);
|
||||
|
||||
//set query system state ready
|
||||
processManager.setQuerySystemState(true);
|
||||
|
||||
@@ -1600,6 +1609,9 @@ void pingDeviceThread()
|
||||
else
|
||||
processManager.setSystemState(oam::ACTIVE);
|
||||
|
||||
//enable query stats
|
||||
dbrm.setSystemQueryReady(true);
|
||||
|
||||
//set query system state ready
|
||||
processManager.setQuerySystemState(true);
|
||||
|
||||
@@ -1638,8 +1650,13 @@ void pingDeviceThread()
|
||||
log.writeLog(__LINE__, "module is down: " + moduleName, LOG_TYPE_CRITICAL);
|
||||
|
||||
//set query system state not ready
|
||||
BRM::DBRM dbrm;
|
||||
dbrm.setSystemQueryReady(false);
|
||||
|
||||
processManager.setQuerySystemState(false);
|
||||
|
||||
processManager.setSystemState(oam::BUSY_INIT);
|
||||
|
||||
processManager.reinitProcessType("cpimport");
|
||||
|
||||
// halt the dbrm
|
||||
@@ -1888,6 +1905,9 @@ void pingDeviceThread()
|
||||
//set recycle process
|
||||
processManager.recycleProcess(moduleName);
|
||||
|
||||
//enable query stats
|
||||
dbrm.setSystemQueryReady(true);
|
||||
|
||||
//set query system state ready
|
||||
processManager.setQuerySystemState(true);
|
||||
|
||||
@@ -1902,6 +1922,9 @@ void pingDeviceThread()
|
||||
oam.dbrmctl("resume");
|
||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
||||
|
||||
//enable query stats
|
||||
dbrm.setSystemQueryReady(true);
|
||||
|
||||
//set query system state ready
|
||||
processManager.setQuerySystemState(true);
|
||||
}
|
||||
@@ -1915,6 +1938,9 @@ void pingDeviceThread()
|
||||
//set recycle process
|
||||
processManager.recycleProcess(moduleName);
|
||||
|
||||
//enable query stats
|
||||
dbrm.setSystemQueryReady(true);
|
||||
|
||||
//set query system state ready
|
||||
processManager.setQuerySystemState(true);
|
||||
|
||||
|
@@ -2945,15 +2945,8 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
||||
|
||||
msg >> moduleName;
|
||||
|
||||
oam.dbrmctl("halt");
|
||||
log.writeLog(__LINE__, "'dbrmctl halt' done", LOG_TYPE_DEBUG);
|
||||
|
||||
int ret = processManager.getDBRMData(fIos, moduleName);
|
||||
|
||||
oam.dbrmctl("resume");
|
||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
||||
|
||||
|
||||
if ( ret == oam::API_SUCCESS )
|
||||
log.writeLog(__LINE__, "Get DBRM Data Files Completed");
|
||||
else
|
||||
|
@@ -594,7 +594,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
||||
log.writeLog(__LINE__, "START: process already active " + processName);
|
||||
|
||||
//Inform Process Manager that Process restart
|
||||
processRestarted(processName);
|
||||
//processRestarted(processName);
|
||||
|
||||
ackMsg << (ByteStream::byte) ACK;
|
||||
ackMsg << (ByteStream::byte) START;
|
||||
@@ -693,7 +693,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
||||
}
|
||||
|
||||
//Inform Process Manager that Process restart
|
||||
processRestarted(processName);
|
||||
//processRestarted(processName);
|
||||
|
||||
ackMsg << (ByteStream::byte) ACK;
|
||||
ackMsg << (ByteStream::byte) RESTART;
|
||||
|
Reference in New Issue
Block a user