throwcta::exception::Exception("Cannot drop a production database. If you still wish to proceed then please modify the database manually to remove its production status before trying again.");
}
}
if(userConfirmsDropOfSchema(dbLogin)){
m_out<<"DROPPING the schema of the CTA calalogue database"<<std::endl;
result.addDiff("TABLE "+schema1TableName+" from "+schema1Type+" has a column named "+schema1ColumnName+" that has a type "+schema1ColumnType+" that does not match the column type from the "+schema2Type+" ("+schemaColumnType+")");
result.addError("TABLE "+schema1TableName+" from "+schema1Type+" has a column named "+schema1ColumnName+" that has a type "+schema1ColumnType+" that does not match the column type from the "+schema2Type+" ("+schemaColumnType+")");
}
}catch(conststd::out_of_range&){
result.addDiff("TABLE "+schema1TableName+" from "+schema1Type+" has a column named "+schema1ColumnName+" that is missing in the "+schema2Type+".");
result.addError("TABLE "+schema1TableName+" from "+schema1Type+" has a column named "+schema1ColumnName+" that is missing in the "+schema2Type+".");
}
}
}catch(conststd::out_of_range&){
result.addDiff("TABLE "+schema1TableName+" is missing in the "+schema2Type+" but is defined in the "+schema1Type+".");
result.addError("TABLE "+schema1TableName+" is missing in the "+schema2Type+" but is defined in the "+schema1Type+".");
std::cout<<"WARNING : The status of the schema is "<<catalogueVersion.getStatus<std::string>()<<", the future version is "<<catalogueVersion.getSchemaVersionNext<std::string>()<<std::endl;
std::stringwarning="The status of the schema is "+catalogueVersion.getStatus<std::string>()+", the future version is "+catalogueVersion.getSchemaVersionNext<std::string>();