Program: 82571
Project: 82571
Buggy source:
public static void startCollecting(String uriString,JdbcTemplate jdbc){
  try {
    System.out.println("String_Node_Str");
    URI uri=new URI(uriString);
    FileSystem fileSystem=FileSystem.get(uri,new Configuration());
    System.out.println(fileSystem.getClass());
    if (fileSystem instanceof DistributedFileSystem) {
      DistributedFileSystem dfs=(DistributedFileSystem)fileSystem;
      DiskStatus ds=dfs.getDiskStatus();
      long capacity=ds.getCapacity();
      long used=ds.getDfsUsed();
      long remaining=ds.getRemaining();
      long presentCapacity=used + remaining;
      System.out.println("String_Node_Str" + capacity);
      System.out.println("String_Node_Str" + presentCapacity);
      System.out.println("String_Node_Str" + remaining);
      System.out.println("String_Node_Str" + used);
      System.out.println("String_Node_Str" + (((1.0 * used) / presentCapacity) * 100) + "String_Node_Str");
      System.out.println("String_Node_Str" + dfs.getUnderReplicatedBlocksCount());
      System.out.println("String_Node_Str" + dfs.getCorruptBlocksCount());
      System.out.println("String_Node_Str" + dfs.getMissingBlocksCount());
      System.out.println();
      System.out.println("String_Node_Str");
      DatanodeInfo[] live=dfs.getClient().datanodeReport(DatanodeReportType.LIVE);
      DatanodeInfo[] dead=dfs.getClient().datanodeReport(DatanodeReportType.DEAD);
      System.out.println("String_Node_Str" + live.length + "String_Node_Str"+ (live.length + dead.length)+ "String_Node_Str"+ dead.length+ "String_Node_Str");
    }
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
}

Fixed version (ground truth):
public static void startCollecting(final String uriString,final JdbcTemplate jdbc){
  try {
    System.out.println("String_Node_Str");
    new Thread(new Runnable(){
      @Override public void run(){
        try {
          URI uri=new URI(uriString);
          FileSystem fileSystem=FileSystem.get(uri,new Configuration());
          System.out.println(fileSystem.getClass());
          if (fileSystem instanceof DistributedFileSystem) {
            DistributedFileSystem dfs=(DistributedFileSystem)fileSystem;
            DiskStatus ds=dfs.getDiskStatus();
            long capacity=ds.getCapacity();
            long used=ds.getDfsUsed();
            long remaining=ds.getRemaining();
            long presentCapacity=used + remaining;
            System.out.println("String_Node_Str" + capacity);
            System.out.println("String_Node_Str" + presentCapacity);
            System.out.println("String_Node_Str" + remaining);
            System.out.println("String_Node_Str" + used);
            System.out.println("String_Node_Str" + (((1.0 * used) / presentCapacity) * 100) + "String_Node_Str");
            System.out.println("String_Node_Str" + dfs.getUnderReplicatedBlocksCount());
            System.out.println("String_Node_Str" + dfs.getCorruptBlocksCount());
            System.out.println("String_Node_Str" + dfs.getMissingBlocksCount());
            System.out.println();
            System.out.println("String_Node_Str");
            DatanodeInfo[] live=dfs.getClient().datanodeReport(DatanodeReportType.LIVE);
            DatanodeInfo[] dead=dfs.getClient().datanodeReport(DatanodeReportType.DEAD);
            System.out.println("String_Node_Str" + live.length + "String_Node_Str"+ (live.length + dead.length)+ "String_Node_Str"+ dead.length+ "String_Node_Str");
          }
        }
 catch (        Exception e) {
          e.printStackTrace();
        }
      }
    }
).start();
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
}