Program: 84437
Project: 84437
Buggy source:
public static void main(String[] args) throws IOException {
  System.out.println(Arrays.toString(args));
  final JEEventScheduler scheduler=new JEEventScheduler();
  String traceFile=args[0];
  String placement_police=args[1];
  String num_machines=args[2];
  String homeless=args[3];
  String migration_prob=args[4];
  String enableMigration=args[5];
  long replicationDelayMillis=Long.parseLong(args[6]) * 1000;
  DataPlacementAlgorithm placement=createPlacementPolice(placement_police);
  Integer numberOfMachines=new Integer(num_machines);
  long diskSize=1024 * 1024 * 1024* 1L;
  FileSizeDistribution fileSizeDistribution=new FileSizeDistribution(8.46,2.38,diskSize);
  List<Machine> machines=createMachines(scheduler,numberOfMachines);
  List<DataServer> dataServers=createDataServers(scheduler,numberOfMachines,diskSize,machines);
  MetadataServer metadataServer=new MetadataServer(scheduler,dataServers,placement,fileSizeDistribution,new NOPAlgorithm());
  List<DDGClient> clients=createClients(scheduler,numberOfMachines,machines,metadataServer);
  LoginAlgorithm loginAlgorithm=createLoginAlgorithm(new Boolean(homeless),new Double(migration_prob),MetadataServer.ONE_DAY,clients);
  SeerParserAndEventInjector injector=new SeerParserAndEventInjector(new File(traceFile),loginAlgorithm);
  EmulatorControl control=EmulatorControl.build(scheduler,injector,metadataServer,new Boolean(enableMigration),replicationDelayMillis);
  metadataServer.populateNamespace(0,2,dataServers);
  control.scheduleNext();
  scheduler.start();
  System.out.println(Aggregator.getInstance());
}

Fixed version (ground truth):
public static void main(String[] args) throws IOException {
  System.out.println(Arrays.toString(args));
  final JEEventScheduler scheduler=new JEEventScheduler();
  String traceFile=args[0];
  String placement_police=args[1];
  String num_machines=args[2];
  String homeless=args[3];
  String migration_prob=args[4];
  String enableMigration=args[5];
  long replicationDelayMillis=Long.parseLong(args[6]) * 1000;
  DataPlacementAlgorithm placement=createPlacementPolice(placement_police);
  Integer numberOfMachines=new Integer(num_machines);
  long diskSize=1024 * 1024 * 1024* 1L;
  FileSizeDistribution fileSizeDistribution=new FileSizeDistribution(8.46,2.38,diskSize);
  List<Machine> machines=createMachines(scheduler,numberOfMachines);
  List<DataServer> dataServers=createDataServers(scheduler,numberOfMachines,diskSize,machines);
  MetadataServer metadataServer=new MetadataServer(scheduler,dataServers,placement,fileSizeDistribution,new NOPAlgorithm());
  List<DDGClient> clients=createClients(scheduler,numberOfMachines,machines,metadataServer);
  LoginAlgorithm loginAlgorithm=createLoginAlgorithm(Boolean.valueOf(homeless),new Double(migration_prob),MetadataServer.ONE_DAY,clients);
  SeerParserAndEventInjector injector=new SeerParserAndEventInjector(new File(traceFile),loginAlgorithm);
  EmulatorControl control=EmulatorControl.build(scheduler,injector,metadataServer,Boolean.valueOf(enableMigration),replicationDelayMillis);
  metadataServer.populateNamespace(0,2,dataServers);
  control.scheduleNext();
  scheduler.start();
  System.out.println(Aggregator.getInstance());
}