Class SerialMergeScheduler

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class SerialMergeScheduler
    extends MergeScheduler
    A MergeScheduler that simply does each merge sequentially, using the current thread.
    • Constructor Detail

      • SerialMergeScheduler

        public SerialMergeScheduler()
        Sole constructor.
    • Method Detail

      • merge

        public void merge​(MergeScheduler.MergeSource mergeSource,
                          MergeTrigger trigger)
                   throws java.io.IOException
        Just do the merges in sequence. We do this "synchronized" so that even if the application is using multiple threads, only one merge may run at a time.
        Specified by:
        merge in class MergeScheduler
        Parameters:
        mergeSource - the IndexWriter to obtain the merges from.
        trigger - the MergeTrigger that caused this merge to happen
        Throws:
        java.io.IOException
      • close

        public void close()
        Description copied from class: MergeScheduler
        Close this MergeScheduler.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class MergeScheduler