Program: 172173
Project: 172173
Buggy source:
public void testLayeredFolder4() throws Exception {
  Logger lg1=null;
  Level l1=null;
  Logger lg2=null;
  Level l2=null;
  try {
    lg1=Logger.getLogger("String_Node_Str");
    l1=lg1.getLevel();
    lg1.setLevel(Level.DEBUG);
    lg2=Logger.getLogger("String_Node_Str");
    l2=lg2.getLevel();
    lg2.setLevel(Level.DEBUG);
    logger.debug("String_Node_Str");
    fService.createStore("String_Node_Str");
    fService.createStore("String_Node_Str");
    fService.createStore("String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createLayeredDirectory("String_Node_Str","String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createLayeredDirectory("String_Node_Str","String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    List<AVMDifference> diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(1,diffs.size());
    assertEquals("String_Node_Str",diffs.toString());
    fSyncService.update(diffs,null,false,false,false,false,"String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fSyncService.flatten("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createFile("String_Node_Str","String_Node_Str");
    PrintStream out=new PrintStream(fService.getFileOutputStream("String_Node_Str"));
    out.println("String_Node_Str");
    out.close();
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createStore("String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createLayeredDirectory("String_Node_Str","String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(0,diffs.size());
    diffs=new ArrayList<AVMDifference>(1);
    diffs.add(new AVMDifference(-1,"String_Node_Str",-1,"String_Node_Str",AVMDifference.NEWER));
    assertNotNull(fService.lookup(-1,"String_Node_Str"));
    fSyncService.update(diffs,null,false,false,false,false,null,null);
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals("String_Node_Str",diffs.toString());
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals("String_Node_Str",diffs.toString());
    fSyncService.update(diffs,null,false,false,true,true,"String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fSyncService.flatten("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(0,diffs.size());
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(0,diffs.size());
    logger.debug("String_Node_Str");
  }
 catch (  Exception e) {
    e.printStackTrace(System.err);
    throw e;
  }
 finally {
    fService.purgeStore("String_Node_Str");
    fService.purgeStore("String_Node_Str");
    fService.purgeStore("String_Node_Str");
    if (fService.getStore("String_Node_Str") != null) {
      fService.purgeStore("String_Node_Str");
    }
    lg1.setLevel(l1);
    lg2.setLevel(l2);
  }
}

Fixed version (ground truth):
public void testLayeredFolder4() throws Exception {
  try {
    logger.debug("String_Node_Str");
    fService.createStore("String_Node_Str");
    fService.createStore("String_Node_Str");
    fService.createStore("String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createLayeredDirectory("String_Node_Str","String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createLayeredDirectory("String_Node_Str","String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createDirectory("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    List<AVMDifference> diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(1,diffs.size());
    assertEquals("String_Node_Str",diffs.toString());
    fSyncService.update(diffs,null,false,false,false,false,"String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fSyncService.flatten("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createFile("String_Node_Str","String_Node_Str");
    PrintStream out=new PrintStream(fService.getFileOutputStream("String_Node_Str"));
    out.println("String_Node_Str");
    out.close();
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createStore("String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fService.createLayeredDirectory("String_Node_Str","String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(0,diffs.size());
    diffs=new ArrayList<AVMDifference>(1);
    diffs.add(new AVMDifference(-1,"String_Node_Str",-1,"String_Node_Str",AVMDifference.NEWER));
    assertNotNull(fService.lookup(-1,"String_Node_Str"));
    fSyncService.update(diffs,null,false,false,false,false,null,null);
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals("String_Node_Str",diffs.toString());
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals("String_Node_Str",diffs.toString());
    fSyncService.update(diffs,null,false,false,true,true,"String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    fSyncService.flatten("String_Node_Str","String_Node_Str");
    logger.debug("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    recursiveList("String_Node_Str");
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(0,diffs.size());
    diffs=fSyncService.compare(-1,"String_Node_Str",-1,"String_Node_Str",null);
    assertEquals(0,diffs.size());
    logger.debug("String_Node_Str");
  }
 catch (  Exception e) {
    e.printStackTrace(System.err);
    throw e;
  }
 finally {
    fService.purgeStore("String_Node_Str");
    fService.purgeStore("String_Node_Str");
    fService.purgeStore("String_Node_Str");
    if (fService.getStore("String_Node_Str") != null) {
      fService.purgeStore("String_Node_Str");
    }
  }
}