You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-11-25 20:23:16 +03:00
MCOL-1523 - fix issue with query failing and enablemodule failing trying to get um1 back.
This commit is contained in:
@@ -107,7 +107,7 @@
|
|||||||
<DepProcessName1>WriteEngineServer</DepProcessName1>
|
<DepProcessName1>WriteEngineServer</DepProcessName1>
|
||||||
<DepModuleName1>pm*</DepModuleName1>
|
<DepModuleName1>pm*</DepModuleName1>
|
||||||
<DepProcessName2>DBRMWorkerNode</DepProcessName2>
|
<DepProcessName2>DBRMWorkerNode</DepProcessName2>
|
||||||
<DepModuleName2>*</DepModuleName2>
|
<DepModuleName2>@</DepModuleName2>
|
||||||
<DepProcessName3>ExeMgr</DepProcessName3>
|
<DepProcessName3>ExeMgr</DepProcessName3>
|
||||||
<DepModuleName3>*</DepModuleName3>
|
<DepModuleName3>*</DepModuleName3>
|
||||||
<RunType>SIMPLEX</RunType>
|
<RunType>SIMPLEX</RunType>
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
<DepProcessName1>WriteEngineServer</DepProcessName1>
|
<DepProcessName1>WriteEngineServer</DepProcessName1>
|
||||||
<DepModuleName1>pm*</DepModuleName1>
|
<DepModuleName1>pm*</DepModuleName1>
|
||||||
<DepProcessName2>DBRMWorkerNode</DepProcessName2>
|
<DepProcessName2>DBRMWorkerNode</DepProcessName2>
|
||||||
<DepModuleName2>*</DepModuleName2>
|
<DepModuleName2>@</DepModuleName2>
|
||||||
<DepProcessName3>DDLProc</DepProcessName3>
|
<DepProcessName3>DDLProc</DepProcessName3>
|
||||||
<DepModuleName3>@</DepModuleName3>
|
<DepModuleName3>@</DepModuleName3>
|
||||||
<RunType>SIMPLEX</RunType>
|
<RunType>SIMPLEX</RunType>
|
||||||
|
|||||||
@@ -1523,9 +1523,6 @@ void pingDeviceThread()
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
//set query system state not ready
|
//set query system state not ready
|
||||||
BRM::DBRM dbrm;
|
|
||||||
dbrm.setSystemQueryReady(false);
|
|
||||||
|
|
||||||
processManager.setQuerySystemState(false);
|
processManager.setQuerySystemState(false);
|
||||||
|
|
||||||
processManager.setSystemState(oam::BUSY_INIT);
|
processManager.setSystemState(oam::BUSY_INIT);
|
||||||
@@ -1806,9 +1803,6 @@ void pingDeviceThread()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//enable query stats
|
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
//set query system state ready
|
//set query system state ready
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
@@ -1865,9 +1859,6 @@ void pingDeviceThread()
|
|||||||
else
|
else
|
||||||
processManager.setSystemState(oam::ACTIVE);
|
processManager.setSystemState(oam::ACTIVE);
|
||||||
|
|
||||||
//enable query stats
|
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
//set query system state ready
|
//set query system state ready
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
@@ -1929,9 +1920,6 @@ void pingDeviceThread()
|
|||||||
log.writeLog(__LINE__, "module is down: " + moduleName, LOG_TYPE_CRITICAL);
|
log.writeLog(__LINE__, "module is down: " + moduleName, LOG_TYPE_CRITICAL);
|
||||||
|
|
||||||
//set query system state not ready
|
//set query system state not ready
|
||||||
BRM::DBRM dbrm;
|
|
||||||
dbrm.setSystemQueryReady(false);
|
|
||||||
|
|
||||||
processManager.setQuerySystemState(false);
|
processManager.setQuerySystemState(false);
|
||||||
|
|
||||||
processManager.setSystemState(oam::BUSY_INIT);
|
processManager.setSystemState(oam::BUSY_INIT);
|
||||||
@@ -1993,9 +1981,6 @@ void pingDeviceThread()
|
|||||||
oam.dbrmctl("resume");
|
oam.dbrmctl("resume");
|
||||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
||||||
|
|
||||||
//enable query stats
|
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
//set query system state ready
|
//set query system state ready
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
@@ -2201,9 +2186,6 @@ void pingDeviceThread()
|
|||||||
//set recycle process
|
//set recycle process
|
||||||
processManager.recycleProcess(moduleName);
|
processManager.recycleProcess(moduleName);
|
||||||
|
|
||||||
//enable query stats
|
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
//set query system state ready
|
//set query system state ready
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
@@ -2220,9 +2202,6 @@ void pingDeviceThread()
|
|||||||
oam.dbrmctl("resume");
|
oam.dbrmctl("resume");
|
||||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
||||||
|
|
||||||
//enable query stats
|
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
//set query system state ready
|
//set query system state ready
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
}
|
}
|
||||||
@@ -2236,9 +2215,6 @@ void pingDeviceThread()
|
|||||||
//set recycle process
|
//set recycle process
|
||||||
processManager.recycleProcess(moduleName);
|
processManager.recycleProcess(moduleName);
|
||||||
|
|
||||||
//enable query stats
|
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
//set query system state ready
|
//set query system state ready
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -829,8 +829,10 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
if (opState == oam::MAN_OFFLINE || opState == oam::MAN_DISABLED
|
if (opState == oam::MAN_OFFLINE || opState == oam::MAN_DISABLED
|
||||||
|| opState == oam::AUTO_DISABLED || opState == oam::AUTO_OFFLINE) {
|
|| opState == oam::AUTO_DISABLED || opState == oam::AUTO_OFFLINE) {
|
||||||
|
|
||||||
oam.dbrmctl("halt");
|
processManager.setSystemState(oam::BUSY_INIT);
|
||||||
log.writeLog(__LINE__, "'dbrmctl halt' done", LOG_TYPE_DEBUG);
|
|
||||||
|
//set query system state not ready
|
||||||
|
processManager.setQuerySystemState(false);
|
||||||
|
|
||||||
status = processManager.disableModule(moduleName, true);
|
status = processManager.disableModule(moduleName, true);
|
||||||
log.writeLog(__LINE__, "Disable Module Completed on " + moduleName, LOG_TYPE_INFO);
|
log.writeLog(__LINE__, "Disable Module Completed on " + moduleName, LOG_TYPE_INFO);
|
||||||
@@ -840,13 +842,11 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
//check for SIMPLEX Processes on mate might need to be started
|
//check for SIMPLEX Processes on mate might need to be started
|
||||||
processManager.checkSimplexModule(moduleName);
|
processManager.checkSimplexModule(moduleName);
|
||||||
|
|
||||||
//call dbrm control
|
processManager.setSystemState(oam::ACTIVE);
|
||||||
// oam.dbrmctl("reload");
|
|
||||||
// log.writeLog(__LINE__, "'dbrmctl reload' done", LOG_TYPE_DEBUG);
|
//set query system state ready
|
||||||
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
// resume the dbrm
|
|
||||||
oam.dbrmctl("resume");
|
|
||||||
log.writeLog(__LINE__, "'dbrmctl resume' done", LOG_TYPE_DEBUG);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -910,7 +910,7 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
|
|
||||||
DeviceNetworkList::iterator listPT = devicenetworklist.begin();
|
DeviceNetworkList::iterator listPT = devicenetworklist.begin();
|
||||||
|
|
||||||
//stopModules being removed with the REMOVE option, which will stop process
|
// do stopmodule then enable
|
||||||
for( ; listPT != devicenetworklist.end() ; listPT++)
|
for( ; listPT != devicenetworklist.end() ; listPT++)
|
||||||
{
|
{
|
||||||
string moduleName = (*listPT).DeviceName;
|
string moduleName = (*listPT).DeviceName;
|
||||||
@@ -933,6 +933,9 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (opState == oam::MAN_DISABLED) {
|
if (opState == oam::MAN_DISABLED) {
|
||||||
|
processManager.stopModule(moduleName, graceful, manualFlag);
|
||||||
|
log.writeLog(__LINE__, "stop Module Completed on " + moduleName, LOG_TYPE_INFO);
|
||||||
|
|
||||||
status = processManager.enableModule(moduleName, oam::MAN_OFFLINE);
|
status = processManager.enableModule(moduleName, oam::MAN_OFFLINE);
|
||||||
log.writeLog(__LINE__, "Enable Module Completed on " + moduleName, LOG_TYPE_INFO);
|
log.writeLog(__LINE__, "Enable Module Completed on " + moduleName, LOG_TYPE_INFO);
|
||||||
}
|
}
|
||||||
@@ -2758,9 +2761,6 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
log.writeLog(__LINE__, "MSG RECEIVED: Process Restarted on " + moduleName + "/" + processName);
|
log.writeLog(__LINE__, "MSG RECEIVED: Process Restarted on " + moduleName + "/" + processName);
|
||||||
|
|
||||||
//set query system states not ready
|
//set query system states not ready
|
||||||
BRM::DBRM dbrm;
|
|
||||||
dbrm.setSystemQueryReady(false);
|
|
||||||
|
|
||||||
processManager.setQuerySystemState(false);
|
processManager.setQuerySystemState(false);
|
||||||
|
|
||||||
processManager.setSystemState(oam::BUSY_INIT);
|
processManager.setSystemState(oam::BUSY_INIT);
|
||||||
@@ -2841,7 +2841,8 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
break;
|
break;
|
||||||
sleep(1);
|
sleep(1);
|
||||||
}
|
}
|
||||||
dbrm.setSystemQueryReady(true);
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// if a DDLProc was restarted, reinit DMLProc
|
// if a DDLProc was restarted, reinit DMLProc
|
||||||
@@ -2894,8 +2895,6 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
}
|
}
|
||||||
|
|
||||||
//enable query stats
|
//enable query stats
|
||||||
dbrm.setSystemQueryReady(true);
|
|
||||||
|
|
||||||
processManager.setQuerySystemState(true);
|
processManager.setQuerySystemState(true);
|
||||||
|
|
||||||
processManager.setSystemState(oam::ACTIVE);
|
processManager.setSystemState(oam::ACTIVE);
|
||||||
@@ -6489,7 +6488,7 @@ void ProcessManager::setQuerySystemState(bool set)
|
|||||||
log.writeLog(__LINE__, "setQuerySystemState = " + oam.itoa(set), LOG_TYPE_DEBUG);
|
log.writeLog(__LINE__, "setQuerySystemState = " + oam.itoa(set), LOG_TYPE_DEBUG);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
dbrm.setSystemQueryReady(set);
|
dbrm.setSystemQueryReady(true);
|
||||||
log.writeLog(__LINE__, "setQuerySystemState successful", LOG_TYPE_DEBUG);
|
log.writeLog(__LINE__, "setQuerySystemState successful", LOG_TYPE_DEBUG);
|
||||||
}
|
}
|
||||||
catch(...)
|
catch(...)
|
||||||
|
|||||||
Reference in New Issue
Block a user