Program: 50481
Project: 50481
Buggy source:
private void handleCommand(String command){
  if (echo) {
    if (Thread.currentThread().getName().toLowerCase().indexOf("String_Node_Str") < 0)     System.out.println("String_Node_Str" + Thread.currentThread().getName() + "String_Node_Str"+ command);
 else     System.out.println(command);
  }
  if (command == null || command.startsWith("String_Node_Str"))   return;
  command=command.trim();
  if (command == null || command.length() == 0) {
    return;
  }
  String first=command;
  int spaceIndex=command.indexOf(' ');
  String[] argsSplit=command.split("String_Node_Str");
  String[] args=new String[argsSplit.length];
  for (int i=0; i < argsSplit.length; i++) {
    args[i]=argsSplit[i].trim();
  }
  if (spaceIndex != -1) {
    first=args[0];
  }
  if (command.startsWith("String_Node_Str")) {
    handleHelp(command);
  }
 else   if (first.startsWith("String_Node_Str") && first.length() > 1) {
    int repeat=Integer.parseInt(first.substring(1));
    long t0=System.currentTimeMillis();
    for (int i=0; i < repeat; i++) {
      handleCommand(command.substring(first.length()).replaceAll("String_Node_Str","String_Node_Str" + i));
    }
    System.out.println("String_Node_Str" + repeat * 1000 / (System.currentTimeMillis() - t0));
    return;
  }
 else   if (first.startsWith("String_Node_Str") && first.length() > 1) {
    final int fork=Integer.parseInt(first.substring(1));
    ExecutorService pool=Executors.newFixedThreadPool(fork);
    final String threadCommand=command.substring(first.length());
    for (int i=0; i < fork; i++) {
      final int threadID=i;
      pool.submit(new Runnable(){
        public void run(){
          String command=threadCommand;
          String[] threadArgs=command.replaceAll("String_Node_Str","String_Node_Str" + threadID).trim().split("String_Node_Str");
          if ("String_Node_Str".equals(threadArgs[0]) || "String_Node_Str".equals(threadArgs[0])) {
            if (threadArgs.length < 4) {
              command+="String_Node_Str" + Integer.parseInt(threadArgs[1]) * threadID;
            }
          }
          handleCommand(command);
        }
      }
);
    }
    pool.shutdown();
    try {
      pool.awaitTermination(60 * 60,TimeUnit.SECONDS);
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
 else   if (first.startsWith("String_Node_Str")) {
    if (first.length() == 1) {
      System.out.println("String_Node_Str");
      return;
    }
    File f=new File(first.substring(1));
    System.out.println("String_Node_Str" + f.getAbsolutePath());
    if (f.exists()) {
      try {
        BufferedReader br=new BufferedReader(new FileReader(f));
        String l=br.readLine();
        while (l != null) {
          handleCommand(l);
          l=br.readLine();
        }
        br.close();
      }
 catch (      IOException e) {
        e.printStackTrace();
      }
    }
 else {
      System.out.println("String_Node_Str" + f.getAbsolutePath());
    }
  }
 else   if (command.indexOf(';') != -1) {
    StringTokenizer st=new StringTokenizer(command,"String_Node_Str");
    while (st.hasMoreTokens()) {
      handleCommand(st.nextToken());
    }
    return;
  }
 else   if ("String_Node_Str".equals(first)) {
    silent=Boolean.parseBoolean(args[1]);
  }
 else   if ("String_Node_Str".equals(first)) {
    Hazelcast.restart();
  }
 else   if ("String_Node_Str".equals(first)) {
    Hazelcast.shutdown();
  }
 else   if ("String_Node_Str".equals(first)) {
    echo=Boolean.parseBoolean(args[1]);
  }
 else   if ("String_Node_Str".equals(first)) {
    if (args.length > 1) {
      namespace=args[1];
      queue=Hazelcast.getQueue(namespace);
      topic=Hazelcast.getTopic(namespace);
      map=Hazelcast.getMap(namespace);
      set=Hazelcast.getSet(namespace);
      list=Hazelcast.getList(namespace);
    }
  }
 else   if ("String_Node_Str".equals(first)) {
    System.out.println(Hazelcast.getCluster().getLocalMember());
  }
 else   if ("String_Node_Str".equals(first)) {
    System.out.println(Hazelcast.getCluster());
  }
 else   if ("String_Node_Str".equals(first)) {
    System.gc();
    System.out.println("String_Node_Str" + Runtime.getRuntime().maxMemory() / 1024 / 1024 + "String_Node_Str");
    System.out.println("String_Node_Str" + Runtime.getRuntime().freeMemory() / 1024 / 1024 + "String_Node_Str" + (int)(Runtime.getRuntime().freeMemory() * 100 / Runtime.getRuntime().maxMemory()) + "String_Node_Str");
    System.out.println("String_Node_Str" + Runtime.getRuntime().availableProcessors());
    System.out.println("String_Node_Str" + ManagementFactory.getOperatingSystemMXBean().getArch() + "String_Node_Str"+ ManagementFactory.getOperatingSystemMXBean().getName()+ "String_Node_Str"+ ManagementFactory.getOperatingSystemMXBean().getVersion());
    System.out.println("String_Node_Str" + ManagementFactory.getRuntimeMXBean().getVmVendor() + "String_Node_Str"+ ManagementFactory.getRuntimeMXBean().getVmName()+ "String_Node_Str"+ ManagementFactory.getRuntimeMXBean().getVmVersion());
  }
 else   if (first.indexOf("String_Node_Str") != -1 && first.indexOf("String_Node_Str") == -1) {
    handleLock(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleSize(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleClear(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleDestroy(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleIterator(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleContains(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleTopicPublish(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQOffer(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQPoll(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQPeek(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQOfferMany(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQPollMany(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetAdd(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetRemove(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetAddMany(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetRemoveMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapReplace(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapPutIfAbsent(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapPut(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapGet(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    handleMapGetMapEntry(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapRemove(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapPutMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapGetMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapRemoveMany(args);
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapKeys();
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapValues();
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapEntries();
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapLock(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapTryLock(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapUnlock(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleAddListener(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleRemoveListener(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapUnlock(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleListAdd(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleListAddMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleListRemove(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleListContains(args);
  }
 else   if (first.equals("String_Node_Str")) {
    execute(args);
  }
 else   if (first.equals("String_Node_Str")) {
    Hazelcast.getTransaction().begin();
  }
 else   if (first.equals("String_Node_Str")) {
    Hazelcast.getTransaction().commit();
  }
 else   if (first.equals("String_Node_Str")) {
    Hazelcast.getTransaction().rollback();
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    executeOnKey(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    executeOnMember(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    executeOnMembers(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str") || first.equalsIgnoreCase("String_Node_Str")) {
    executeLongTaskOnOtherMember(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str") || first.equalsIgnoreCase("String_Node_Str")) {
    executeLong(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    handleInstances(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str") || first.equalsIgnoreCase("String_Node_Str")) {
    System.exit(0);
  }
 else {
    print("String_Node_Str");
  }
}

Fixed version (ground truth):
private void handleCommand(String command){
  if (echo) {
    if (Thread.currentThread().getName().toLowerCase().indexOf("String_Node_Str") < 0)     System.out.println("String_Node_Str" + Thread.currentThread().getName() + "String_Node_Str"+ command);
 else     System.out.println(command);
  }
  if (command == null || command.startsWith("String_Node_Str"))   return;
  command=command.trim();
  if (command == null || command.length() == 0) {
    return;
  }
  String first=command;
  int spaceIndex=command.indexOf(' ');
  String[] argsSplit=command.split("String_Node_Str");
  String[] args=new String[argsSplit.length];
  for (int i=0; i < argsSplit.length; i++) {
    args[i]=argsSplit[i].trim();
  }
  if (spaceIndex != -1) {
    first=args[0];
  }
  if (command.startsWith("String_Node_Str")) {
    handleHelp(command);
  }
 else   if (first.startsWith("String_Node_Str") && first.length() > 1) {
    int repeat=Integer.parseInt(first.substring(1));
    long t0=System.currentTimeMillis();
    for (int i=0; i < repeat; i++) {
      handleCommand(command.substring(first.length()).replaceAll("String_Node_Str","String_Node_Str" + i));
    }
    System.out.println("String_Node_Str" + repeat * 1000 / (System.currentTimeMillis() - t0));
    return;
  }
 else   if (first.startsWith("String_Node_Str") && first.length() > 1) {
    final int fork=Integer.parseInt(first.substring(1));
    ExecutorService pool=Executors.newFixedThreadPool(fork);
    final String threadCommand=command.substring(first.length());
    for (int i=0; i < fork; i++) {
      final int threadID=i;
      pool.submit(new Runnable(){
        public void run(){
          String command=threadCommand;
          String[] threadArgs=command.replaceAll("String_Node_Str","String_Node_Str" + threadID).trim().split("String_Node_Str");
          if ("String_Node_Str".equals(threadArgs[0]) || "String_Node_Str".equals(threadArgs[0])) {
            if (threadArgs.length < 4) {
              command+="String_Node_Str" + Integer.parseInt(threadArgs[1]) * threadID;
            }
          }
          handleCommand(command);
        }
      }
);
    }
    pool.shutdown();
    try {
      pool.awaitTermination(60 * 60,TimeUnit.SECONDS);
    }
 catch (    Exception e) {
      e.printStackTrace();
    }
  }
 else   if (first.startsWith("String_Node_Str")) {
    if (first.length() == 1) {
      System.out.println("String_Node_Str");
      return;
    }
    File f=new File(first.substring(1));
    System.out.println("String_Node_Str" + f.getAbsolutePath());
    if (f.exists()) {
      try {
        BufferedReader br=new BufferedReader(new FileReader(f));
        String l=br.readLine();
        while (l != null) {
          handleCommand(l);
          l=br.readLine();
        }
        br.close();
      }
 catch (      IOException e) {
        e.printStackTrace();
      }
    }
 else {
      System.out.println("String_Node_Str" + f.getAbsolutePath());
    }
  }
 else   if (command.indexOf(';') != -1) {
    StringTokenizer st=new StringTokenizer(command,"String_Node_Str");
    while (st.hasMoreTokens()) {
      handleCommand(st.nextToken());
    }
    return;
  }
 else   if ("String_Node_Str".equals(first)) {
    silent=Boolean.parseBoolean(args[1]);
  }
 else   if ("String_Node_Str".equals(first)) {
    Hazelcast.restart();
  }
 else   if ("String_Node_Str".equals(first)) {
    Hazelcast.shutdown();
  }
 else   if ("String_Node_Str".equals(first)) {
    echo=Boolean.parseBoolean(args[1]);
  }
 else   if ("String_Node_Str".equals(first)) {
    if (args.length > 1) {
      namespace=args[1];
      queue=Hazelcast.getQueue(namespace);
      topic=Hazelcast.getTopic(namespace);
      map=Hazelcast.getMap(namespace);
      set=Hazelcast.getSet(namespace);
      list=Hazelcast.getList(namespace);
    }
  }
 else   if ("String_Node_Str".equals(first)) {
    System.out.println(Hazelcast.getCluster().getLocalMember());
  }
 else   if ("String_Node_Str".equals(first)) {
    System.out.println(Hazelcast.getCluster());
  }
 else   if ("String_Node_Str".equals(first)) {
    System.gc();
    System.out.println("String_Node_Str" + Runtime.getRuntime().maxMemory() / 1024 / 1024 + "String_Node_Str");
    System.out.println("String_Node_Str" + Runtime.getRuntime().freeMemory() / 1024 / 1024 + "String_Node_Str" + (int)(Runtime.getRuntime().freeMemory() * 100 / Runtime.getRuntime().maxMemory()) + "String_Node_Str");
    System.out.println("String_Node_Str" + Runtime.getRuntime().availableProcessors());
    System.out.println("String_Node_Str" + ManagementFactory.getOperatingSystemMXBean().getArch() + "String_Node_Str"+ ManagementFactory.getOperatingSystemMXBean().getName()+ "String_Node_Str"+ ManagementFactory.getOperatingSystemMXBean().getVersion());
    System.out.println("String_Node_Str" + ManagementFactory.getRuntimeMXBean().getVmVendor() + "String_Node_Str"+ ManagementFactory.getRuntimeMXBean().getVmName()+ "String_Node_Str"+ ManagementFactory.getRuntimeMXBean().getVmVersion());
  }
 else   if (first.indexOf("String_Node_Str") != -1 && first.indexOf("String_Node_Str") == -1) {
    handleLock(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleSize(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleClear(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleDestroy(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleIterator(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleContains(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleTopicPublish(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQOffer(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQPoll(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQPeek(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQOfferMany(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleQPollMany(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetAdd(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetRemove(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetAddMany(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleSetRemoveMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapReplace(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapPutIfAbsent(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapPut(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapGet(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    handleMapGetMapEntry(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapRemove(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapPutMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapGetMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapRemoveMany(args);
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapLocalKeys();
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapKeys();
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapValues();
  }
 else   if (command.equals("String_Node_Str")) {
    handleMapEntries();
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapLock(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapTryLock(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapUnlock(args);
  }
 else   if (first.indexOf("String_Node_Str") != -1) {
    handleAddListener(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleRemoveListener(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleMapUnlock(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleListAdd(args);
  }
 else   if ("String_Node_Str".equals(first)) {
    handleListAddMany(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleListRemove(args);
  }
 else   if (first.equals("String_Node_Str")) {
    handleListContains(args);
  }
 else   if (first.equals("String_Node_Str")) {
    execute(args);
  }
 else   if (first.equals("String_Node_Str")) {
    Hazelcast.getTransaction().begin();
  }
 else   if (first.equals("String_Node_Str")) {
    Hazelcast.getTransaction().commit();
  }
 else   if (first.equals("String_Node_Str")) {
    Hazelcast.getTransaction().rollback();
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    executeOnKey(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    executeOnMember(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    executeOnMembers(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str") || first.equalsIgnoreCase("String_Node_Str")) {
    executeLongTaskOnOtherMember(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str") || first.equalsIgnoreCase("String_Node_Str")) {
    executeLong(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str")) {
    handleInstances(args);
  }
 else   if (first.equalsIgnoreCase("String_Node_Str") || first.equalsIgnoreCase("String_Node_Str")) {
    System.exit(0);
  }
 else {
    print("String_Node_Str");
  }
}