diff --git a/oam/etc/ProcessConfig.xml b/oam/etc/ProcessConfig.xml index 78f82bfe7..c14055190 100644 --- a/oam/etc/ProcessConfig.xml +++ b/oam/etc/ProcessConfig.xml @@ -21,8 +21,6 @@ ACTIVE_STANDBY off - - StorageManager ChildExtOAMModule @@ -34,8 +32,6 @@ LOADSHARE off - - DBRMControllerNode ParentOAMModule diff --git a/oam/oamcpp/liboamcpp.cpp b/oam/oamcpp/liboamcpp.cpp index f30e6659d..5a6273b5d 100644 --- a/oam/oamcpp/liboamcpp.cpp +++ b/oam/oamcpp/liboamcpp.cpp @@ -1991,6 +1991,7 @@ void Oam::getProcessConfig(SystemProcessConfig& systemprocessconfig) proConfig->getConfig(sectionName, "ModuleType"), processconfig ); + // hide StorageManager from everything else if it is disabled if (processconfig.ProcessName.empty() || (!storageManagerEnabled && processconfig.ProcessName == "StorageManager")) continue; diff --git a/oamapps/postConfigure/postConfigure.cpp b/oamapps/postConfigure/postConfigure.cpp index 73f095965..b26c60b50 100644 --- a/oamapps/postConfigure/postConfigure.cpp +++ b/oamapps/postConfigure/postConfigure.cpp @@ -935,8 +935,6 @@ int main(int argc, char* argv[]) } } } - - // perform single server install if (singleServerInstall == "1") @@ -5053,10 +5051,10 @@ bool storageSetup(bool amazonInstall) cout << "----- Setup User Module MariaDB ColumnStore Data Storage Mount Configuration -----" << endl << endl; - cout << "There are 2 options when configuring the storage: internal, and external" << endl << endl; + cout << "There are 2 options when configuring the storage: internal and external" << endl << endl; cout << " 'internal' - This is specified when a local disk is used for the Data storage." << endl << endl; cout << " 'external' - This is specified when the MariaDB ColumnStore Data directory is externally mounted." << endl << endl; - + try { UMStorageType = sysConfig->getConfig(InstallSection, "UMStorageType"); @@ -5084,7 +5082,7 @@ bool storageSetup(bool amazonInstall) callFree(pcommand); } - if ( storageType == "1" || storageType == "2" ) + if ( storageType == "1" || storageType == "2") break; cout << endl << "Invalid Entry, please re-enter" << endl << endl; diff --git a/oamapps/serverMonitor/main.cpp b/oamapps/serverMonitor/main.cpp index 4b0f65d1e..73698a4c5 100644 --- a/oamapps/serverMonitor/main.cpp +++ b/oamapps/serverMonitor/main.cpp @@ -313,7 +313,7 @@ int main (int argc, char** argv) pthread_t cpuMonitorThread; pthread_create (&cpuMonitorThread, NULL, (void* (*)(void*)) &cpuMonitor, NULL); - //Launch Disk Monitor Thread + //Launch Disk Monitor Thread if it's not a storagemanager cluster config::Config *_config = config::Config::makeConfig(); string storageType = _config->getConfig("Installation", "DBRootStorageType"); if (storageType != "storagemanager") diff --git a/procmgr/processmanager.cpp b/procmgr/processmanager.cpp index 3327e15d7..2fab09452 100644 --- a/procmgr/processmanager.cpp +++ b/procmgr/processmanager.cpp @@ -9169,7 +9169,6 @@ int ProcessManager::getDBRMData(messageqcpp::IOSocket fIos, std::string moduleNa string oidFile; oam.getSystemConfig("OIDBitmapFile", oidFile); - // StorageManager: Need to make these existence checks use an idbfilesystem op if we // decide to put the BRM-managed files in cloud storage string currentDbrmFile; @@ -9293,7 +9292,6 @@ int ProcessManager::getDBRMData(messageqcpp::IOSocket fIos, std::string moduleNa } // put oid file and current file in list - // StorageManager: no need to distribute these files if in cloud storage dbrmFiles.push_back(currentFileName); ifstream file1 (journalFileName.c_str()); diff --git a/procmon/main.cpp b/procmon/main.cpp index e23c74e82..7b6b02473 100644 --- a/procmon/main.cpp +++ b/procmon/main.cpp @@ -1018,11 +1018,8 @@ int main(int argc, char** argv) // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (listPtr->ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 1", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, listPtr->processID); - } string restartStatus; @@ -1078,11 +1075,8 @@ int main(int argc, char** argv) // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (listPtr->ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 2", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, listPtr->processID); - } string restartStatus; @@ -1674,12 +1668,9 @@ static void chldHandleThread(MonitorConfig config) // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (listPtr->ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 3", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, listPtr->processID); - } - + if ( (*listPtr).processID == oam::API_FAILURE ) { // restart hard failure diff --git a/procmon/processmonitor.cpp b/procmon/processmonitor.cpp index 106072cad..a90f1fdf8 100644 --- a/procmon/processmonitor.cpp +++ b/procmon/processmonitor.cpp @@ -662,11 +662,8 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (processconfig.ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 6", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, processID); - } if ( processID > oam::API_MAX ) processID = oam::API_SUCCESS; @@ -766,12 +763,9 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (listPtr->ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 7", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, listPtr->processID); - } - + if ( processID > oam::API_MAX ) processID = oam::API_SUCCESS; @@ -1214,12 +1208,9 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (listPtr->ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 4", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, processID); - } - + if ( processID > oam::API_MAX ) { processID = oam::API_SUCCESS; @@ -1289,12 +1280,9 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO // StorageManager doesn't send the "I'm online" msg to Proc*. // Just mark it active for now. TODO: make it use the ping fcn in IDB* instead. if (listPtr->ProcessName == "StorageManager") - { - log.writeLog(__LINE__, "StorageManager WTF? 5", LOG_TYPE_DEBUG); oam.setProcessStatus("StorageManager", boost::get<0>(oam.getModuleInfo()), oam::ACTIVE, processID); - } - + if ( processID > oam::API_MAX ) processID = oam::API_SUCCESS; @@ -6318,15 +6306,7 @@ int ProcessMonitor::checkDataMount() } else if (DBRootStorageType == "storagemanager") { - /* StorageManager isn't running yet. - IDBFileSystem &fs = IDBFactory::getFs(IDBDataFile::CLOUD); - bool up = fs.filesystemIsUp(); - if (!up) - { - log.writeLog(__LINE__, "ERROR: StorageManager is down, check its log files", LOG_TYPE_CRITICAL); - return API_FAILURE; - } - */ + /* StorageManager isn't running yet. Can't check for writability here. */ return API_SUCCESS; } diff --git a/utils/idbdatafile/IDBPolicy.cpp b/utils/idbdatafile/IDBPolicy.cpp index a4edfc851..5cb3c8719 100644 --- a/utils/idbdatafile/IDBPolicy.cpp +++ b/utils/idbdatafile/IDBPolicy.cpp @@ -123,7 +123,7 @@ bool IDBPolicy::isLocalFile( const std::string& path ) //string fileExt = filepath.extension().c_str(); #endif bool isXml = filepath.extension() == ".xml"; - bool isDbrm = path.find("dbrm") != string::npos; // StorageManager: make this depend on config values + bool isDbrm = path.find("dbrm") != string::npos; // StorageManager: debatable whether dbrm files should go in the cloud bool isVb = path.find("versionbuffer") != string::npos; bool isScratch = path.find(s_hdfsRdwrScratch) == 0;