Program: 140873
Project: 140873
Buggy source:
public static void mainLoop(List<String> ids,String pathToXMLFile) throws ClassNotFoundException, SAXException, IOException, ParserConfigurationException, SQLException, InterruptedException {
  Integer dbCount=0;
  String[] randFiles=null;
  if (Boolean.valueOf(config.get("String_Node_Str"))) {
    String file=config.get("String_Node_Str");
    randFiles=getDatasetFiles(refCon,file);
  }
 else {
    randFiles=Config.getRandomFiles(rootNode);
  }
  for (int i=0; i < percents.size(); i++) {
    ResultSet upload=new ResultSet();
    for (    String db : ids) {
      log.info("String_Node_Str" + db + "String_Node_Str"+ percents.get(i));
      Connection con=ConnectionFactory.createConnection(dbNode,db);
      if (Boolean.valueOf(config.get("String_Node_Str"))) {
        con.dropGraph(config.get("String_Node_Str"));
      }
      if (testcases.containsKey(UploadTestcase.class.getName())) {
        log.info("String_Node_Str" + db + "String_Node_Str"+ percents.get(i));
        UploadTestcase ut=new UploadTestcase();
        Properties up=testcases.get(UploadTestcase.class.getName());
        up.setProperty("String_Node_Str",randFiles[i]);
        ut.setProperties(up);
        ut.setConnection(con);
        ut.setCurrentDBName(db);
        Collection<ResultSet> uploadRes=new LinkedList<ResultSet>();
        uploadRes.add(upload);
        ut.addCurrentResults(uploadRes);
        ut.start();
        upload=ut.getResults().iterator().next();
        log.info("String_Node_Str" + db + "String_Node_Str"+ percents.get(i));
      }
      try {
        if (config.get("String_Node_Str") != null && config.get("String_Node_Str") != null) {
          warmup(con,String.valueOf(config.get("String_Node_Str")),Long.valueOf(config.get("String_Node_Str")));
          log.info("String_Node_Str");
        }
      }
 catch (      Exception e) {
        log.info("String_Node_Str");
      }
      log.info("String_Node_Str");
      start(con,db,String.valueOf(percents.get(i)));
      if (Boolean.valueOf(config.get("String_Node_Str"))) {
        log.info("String_Node_Str" + config.get("String_Node_Str"));
        con.dropGraph(config.get("String_Node_Str"));
      }
      dbCount++;
    }
    upload.setFileName("String_Node_Str" + percents.get(i));
    upload.save();
  }
  for (  String key : results.keySet()) {
    for (    ResultSet res : results.get(key)) {
      log.info("String_Node_Str");
      String testCase=key.split("String_Node_Str")[0];
      testCase.replaceAll("String_Node_Str","String_Node_Str");
      String[] fileName=res.getFileName().split(File.separator);
      res.setFileName("String_Node_Str" + File.separator + RESULT_FILE_NAME+ File.separator+ testCase+ File.separator+ fileName[fileName.length - 1]);
      res.save();
      res.saveAsPNG();
      log.info("String_Node_Str");
    }
  }
}

Fixed version (ground truth):
public static void mainLoop(List<String> ids,String pathToXMLFile) throws ClassNotFoundException, SAXException, IOException, ParserConfigurationException, SQLException, InterruptedException {
  Integer dbCount=0;
  String[] randFiles=null;
  if (Boolean.valueOf(config.get("String_Node_Str"))) {
    String file=config.get("String_Node_Str");
    randFiles=getDatasetFiles(refCon,file);
  }
 else {
    randFiles=Config.getRandomFiles(rootNode);
  }
  for (int i=0; i < percents.size(); i++) {
    ResultSet upload=new ResultSet();
    for (    String db : ids) {
      log.info("String_Node_Str" + db + "String_Node_Str"+ percents.get(i));
      Connection con=ConnectionFactory.createConnection(dbNode,db);
      if (Boolean.valueOf(config.get("String_Node_Str"))) {
        con.dropGraph(config.get("String_Node_Str"));
      }
      if (testcases.containsKey(UploadTestcase.class.getName())) {
        log.info("String_Node_Str" + db + "String_Node_Str"+ percents.get(i));
        UploadTestcase ut=new UploadTestcase();
        Properties up=testcases.get(UploadTestcase.class.getName());
        up.setProperty("String_Node_Str",randFiles[i]);
        ut.setProperties(up);
        ut.setConnection(con);
        ut.setCurrentDBName(db);
        Collection<ResultSet> uploadRes=new LinkedList<ResultSet>();
        uploadRes.add(upload);
        ut.addCurrentResults(uploadRes);
        ut.start();
        upload=ut.getResults().iterator().next();
        upload.setFileName(Benchmark.TEMP_RESULT_FILE_NAME + "String_Node_Str" + percents.get(i));
        results.put("String_Node_Str",ut.getResults());
        log.info("String_Node_Str" + db + "String_Node_Str"+ percents.get(i));
      }
      try {
        if (config.get("String_Node_Str") != null && config.get("String_Node_Str") != null) {
          log.info("String_Node_Str");
          warmup(con,String.valueOf(config.get("String_Node_Str")),Long.valueOf(config.get("String_Node_Str")));
          log.info("String_Node_Str");
        }
      }
 catch (      Exception e) {
        log.info("String_Node_Str");
      }
      log.info("String_Node_Str");
      start(con,db,String.valueOf(percents.get(i)));
      if (Boolean.valueOf(config.get("String_Node_Str"))) {
        log.info("String_Node_Str" + config.get("String_Node_Str"));
        con.dropGraph(config.get("String_Node_Str"));
      }
      dbCount++;
    }
    upload.save();
  }
  for (  String key : results.keySet()) {
    for (    ResultSet res : results.get(key)) {
      log.info("String_Node_Str");
      String testCase=key.split("String_Node_Str")[0];
      testCase.replaceAll("String_Node_Str","String_Node_Str");
      String fileSep=File.separator;
      if (fileSep.equals("String_Node_Str")) {
        fileSep=File.separator + File.separator;
      }
      String[] fileName=res.getFileName().split(fileSep);
      new File("String_Node_Str" + File.separator + RESULT_FILE_NAME+ File.separator+ testCase+ File.separator).mkdirs();
      res.setFileName("String_Node_Str" + File.separator + RESULT_FILE_NAME+ File.separator+ testCase+ File.separator+ fileName[fileName.length - 1]);
      res.save();
      res.saveAsPNG();
    }
  }
  log.info("String_Node_Str");
}