You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
change how the fstab to setup on other modules
This commit is contained in:
@ -57,12 +57,12 @@ cloud=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation Cloud`
|
|||||||
if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then
|
if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then
|
||||||
cp $INFINIDB_INSTALL_DIR/local/etc/*.pem /root/. > /dev/null 2>&1
|
cp $INFINIDB_INSTALL_DIR/local/etc/*.pem /root/. > /dev/null 2>&1
|
||||||
|
|
||||||
if test -f $INFINIDB_INSTALL_DIR/local/fstab ; then
|
if test -f $INFINIDB_INSTALL_DIR/local/pm1/fstab ; then
|
||||||
echo "Setup fstab on Module"
|
echo "Setup fstab on Module"
|
||||||
touch /etc/fstab
|
touch /etc/fstab
|
||||||
rm -f /etc/fstab.calpontSave
|
rm -f /etc/fstab.calpontSave
|
||||||
mv /etc/fstab /etc/fstab.calpontSave
|
mv /etc/fstab /etc/fstab.calpontSave
|
||||||
cp $INFINIDB_INSTALL_DIR/local/fstab /etc/fstab
|
cat $INFINIDB_INSTALL_DIR/local/pm1/fstab >> /etc/fstab
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -8477,7 +8477,7 @@ namespace oam
|
|||||||
******************************************************************************************/
|
******************************************************************************************/
|
||||||
std::string Oam::updateFstab(std::string device, std::string dbrootID)
|
std::string Oam::updateFstab(std::string device, std::string dbrootID)
|
||||||
{
|
{
|
||||||
writeLog("updateFstab called: " + device + ":" + dbrootID, LOG_TYPE_INFO );
|
writeLog("updateFstab called: " + device + ":" + dbrootID, LOG_TYPE_DEBUG );
|
||||||
|
|
||||||
//check if entry already exist
|
//check if entry already exist
|
||||||
string cmd = "grep /data" + dbrootID + " /etc/fstab /dev/null 2>&1";
|
string cmd = "grep /data" + dbrootID + " /etc/fstab /dev/null 2>&1";
|
||||||
@ -8493,7 +8493,7 @@ namespace oam
|
|||||||
system(cmd.c_str());
|
system(cmd.c_str());
|
||||||
|
|
||||||
//use from addmodule later
|
//use from addmodule later
|
||||||
cmd = "echo " + entry + " >> " + InstallDir + "/local/etc/pm1/fstab";
|
cmd = "touch " + InstallDir + "/local/etc/pm1/fstab;echo " + entry + " >> " + InstallDir + "/local/etc/pm1/fstab";
|
||||||
system(cmd.c_str());
|
system(cmd.c_str());
|
||||||
|
|
||||||
return entry;
|
return entry;
|
||||||
|
@ -559,11 +559,11 @@ int main(int argc, char *argv[])
|
|||||||
// setup storage
|
// setup storage
|
||||||
if (!singleServerDBrootSetup())
|
if (!singleServerDBrootSetup())
|
||||||
{
|
{
|
||||||
cout << "ERROR: Problem setting up dbroot IDs" << endl;
|
cout << "ERROR: Problem setting up DBRoot IDs" << endl;
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
//set system dbroot count and check 'files per parition' with number of dbroots
|
//set system DBRoot count and check 'files per parition' with number of dbroots
|
||||||
try {
|
try {
|
||||||
sysConfig->setConfig(SystemSection, "DBRootCount", oam.itoa(DBRootCount));
|
sysConfig->setConfig(SystemSection, "DBRootCount", oam.itoa(DBRootCount));
|
||||||
}
|
}
|
||||||
@ -2076,9 +2076,9 @@ int main(int argc, char *argv[])
|
|||||||
cout << "makeRClocal error" << endl;
|
cout << "makeRClocal error" << endl;
|
||||||
|
|
||||||
//if cloud, copy fstab in module tmp dir
|
//if cloud, copy fstab in module tmp dir
|
||||||
if ( cloud == "amazon" && moduleType == "pm")
|
// if ( cloud == "amazon" && moduleType == "pm")
|
||||||
if( !copyFstab(newModuleName) )
|
// if( !copyFstab(newModuleName) )
|
||||||
cout << "copyFstab error" << endl;
|
// cout << "copyFstab error" << endl;
|
||||||
|
|
||||||
//setup DBRM Processes
|
//setup DBRM Processes
|
||||||
if ( newModuleName == parentOAMModuleName )
|
if ( newModuleName == parentOAMModuleName )
|
||||||
@ -2143,7 +2143,7 @@ int main(int argc, char *argv[])
|
|||||||
callFree(pcommand);
|
callFree(pcommand);
|
||||||
}
|
}
|
||||||
|
|
||||||
//get device name based on dbroot ID
|
//get device name based on DBRoot ID
|
||||||
deviceName = "/dev/sdf" + oam.itoa(moduleID);
|
deviceName = "/dev/sdf" + oam.itoa(moduleID);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -2205,7 +2205,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
catch(...)
|
catch(...)
|
||||||
{
|
{
|
||||||
cout << "ERROR: Problem setting dbroot count in the InfiniDB System Configuration file" << endl;
|
cout << "ERROR: Problem setting DBRoot count in the InfiniDB System Configuration file" << endl;
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2245,7 +2245,7 @@ int main(int argc, char *argv[])
|
|||||||
dbroots.clear();
|
dbroots.clear();
|
||||||
bool matchFound = false;
|
bool matchFound = false;
|
||||||
|
|
||||||
prompt = "Enter the list (Nx,Ny,Nz) or range (Nx-Nz) of dbroot IDs assigned to module '" + newModuleName + "' (" + dbrootList + ") > ";
|
prompt = "Enter the list (Nx,Ny,Nz) or range (Nx-Nz) of DBRoot IDs assigned to module '" + newModuleName + "' (" + dbrootList + ") > ";
|
||||||
pcommand = callReadline(prompt.c_str());
|
pcommand = callReadline(prompt.c_str());
|
||||||
if (pcommand)
|
if (pcommand)
|
||||||
{
|
{
|
||||||
@ -2301,7 +2301,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//if pm1, make sure dbroot #1 is in the list
|
//if pm1, make sure DBRoot #1 is in the list
|
||||||
if ( newModuleName == "pm1" )
|
if ( newModuleName == "pm1" )
|
||||||
{
|
{
|
||||||
bool found = false;
|
bool found = false;
|
||||||
@ -2317,14 +2317,14 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
if ( !found )
|
if ( !found )
|
||||||
{
|
{
|
||||||
cout << endl << "Invalid Entry, Module pm1 has to have dbroot #1 assigned to it, please re-enter" << endl;
|
cout << endl << "Invalid Entry, Module pm1 has to have DBRoot #1 assigned to it, please re-enter" << endl;
|
||||||
if ( noPrompting )
|
if ( noPrompting )
|
||||||
exit(1);
|
exit(1);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//check and see if dbroot ID already used
|
//check and see if DBRoot ID already used
|
||||||
std::vector<std::string>::iterator list = dbroots.begin();
|
std::vector<std::string>::iterator list = dbroots.begin();
|
||||||
for (; list != dbroots.end() ; list++)
|
for (; list != dbroots.end() ; list++)
|
||||||
{
|
{
|
||||||
@ -2345,7 +2345,7 @@ int main(int argc, char *argv[])
|
|||||||
if ( inUse)
|
if ( inUse)
|
||||||
break;
|
break;
|
||||||
else
|
else
|
||||||
{ // if upgrade, dont allow a new dbroot id to be entered
|
{ // if upgrade, dont allow a new DBRoot id to be entered
|
||||||
if ( reuseConfig == "y" )
|
if ( reuseConfig == "y" )
|
||||||
{
|
{
|
||||||
DBRootConfigList::iterator pt = dbrootConfigList.begin();
|
DBRootConfigList::iterator pt = dbrootConfigList.begin();
|
||||||
@ -2403,7 +2403,7 @@ int main(int argc, char *argv[])
|
|||||||
dbrootmodule.dbrootID = *it;
|
dbrootmodule.dbrootID = *it;
|
||||||
dbrootlist.push_back(dbrootmodule);
|
dbrootlist.push_back(dbrootmodule);
|
||||||
|
|
||||||
//store dbroot ID
|
//store DBRoot ID
|
||||||
string moduledbrootid = "ModuleDBRootID" + oam.itoa(moduleID) + "-" + oam.itoa(id) + "-" + oam.itoa(i+1);
|
string moduledbrootid = "ModuleDBRootID" + oam.itoa(moduleID) + "-" + oam.itoa(id) + "-" + oam.itoa(i+1);
|
||||||
try {
|
try {
|
||||||
sysConfig->setConfig(ModuleSection, moduledbrootid, *it);
|
sysConfig->setConfig(ModuleSection, moduledbrootid, *it);
|
||||||
@ -2434,7 +2434,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
//get EC2 volume name and info
|
//get EC2 volume name and info
|
||||||
if ( DBRootStorageType == "external" && cloud == "amazon") {
|
if ( DBRootStorageType == "external" && cloud == "amazon") {
|
||||||
cout << endl << "*** Setup External EBS Volume for dbroot #" << *it << " ***" << endl;
|
cout << endl << "*** Setup External EBS Volume for DBRoot #" << *it << " ***" << endl;
|
||||||
cout << "*** NOTE: You can either have postConfigure create a new EBS volume or you can provide an existing Volume ID to use" << endl << endl;
|
cout << "*** NOTE: You can either have postConfigure create a new EBS volume or you can provide an existing Volume ID to use" << endl << endl;
|
||||||
|
|
||||||
string volumeNameID = "PMVolumeName" + *it;
|
string volumeNameID = "PMVolumeName" + *it;
|
||||||
@ -2457,7 +2457,7 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
while(true)
|
while(true)
|
||||||
{
|
{
|
||||||
pcommand = callReadline("Create a new EBS volume for dbroot #" + *it + " ? [y,n] (y) > ");
|
pcommand = callReadline("Create a new EBS volume for DBRoot #" + *it + " ? [y,n] (y) > ");
|
||||||
if (pcommand)
|
if (pcommand)
|
||||||
{
|
{
|
||||||
if (strlen(pcommand) > 0) create = pcommand;
|
if (strlen(pcommand) > 0) create = pcommand;
|
||||||
@ -2481,7 +2481,7 @@ int main(int argc, char *argv[])
|
|||||||
callFree(pcommand);
|
callFree(pcommand);
|
||||||
}
|
}
|
||||||
|
|
||||||
//get device name based on dbroot ID
|
//get device name based on DBRoot ID
|
||||||
oam::storageID_t st;
|
oam::storageID_t st;
|
||||||
try {
|
try {
|
||||||
st = oam.getAWSdeviceName( atoi((*it).c_str()) );
|
st = oam.getAWSdeviceName( atoi((*it).c_str()) );
|
||||||
@ -2491,12 +2491,12 @@ int main(int argc, char *argv[])
|
|||||||
deviceName = boost::get<0>(st);
|
deviceName = boost::get<0>(st);
|
||||||
amazondeviceName = boost::get<1>(st);
|
amazondeviceName = boost::get<1>(st);
|
||||||
|
|
||||||
// fstabs
|
// update fstabs
|
||||||
string entry = oam.updateFstab( amazondeviceName, *it);
|
string entry = oam.updateFstab( amazondeviceName, *it);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// create amazon ebs dbroot
|
// create amazon ebs DBRoot
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
DBRootConfigList dbrootlist;
|
DBRootConfigList dbrootlist;
|
||||||
@ -2530,7 +2530,7 @@ int main(int argc, char *argv[])
|
|||||||
callFree(pcommand);
|
callFree(pcommand);
|
||||||
}
|
}
|
||||||
|
|
||||||
// fstabs
|
// update fstabs
|
||||||
string entry = oam.updateFstab( amazondeviceName, *it);
|
string entry = oam.updateFstab( amazondeviceName, *it);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -2567,7 +2567,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
catch(...)
|
catch(...)
|
||||||
{
|
{
|
||||||
cout << "ERROR: Problem setting dbroot count in the InfiniDB System Configuration file" << endl;
|
cout << "ERROR: Problem setting DBRoot count in the InfiniDB System Configuration file" << endl;
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
//total dbroots on the system
|
//total dbroots on the system
|
||||||
@ -4461,21 +4461,21 @@ bool storageSetup(string cloud)
|
|||||||
prompt = "Select the type of Data Storage [1=internal, 2=external, 3=GlusterFS, 4=hdfs] (" + storageType + ") > ";
|
prompt = "Select the type of Data Storage [1=internal, 2=external, 3=GlusterFS, 4=hdfs] (" + storageType + ") > ";
|
||||||
}
|
}
|
||||||
|
|
||||||
cout << " 'internal' - This is specified when a local disk is used for the dbroot storage." << endl;
|
cout << " 'internal' - This is specified when a local disk is used for the DBRoot storage." << endl;
|
||||||
cout << " High Availability Server Failover is not Supported in this mode" << endl << endl;
|
cout << " High Availability Server Failover is not Supported in this mode" << endl << endl;
|
||||||
cout << " 'external' - This is specified when the dbroot directories are mounted." << endl;
|
cout << " 'external' - This is specified when the DBRoot directories are mounted." << endl;
|
||||||
cout << " High Availability Server Failover is Supported in this mode." << endl << endl;
|
cout << " High Availability Server Failover is Supported in this mode." << endl << endl;
|
||||||
|
|
||||||
if ( glusterInstalled == "y" )
|
if ( glusterInstalled == "y" )
|
||||||
{
|
{
|
||||||
cout << " 'GlusterFS' - This is specified when GlusterFS Data Redundancy is installed" << endl;
|
cout << " 'GlusterFS' - This is specified when GlusterFS Data Redundancy is installed" << endl;
|
||||||
cout << " and you want the dbroot directories to be controlled by glusterfs." << endl;
|
cout << " and you want the DBRoot directories to be controlled by glusterfs." << endl;
|
||||||
cout << " High Availability Server Failover is Supported in this mode." << endl << endl;
|
cout << " High Availability Server Failover is Supported in this mode." << endl << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( hadoopInstalled == "y" )
|
if ( hadoopInstalled == "y" )
|
||||||
{
|
{
|
||||||
cout << " 'hdfs' - This is specified when hadoop is installed and you want the dbroot" << endl;
|
cout << " 'hdfs' - This is specified when hadoop is installed and you want the DBRoot" << endl;
|
||||||
cout << " directories to be controlled by the Hadoop Distributed File System (HDFS)." << endl;
|
cout << " directories to be controlled by the Hadoop Distributed File System (HDFS)." << endl;
|
||||||
cout << " High Availability Server Failover is Supported in this mode." << endl << endl;
|
cout << " High Availability Server Failover is Supported in this mode." << endl << endl;
|
||||||
}
|
}
|
||||||
@ -5067,7 +5067,7 @@ bool attachVolume(string instanceName, string volumeName, string deviceName, str
|
|||||||
string status = oam.getEC2VolumeStatus(volumeName);
|
string status = oam.getEC2VolumeStatus(volumeName);
|
||||||
if ( status == "attached" ) {
|
if ( status == "attached" ) {
|
||||||
cout << "Volume " << volumeName << " is attached " << endl;
|
cout << "Volume " << volumeName << " is attached " << endl;
|
||||||
cout << "Make sure it's device " << deviceName << " is mounted to dbroot directory " << dbrootPath << endl;
|
cout << "Make sure it's device " << deviceName << " is mounted to DBRoot directory " << dbrootPath << endl;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5102,7 +5102,7 @@ bool attachVolume(string instanceName, string volumeName, string deviceName, str
|
|||||||
cout << "Attaching, please wait..." << endl;
|
cout << "Attaching, please wait..." << endl;
|
||||||
if(oam.attachEC2Volume(volumeName, deviceName, instanceName)) {
|
if(oam.attachEC2Volume(volumeName, deviceName, instanceName)) {
|
||||||
cout << "Volume " << volumeName << " is now attached " << endl;
|
cout << "Volume " << volumeName << " is now attached " << endl;
|
||||||
cout << "Make sure it's device " << deviceName << " is mounted to dbroot directory " << dbrootPath << endl;
|
cout << "Make sure it's device " << deviceName << " is mounted to DBRoot directory " << dbrootPath << endl;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -5135,7 +5135,7 @@ bool singleServerDBrootSetup()
|
|||||||
}
|
}
|
||||||
catch(...)
|
catch(...)
|
||||||
{
|
{
|
||||||
cout << "ERROR: Problem setting dbroot count in the InfiniDB System Configuration file" << endl;
|
cout << "ERROR: Problem setting DBRoot count in the InfiniDB System Configuration file" << endl;
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5170,7 +5170,7 @@ bool singleServerDBrootSetup()
|
|||||||
{
|
{
|
||||||
dbroots.clear();
|
dbroots.clear();
|
||||||
|
|
||||||
prompt = "Enter the list (Nx,Ny,Nz) or range (Nx-Nz) of dbroot IDs assigned to module 'pm1' (" + dbrootList + ") > ";
|
prompt = "Enter the list (Nx,Ny,Nz) or range (Nx-Nz) of DBRoot IDs assigned to module 'pm1' (" + dbrootList + ") > ";
|
||||||
pcommand = callReadline(prompt.c_str());
|
pcommand = callReadline(prompt.c_str());
|
||||||
if (pcommand)
|
if (pcommand)
|
||||||
{
|
{
|
||||||
@ -5225,7 +5225,7 @@ bool singleServerDBrootSetup()
|
|||||||
std::vector<std::string>::iterator it = dbroots.begin();
|
std::vector<std::string>::iterator it = dbroots.begin();
|
||||||
for (; it != dbroots.end() ; it++, ++id)
|
for (; it != dbroots.end() ; it++, ++id)
|
||||||
{
|
{
|
||||||
//store dbroot ID
|
//store DBRoot ID
|
||||||
string moduledbrootid = "ModuleDBRootID1-" + oam.itoa(id) + "-3";
|
string moduledbrootid = "ModuleDBRootID1-" + oam.itoa(id) + "-3";
|
||||||
try {
|
try {
|
||||||
sysConfig->setConfig(ModuleSection, moduledbrootid, *it);
|
sysConfig->setConfig(ModuleSection, moduledbrootid, *it);
|
||||||
@ -5256,7 +5256,7 @@ bool singleServerDBrootSetup()
|
|||||||
}
|
}
|
||||||
catch(...)
|
catch(...)
|
||||||
{
|
{
|
||||||
cout << "ERROR: Problem setting dbroot count in the InfiniDB System Configuration file" << endl;
|
cout << "ERROR: Problem setting DBRoot count in the InfiniDB System Configuration file" << endl;
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2495,7 +2495,7 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
|
|
||||||
if ( target == "system" )
|
if ( target == "system" )
|
||||||
{
|
{
|
||||||
//send out to all pms
|
//send out to all pms except local module
|
||||||
for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++)
|
for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++)
|
||||||
{
|
{
|
||||||
if ( systemmoduletypeconfig.moduletypeconfig[i].ModuleType != "pm" )
|
if ( systemmoduletypeconfig.moduletypeconfig[i].ModuleType != "pm" )
|
||||||
@ -2508,6 +2508,9 @@ void processMSG(messageqcpp::IOSocket* cfIos)
|
|||||||
DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin();
|
DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin();
|
||||||
for (;pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); pt++)
|
for (;pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); pt++)
|
||||||
{
|
{
|
||||||
|
if ( (*pt).DeviceName == config.moduleName() )
|
||||||
|
continue;
|
||||||
|
|
||||||
int retStatus = processManager.updateFstab((*pt).DeviceName, entry);
|
int retStatus = processManager.updateFstab((*pt).DeviceName, entry);
|
||||||
if (retStatus != API_SUCCESS)
|
if (retStatus != API_SUCCESS)
|
||||||
status = retStatus;
|
status = retStatus;
|
||||||
|
@ -981,7 +981,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
|||||||
|
|
||||||
if( config.moduleType() == "pm" )
|
if( config.moduleType() == "pm" )
|
||||||
{
|
{
|
||||||
//setup dbroot mounts
|
//setup DBRoot mounts
|
||||||
createDataDirs(cloud);
|
createDataDirs(cloud);
|
||||||
int ret = checkDataMount();
|
int ret = checkDataMount();
|
||||||
if (ret != oam::API_SUCCESS)
|
if (ret != oam::API_SUCCESS)
|
||||||
@ -1592,7 +1592,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
|||||||
string dbrootID;
|
string dbrootID;
|
||||||
msg >> dbrootID;
|
msg >> dbrootID;
|
||||||
|
|
||||||
log.writeLog(__LINE__, "MSG RECEIVED: Unmount dbroot: " + dbrootID);
|
log.writeLog(__LINE__, "MSG RECEIVED: Unmount DBRoot: " + dbrootID);
|
||||||
|
|
||||||
//Flush the cache
|
//Flush the cache
|
||||||
cacheutils::flushPrimProcCache();
|
cacheutils::flushPrimProcCache();
|
||||||
@ -1636,7 +1636,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
|||||||
|
|
||||||
if ( retry >= 5 )
|
if ( retry >= 5 )
|
||||||
{
|
{
|
||||||
log.writeLog(__LINE__, "unmount failed, device busy, dbroot: " + dbrootID, LOG_TYPE_ERROR);
|
log.writeLog(__LINE__, "unmount failed, device busy, DBRoot: " + dbrootID, LOG_TYPE_ERROR);
|
||||||
return_status = API_FAILURE;
|
return_status = API_FAILURE;
|
||||||
system("mv -f /tmp/umount.txt /tmp/umount_failed.txt");
|
system("mv -f /tmp/umount.txt /tmp/umount_failed.txt");
|
||||||
}
|
}
|
||||||
@ -1671,7 +1671,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
|||||||
string dbrootID;
|
string dbrootID;
|
||||||
msg >> dbrootID;
|
msg >> dbrootID;
|
||||||
|
|
||||||
log.writeLog(__LINE__, "MSG RECEIVED: Mount dbroot: " + dbrootID);;
|
log.writeLog(__LINE__, "MSG RECEIVED: Mount DBRoot: " + dbrootID);;
|
||||||
|
|
||||||
int return_status = API_SUCCESS;
|
int return_status = API_SUCCESS;
|
||||||
if (GlusterConfig == "n")
|
if (GlusterConfig == "n")
|
||||||
@ -1692,7 +1692,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO
|
|||||||
if ( size != 0 )
|
if ( size != 0 )
|
||||||
{
|
{
|
||||||
if (!oam.checkLogStatus("/tmp/mount.txt", "already")) {
|
if (!oam.checkLogStatus("/tmp/mount.txt", "already")) {
|
||||||
log.writeLog(__LINE__, "mount failed, dbroot: " + dbrootID, LOG_TYPE_ERROR);
|
log.writeLog(__LINE__, "mount failed, DBRoot: " + dbrootID, LOG_TYPE_ERROR);
|
||||||
return_status = API_FAILURE;
|
return_status = API_FAILURE;
|
||||||
system("mv -f /tmp/mount.txt /tmp/mount_failed.txt");
|
system("mv -f /tmp/mount.txt /tmp/mount_failed.txt");
|
||||||
}
|
}
|
||||||
@ -3596,7 +3596,7 @@ int ProcessMonitor::reconfigureModule(std::string reconfigureModuleName)
|
|||||||
system(cmd.c_str());
|
system(cmd.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
//copy and apply new rc.local.calpont from dm1
|
//copy and apply new rc.local.calpont from pm1
|
||||||
cmd = "rm -f " + installDir + "/local/rc.local.calpont";
|
cmd = "rm -f " + installDir + "/local/rc.local.calpont";
|
||||||
system(cmd.c_str());
|
system(cmd.c_str());
|
||||||
cmd = "cp " + installDir + "/local/etc/" + reconfigureModuleName + "/rc.local.calpont " + installDir + "/local/.";
|
cmd = "cp " + installDir + "/local/etc/" + reconfigureModuleName + "/rc.local.calpont " + installDir + "/local/.";
|
||||||
@ -5612,7 +5612,7 @@ bool ProcessMonitor::amazonVolumeCheck(int dbrootID)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
log.writeLog(__LINE__, "amazonVolumeCheck function called for dbroot" + oam.itoa(dbrootID), LOG_TYPE_DEBUG);
|
log.writeLog(__LINE__, "amazonVolumeCheck function called for DBRoot" + oam.itoa(dbrootID), LOG_TYPE_DEBUG);
|
||||||
|
|
||||||
string volumeNameID = "PMVolumeName" + oam.itoa(dbrootID);
|
string volumeNameID = "PMVolumeName" + oam.itoa(dbrootID);
|
||||||
string volumeName = oam::UnassignedName;
|
string volumeName = oam::UnassignedName;
|
||||||
@ -5626,7 +5626,7 @@ bool ProcessMonitor::amazonVolumeCheck(int dbrootID)
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
if ( volumeName.empty() || volumeName == oam::UnassignedName ) {
|
if ( volumeName.empty() || volumeName == oam::UnassignedName ) {
|
||||||
log.writeLog(__LINE__, "amazonVolumeCheck function exiting, no volume assigned to dbroot " + oam.itoa(dbrootID), LOG_TYPE_WARNING);
|
log.writeLog(__LINE__, "amazonVolumeCheck function exiting, no volume assigned to DBRoot " + oam.itoa(dbrootID), LOG_TYPE_WARNING);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5837,7 +5837,7 @@ int ProcessMonitor::checkDataMount()
|
|||||||
}
|
}
|
||||||
catch(...) {}
|
catch(...) {}
|
||||||
|
|
||||||
//asign dbroot is gluster
|
//asign DBRoot is gluster
|
||||||
if (GlusterConfig == "y")
|
if (GlusterConfig == "y")
|
||||||
{
|
{
|
||||||
vector<string>::iterator p = dbrootList.begin();
|
vector<string>::iterator p = dbrootList.begin();
|
||||||
@ -5872,7 +5872,7 @@ int ProcessMonitor::checkDataMount()
|
|||||||
string fileName = dbroot + "/OAMdbrootCheck";
|
string fileName = dbroot + "/OAMdbrootCheck";
|
||||||
ofstream fout(fileName.c_str());
|
ofstream fout(fileName.c_str());
|
||||||
if (!fout) {
|
if (!fout) {
|
||||||
log.writeLog(__LINE__, "ERROR: Failed test write to dbroot: " + dbroot, LOG_TYPE_ERROR);
|
log.writeLog(__LINE__, "ERROR: Failed test write to DBRoot: " + dbroot, LOG_TYPE_ERROR);
|
||||||
|
|
||||||
return API_FAILURE;
|
return API_FAILURE;
|
||||||
}
|
}
|
||||||
@ -5919,7 +5919,7 @@ int ProcessMonitor::checkDataMount()
|
|||||||
if ( size != 0 )
|
if ( size != 0 )
|
||||||
{
|
{
|
||||||
if (!oam.checkLogStatus("/tmp/mount.txt", "already")) {
|
if (!oam.checkLogStatus("/tmp/mount.txt", "already")) {
|
||||||
log.writeLog(__LINE__, "checkDataMount: mount failed, dbroot: " + dbroot, LOG_TYPE_ERROR);
|
log.writeLog(__LINE__, "checkDataMount: mount failed, DBRoot: " + dbroot, LOG_TYPE_ERROR);
|
||||||
|
|
||||||
try{
|
try{
|
||||||
oam.setDbrootStatus(*p, oam::AUTO_OFFLINE);
|
oam.setDbrootStatus(*p, oam::AUTO_OFFLINE);
|
||||||
@ -5943,7 +5943,7 @@ int ProcessMonitor::checkDataMount()
|
|||||||
//create OAM-Test-Flag check rw mount
|
//create OAM-Test-Flag check rw mount
|
||||||
ofstream fout(fileName.c_str());
|
ofstream fout(fileName.c_str());
|
||||||
if (!fout) {
|
if (!fout) {
|
||||||
log.writeLog(__LINE__, "ERROR: Failed test write to dbroot: " + dbroot, LOG_TYPE_ERROR);
|
log.writeLog(__LINE__, "ERROR: Failed test write to DBRoot: " + dbroot, LOG_TYPE_ERROR);
|
||||||
|
|
||||||
try{
|
try{
|
||||||
oam.setDbrootStatus(*p, oam::AUTO_OFFLINE);
|
oam.setDbrootStatus(*p, oam::AUTO_OFFLINE);
|
||||||
|
Reference in New Issue
Block a user