Program: 82319
Project: 82319
Buggy source:
private IndexAction getIndexAction(final List<HdfsDirectory> indexesToImport,final FileSystem fileSystem){
  return new IndexAction(){
    private Path _dirPath;
    @Override public void performMutate(    IndexSearcherClosable searcher,    IndexWriter writer) throws IOException {
      for (      Directory directory : indexesToImport) {
        LOG.info("String_Node_Str",directory,_shard,_table);
      }
      LOG.info("String_Node_Str",_shard,_table);
      for (      HdfsDirectory directory : indexesToImport) {
        boolean emitDeletes=searcher.getIndexReader().numDocs() != 0;
        _dirPath=directory.getPath();
        applyDeletes(directory,writer,_shard,emitDeletes);
        LOG.info("String_Node_Str",directory,_shard,_table);
        writer.addIndexes(directory);
        LOG.info("String_Node_Str",directory,_shard,_table);
        writer.deleteDocuments(new Term(BlurConstants.DELETE_MARKER,BlurConstants.DELETE_MARKER_VALUE));
        LOG.info("String_Node_Str",directory,_shard,_table);
      }
    }
    @Override public void doPreCommit(    IndexSearcherClosable indexSearcher,    BlurIndexWriter writer) throws IOException {
    }
    @Override public void doPostCommit(    BlurIndexWriter writer) throws IOException {
      LOG.info("String_Node_Str",_dirPath,_shard,_table);
      writer.maybeMerge();
      LOG.info("String_Node_Str",_dirPath,_shard,_table);
      fileSystem.delete(_dirPath,true);
      LOG.info("String_Node_Str",_shard,_table);
    }
    @Override public void doPreRollback(    BlurIndexWriter writer) throws IOException {
      LOG.info("String_Node_Str",_shard,_table);
    }
    @Override public void doPostRollback(    BlurIndexWriter writer) throws IOException {
      LOG.info("String_Node_Str",_shard,_table);
      String name=_dirPath.getName();
      int lastIndexOf=name.lastIndexOf('.');
      String badRowIdsName=name.substring(0,lastIndexOf) + "String_Node_Str";
      fileSystem.rename(_dirPath,new Path(_dirPath.getParent(),badRowIdsName));
    }
  }
;
}

Fixed version (ground truth):
private IndexAction getIndexAction(final List<HdfsDirectory> indexesToImport,final FileSystem fileSystem){
  return new IndexAction(){
    private Path _dirPath;
    @Override public void performMutate(    IndexSearcherClosable searcher,    IndexWriter writer) throws IOException {
      for (      Directory directory : indexesToImport) {
        LOG.info("String_Node_Str",directory,_shard,_table);
      }
      LOG.info("String_Node_Str",_shard,_table);
      for (      HdfsDirectory directory : indexesToImport) {
        boolean emitDeletes=searcher.getIndexReader().numDocs() != 0;
        _dirPath=directory.getPath();
        applyDeletes(directory,writer,_shard,emitDeletes);
        LOG.info("String_Node_Str",directory,_shard,_table);
        writer.addIndexes(directory);
        LOG.info("String_Node_Str",directory,_shard,_table);
        writer.deleteDocuments(new Term(BlurConstants.DELETE_MARKER,BlurConstants.DELETE_MARKER_VALUE));
        LOG.info("String_Node_Str",directory,_shard,_table);
      }
    }
    @Override public void doPreCommit(    IndexSearcherClosable indexSearcher,    IndexWriter writer) throws IOException {
    }
    @Override public void doPostCommit(    IndexWriter writer) throws IOException {
      LOG.info("String_Node_Str",_dirPath,_shard,_table);
      writer.maybeMerge();
      LOG.info("String_Node_Str",_dirPath,_shard,_table);
      fileSystem.delete(_dirPath,true);
      LOG.info("String_Node_Str",_shard,_table);
    }
    @Override public void doPreRollback(    IndexWriter writer) throws IOException {
      LOG.info("String_Node_Str",_shard,_table);
    }
    @Override public void doPostRollback(    IndexWriter writer) throws IOException {
      LOG.info("String_Node_Str",_shard,_table);
      String name=_dirPath.getName();
      int lastIndexOf=name.lastIndexOf('.');
      String badRowIdsName=name.substring(0,lastIndexOf) + "String_Node_Str";
      fileSystem.rename(_dirPath,new Path(_dirPath.getParent(),badRowIdsName));
    }
  }
;
}