Package org.apache.lucene.index
Class NoMergeScheduler
- java.lang.Object
-
- org.apache.lucene.index.MergeScheduler
-
- org.apache.lucene.index.NoMergeScheduler
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
public final class NoMergeScheduler extends MergeScheduler
AMergeScheduler
which never executes any merges. It is also a singleton and can be accessed throughINSTANCE
. Use it if you want to prevent anIndexWriter
from ever executing merges, regardless of theMergePolicy
used. Note that you can achieve the same thing by usingNoMergePolicy
, however withNoMergeScheduler
you also ensure that no unnecessary code of anyMergeScheduler
implementation is ever executed. Hence it is recommended to use both if you want to disable merges from ever happening.
-
-
Field Summary
Fields Modifier and Type Field Description static MergeScheduler
INSTANCE
The single instance ofNoMergeScheduler
-
Fields inherited from class org.apache.lucene.index.MergeScheduler
infoStream
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MergeScheduler
clone()
void
close()
Close this MergeScheduler.void
merge(IndexWriter writer, MergeTrigger trigger, boolean newMergesFound)
Run the merges provided byIndexWriter.getNextMerge()
.Directory
wrapForMerge(MergePolicy.OneMerge merge, Directory in)
Wraps the incomingDirectory
so that we can merge-throttle it usingRateLimitedIndexOutput
.-
Methods inherited from class org.apache.lucene.index.MergeScheduler
message, verbose
-
-
-
-
Field Detail
-
INSTANCE
public static final MergeScheduler INSTANCE
The single instance ofNoMergeScheduler
-
-
Method Detail
-
close
public void close()
Description copied from class:MergeScheduler
Close this MergeScheduler.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classMergeScheduler
-
merge
public void merge(IndexWriter writer, MergeTrigger trigger, boolean newMergesFound)
Description copied from class:MergeScheduler
Run the merges provided byIndexWriter.getNextMerge()
.- Specified by:
merge
in classMergeScheduler
- Parameters:
writer
- theIndexWriter
to obtain the merges from.trigger
- theMergeTrigger
that caused this merge to happennewMergesFound
-true
iff any new merges were found by the caller otherwisefalse
-
wrapForMerge
public Directory wrapForMerge(MergePolicy.OneMerge merge, Directory in)
Description copied from class:MergeScheduler
Wraps the incomingDirectory
so that we can merge-throttle it usingRateLimitedIndexOutput
.- Overrides:
wrapForMerge
in classMergeScheduler
-
clone
public MergeScheduler clone()
-
-