Buggy code:
final class IndexFileDeleter { private List < String > deletable ; private Map < String , IndexFileDeleter . RefCount > refCounts = new HashMap < String , IndexFileDeleter . RefCount > ( ) ; private List < IndexFileDeleter . CommitPoint > commits = new ArrayList < IndexFileDeleter . CommitPoint > ( ) ; private List < Collection < String > > lastFiles = new ArrayList < Collection < String > > ( ) ; private List < IndexFileDeleter . CommitPoint > commitsToDelete = new ArrayList < IndexFileDeleter . CommitPoint > ( ) ; private PrintStream infoStream ; private Directory directory ; private IndexDeletionPolicy policy ; private DocumentsWriter docWriter ; final boolean startingCommitDeleted ; public static boolean VERBOSE_REF_COUNTS = false ; void setInfoStream ( PrintStream infoStream ) { } private void message ( String message ) { } public IndexFileDeleter ( Directory directory , IndexDeletionPolicy policy , SegmentInfos segmentInfos , PrintStream infoStream , DocumentsWriter docWriter ) throws IOException , CorruptIndexException { } private void deleteCommits ( ) throws IOException { } public void refresh ( String segmentName ) throws IOException { } public void refresh ( ) throws IOException { } public void close ( ) throws IOException { } private void deletePendingFiles ( ) throws IOException { } public void checkpoint ( SegmentInfos segmentInfos , boolean isCommit ) throws IOException { } void incRef ( SegmentInfos segmentInfos , boolean isCommit ) throws IOException { } void incRef ( List < String > files ) throws IOException { } void incRef ( String fileName ) throws IOException { } void decRef ( Collection < String > files ) throws IOException { } void decRef ( String fileName ) throws IOException { } void decRef ( SegmentInfos segmentInfos ) throws IOException { } private IndexFileDeleter . RefCount getRefCount ( String fileName ) { } void deleteFiles ( List < String > files ) throws IOException { } void deleteNewFiles ( Collection < String > files ) throws IOException { } void deleteFile ( String fileName ) throws IOException { try { if ( ( infoStream ) != null ) { message ( ( ( "delete<seq2seq4repair_space>\"" + fileName ) + "\"" ) ) ; } directory . deleteFile ( fileName ) ; } catch ( IOException e ) { if ( directory . fileExists ( fileName ) ) { if ( ( infoStream ) != null ) { <START_BUG> message ( ( ( ( ( "IndexFileDeleter:<seq2seq4repair_space>unable<seq2seq4repair_space>to<seq2seq4repair_space>remove<seq2seq4repair_space>file<seq2seq4repair_space>\"" + fileName ) + "\":<seq2seq4repair_space>" ) + ( e . toString ( ) ) ) + ";<seq2seq4repair_space>Will<seq2seq4repair_space>re-try<seq2seq4repair_space>later." ) ) ; <END_BUG> } if ( ( deletable ) == null ) { deletable = new ArrayList < String > ( ) ; } deletable . add ( fileName ) ; } } } private static final class RefCount { final String fileName ; boolean initDone ; RefCount ( String fileName ) { } int count ; public int IncRef ( ) { } public int DecRef ( ) { } } private static final class CommitPoint extends IndexCommit implements Comparable < IndexFileDeleter . CommitPoint > { long gen ; Collection < String > files ; String segmentsFileName ; boolean deleted ; Directory directory ; Collection < IndexFileDeleter . CommitPoint > commitsToDelete ; long version ; long generation ; final boolean isOptimized ; final Map < String , String > userData ; public CommitPoint ( Collection < IndexFileDeleter . CommitPoint > commitsToDelete , Directory directory , SegmentInfos segmentInfos ) throws IOException { } @ Override public boolean isOptimized ( ) { } @ Override public String getSegmentsFileName ( ) { } @ Override public Collection < String > getFileNames ( ) throws IOException { } @ Override public Directory getDirectory ( ) { } @ Override public long getVersion ( ) { } @ Override public long getGeneration ( ) { } @ Override public Map < String , String > getUserData ( ) { } @ Override public void delete ( ) { } @ Override public boolean isDeleted ( ) { } public int compareTo ( IndexFileDeleter . CommitPoint commit ) { } } }

Fix:
message ( ( ( ( ( "unable<seq2seq4repair_space>to<seq2seq4repair_space>remove<seq2seq4repair_space>file<seq2seq4repair_space>\"" + fileName ) + "\":<seq2seq4repair_space>" ) + ( e . toString ( ) ) ) + ";<seq2seq4repair_space>Will<seq2seq4repair_space>re-try<seq2seq4repair_space>later." ) ) ;