diff --git a/server/src/com/cloud/server/ConfigurationServerImpl.java b/server/src/com/cloud/server/ConfigurationServerImpl.java index 0aa9f60348f..35c737a347a 100644 --- a/server/src/com/cloud/server/ConfigurationServerImpl.java +++ b/server/src/com/cloud/server/ConfigurationServerImpl.java @@ -379,12 +379,22 @@ public class ConfigurationServerImpl implements ConfigurationServer { try { - insertSql = "SELECT * FROM `cloud`.`security_group` where account_id=2 and name='default'"; + String tableName = "security_group"; + try { + String checkSql = "SELECT * from network_group"; + PreparedStatement stmt = txn.prepareAutoCloseStatement(checkSql); + stmt.executeQuery(); + tableName = "network_group"; + } catch (Exception ex) { + // if network_groups table exists, create the default security group there + } + + insertSql = "SELECT * FROM " + tableName + " where account_id=2 and name='default'"; PreparedStatement stmt = txn.prepareAutoCloseStatement(insertSql); ResultSet rs = stmt.executeQuery(); if (!rs.next()) { //save default security group - insertSql = "INSERT INTO `cloud`.`security_group` (name, description, account_id, domain_id, account_name) " + + insertSql = "INSERT INTO " + tableName + " (name, description, account_id, domain_id, account_name) " + "VALUES ('default', 'Default Security Group', 2, 1, 'admin')"; @@ -398,7 +408,7 @@ public class ConfigurationServerImpl implements ConfigurationServer { } rs.close(); } catch (Exception ex) { - s_logger.warn("Failed to create default security group for default admin account due to ", ex); + s_logger.warn("Failed to create default security group for admin account", ex); } }