Program: 79577
Project: 79577
Buggy source:
ShardUtil(int shardCount,JSONObject config){
  this.shardCount=shardCount;
  this.config=config;
  try {
    dbConn=new JdbcPooledConnectionSource("String_Node_Str" + config.optString("String_Node_Str","String_Node_Str"),config.optString("String_Node_Str",null),config.optString("String_Node_Str",null));
  }
 catch (  SQLException e) {
    logger.error("String_Node_Str",e);
    logger.warn("String_Node_Str");
    try {
      dbConn=new JdbcConnectionSource("String_Node_Str");
    }
 catch (    SQLException ex) {
      logger.error("String_Node_Str",ex);
      System.exit(-1);
    }
  }
  try {
    TableUtils.createTableIfNotExists(dbConn,BotAdmin.class);
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  try {
    adminDao=DaoManager.createDao(dbConn,BotAdmin.class);
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  try {
    TableUtils.createTableIfNotExists(dbConn,GuildPrefix.class);
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  try {
    Dao<GuildPrefix,Long> dao=DaoManager.createDao(dbConn,GuildPrefix.class);
    prefixStore=new PrefixStore(dao,config.optString("String_Node_Str","String_Node_Str"));
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  Runtime.getRuntime().addShutdownHook(new Thread(() -> {
    try {
      dbConn.close();
    }
 catch (    IOException e) {
      logger.warn("String_Node_Str",e);
    }
  }
));
}

Fixed version (ground truth):
ShardUtil(int shardCount,JSONObject config){
  this.shardCount=shardCount;
  this.config=config;
  try {
    dbConn=new JdbcPooledConnectionSource("String_Node_Str" + config.optString("String_Node_Str","String_Node_Str"),config.optString("String_Node_Str",null),config.optString("String_Node_Str",null));
  }
 catch (  SQLException e) {
    logger.error("String_Node_Str",e);
    logger.warn("String_Node_Str");
    try {
      dbConn=new JdbcConnectionSource("String_Node_Str");
    }
 catch (    SQLException ex) {
      logger.error("String_Node_Str",ex);
      System.exit(-1);
    }
  }
  if (config.optString("String_Node_Str").startsWith("String_Node_Str")) {
    DatabaseConnection tempConn=null;
    try {
      tempConn=dbConn.getReadWriteConnection(null);
      tempConn.executeStatement("String_Node_Str",DatabaseConnection.DEFAULT_RESULT_FLAGS);
    }
 catch (    SQLException e) {
      logger.warn("String_Node_Str",e);
    }
 finally {
      try {
        if (tempConn != null)         tempConn.close();
      }
 catch (      IOException e) {
        logger.warn("String_Node_Str",e);
      }
    }
  }
  try {
    TableUtils.createTableIfNotExists(dbConn,BotAdmin.class);
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  try {
    adminDao=DaoManager.createDao(dbConn,BotAdmin.class);
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  try {
    TableUtils.createTableIfNotExists(dbConn,GuildPrefix.class);
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  try {
    Dao<GuildPrefix,Long> dao=DaoManager.createDao(dbConn,GuildPrefix.class);
    prefixStore=new PrefixStore(dao,config.optString("String_Node_Str","String_Node_Str"));
  }
 catch (  SQLException e) {
    logger.warn("String_Node_Str",e);
  }
  Runtime.getRuntime().addShutdownHook(new Thread(() -> {
    try {
      dbConn.close();
    }
 catch (    IOException e) {
      logger.warn("String_Node_Str",e);
    }
  }
));
}