1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-08 14:22:09 +03:00

MCOL-1523 - addiiotnal fixes

This commit is contained in:
David Hill
2018-09-15 14:28:46 -05:00
parent 8be2e5bb4b
commit 3ac9d93597
4 changed files with 14 additions and 13 deletions

View File

@@ -7036,7 +7036,7 @@ int processCommand(string* arguments)
if (systemstatus.SystemOpState == oam::ACTIVE ) {
try
{
cout << endl << " Restarting System ";
cout << endl << " Restarting System " << endl;
gracefulTemp = oam::FORCEFUL;
int returnStatus = oam.restartSystem(gracefulTemp, ackTemp);
switch (returnStatus)

View File

@@ -1637,7 +1637,7 @@ void processMSG(messageqcpp::IOSocket* cfIos)
{
log.writeLog(__LINE__, "Setup MySQL Replication for restartSystem FORCE", LOG_TYPE_DEBUG);
oam::DeviceNetworkList devicenetworklist;
processManager.setMySQLReplication(devicenetworklist);
processManager.setMySQLReplication(devicenetworklist, oam::UnassignedName, true);
}
log.writeLog(__LINE__, "RESTARTSYSTEM: Start System Request Completed", LOG_TYPE_INFO);
@@ -2769,12 +2769,16 @@ void processMSG(messageqcpp::IOSocket* cfIos)
processManager.reinitProcessType("cpimport");
//request reinit after Process is active
for ( int i = 0; i < 600 ; i++ ) {
for ( int i = 0; i < 10 ; i++ ) {
try {
ProcessStatus procstat;
oam.getProcessStatus(processName, moduleName, procstat);
if (procstat.ProcessOpState == oam::ACTIVE) {
if (procstat.ProcessOpState == oam::COLD_STANDBY)
break;
if ( (procstat.ProcessOpState == oam::ACTIVE) ||
(procstat.ProcessOpState == oam::STANDBY) ) {
// if a PrimProc was restarted, reinit ACTIVE ExeMgr(s) and DDL/DMLProc
if( processName == "PrimProc") {

View File

@@ -1388,7 +1388,7 @@ static void chldHandleThread(MonitorConfig config)
catch(...)
{}
// check if process failover is needed due to process outage
// check if Mdoule failover is needed due to process outage
aMonitor.checkModuleFailover((*listPtr).ProcessName);
//check the db health
@@ -1463,15 +1463,19 @@ static void chldHandleThread(MonitorConfig config)
restartStatus = " restart failed with hard failure, don't retry!!";
(*listPtr).processID = 0;
// check if process failover is needed due to process outage
// check if Module failover is needed due to process outage
aMonitor.checkModuleFailover((*listPtr).ProcessName);
break;
}
else
{
if ( (*listPtr).processID != oam::API_MINOR_FAILURE )
{
//restarted successful
//Inform Process Manager that Process restart
aMonitor.processRestarted( (*listPtr).ProcessName, false);
break;
}
}
// restart failed with minor error, sleep and try
sleep(5);

View File

@@ -621,9 +621,6 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
else
log.writeLog(__LINE__, "START: process already active " + processName);
//Inform Process Manager that Process restart
//processRestarted(processName);
ackMsg << (ByteStream::byte) ACK;
ackMsg << (ByteStream::byte) START;
ackMsg << (ByteStream::byte) requestStatus;
@@ -720,9 +717,6 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
requestStatus = API_FAILURE;
}
//Inform Process Manager that Process restart
//processRestarted(processName);
ackMsg << (ByteStream::byte) ACK;
ackMsg << (ByteStream::byte) RESTART;
ackMsg << (ByteStream::byte) requestStatus;
@@ -4650,7 +4644,6 @@ void ProcessMonitor::checkModuleFailover( std::string processName)
systemprocessstatus.processstatus[i].ProcessOpState == oam::FAILED ) {
// found a AVAILABLE mate, start it
log.writeLog(__LINE__, "Change UM Master to module " + systemprocessstatus.processstatus[i].Module, LOG_TYPE_DEBUG);
log.writeLog(__LINE__, "Disable local UM module " + config.moduleName(), LOG_TYPE_DEBUG);
log.writeLog(__LINE__, "Stop local UM module " + config.moduleName(), LOG_TYPE_DEBUG);
log.writeLog(__LINE__, "Disable Local will Enable UM module " + systemprocessstatus.processstatus[i].Module, LOG_TYPE_DEBUG);