public class LogByteSizeMergePolicy extends LogMergePolicy
LogMergePolicy
that measures size of a
segment as the total byte size of the segment's files.MergePolicy.MergeAbortedException, MergePolicy.MergeException, MergePolicy.MergeSpecification, MergePolicy.OneMerge
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_MAX_MERGE_MB
Default maximum segment size.
|
static double |
DEFAULT_MAX_MERGE_MB_FOR_FORCED_MERGE
Default maximum segment size.
|
static double |
DEFAULT_MIN_MERGE_MB
Default minimum segment size.
|
calibrateSizeByDeletes, DEFAULT_MAX_MERGE_DOCS, DEFAULT_MERGE_FACTOR, DEFAULT_NO_CFS_RATIO, LEVEL_LOG_SPAN, maxMergeDocs, maxMergeSize, maxMergeSizeForForcedMerge, mergeFactor, minMergeSize, noCFSRatio, useCompoundFile
writer
Constructor and Description |
---|
LogByteSizeMergePolicy() |
Modifier and Type | Method and Description |
---|---|
double |
getMaxMergeMB()
Returns the largest segment (measured by total byte
size of the segment's files, in MB) that may be merged
with other segments.
|
double |
getMaxMergeMBForForcedMerge()
Returns the largest segment (measured by total byte
size of the segment's files, in MB) that may be merged
with other segments during forceMerge.
|
double |
getMaxMergeMBForOptimize()
Deprecated.
Renamed to
getMaxMergeMBForForcedMerge() |
double |
getMinMergeMB()
Get the minimum size for a segment to remain
un-merged.
|
void |
setMaxMergeMB(double mb)
Determines the largest segment (measured by total
byte size of the segment's files, in MB) that may be
merged with other segments.
|
void |
setMaxMergeMBForForcedMerge(double mb)
Determines the largest segment (measured by total
byte size of the segment's files, in MB) that may be
merged with other segments during forceMerge.
|
void |
setMaxMergeMBForOptimize(double mb)
Deprecated.
Renamed to
setMaxMergeMBForForcedMerge(double) |
void |
setMinMergeMB(double mb)
Sets the minimum size for the lowest level segments.
|
protected long |
size(SegmentInfo info) |
close, findForcedDeletesMerges, findForcedMerges, findMerges, getCalibrateSizeByDeletes, getMaxMergeDocs, getMergeFactor, getNoCFSRatio, getUseCompoundFile, isMerged, isMerged, message, setCalibrateSizeByDeletes, setMaxMergeDocs, setMergeFactor, setNoCFSRatio, setUseCompoundFile, sizeBytes, sizeDocs, toString, useCompoundFile, verbose
setIndexWriter
public static final double DEFAULT_MIN_MERGE_MB
public static final double DEFAULT_MAX_MERGE_MB
public static final double DEFAULT_MAX_MERGE_MB_FOR_FORCED_MERGE
protected long size(SegmentInfo info) throws IOException
size
in class LogMergePolicy
IOException
public void setMaxMergeMB(double mb)
Determines the largest segment (measured by total byte size of the segment's files, in MB) that may be merged with other segments. Small values (e.g., less than 50 MB) are best for interactive indexing, as this limits the length of pauses while indexing to a few seconds. Larger values are best for batched indexing and speedier searches.
Note that LogMergePolicy.setMaxMergeDocs(int)
is also
used to check whether a segment is too large for
merging (it's either or).
public double getMaxMergeMB()
setMaxMergeMB(double)
@Deprecated public void setMaxMergeMBForOptimize(double mb)
setMaxMergeMBForForcedMerge(double)
public void setMaxMergeMBForForcedMerge(double mb)
Determines the largest segment (measured by total
byte size of the segment's files, in MB) that may be
merged with other segments during forceMerge. Setting
it low will leave the index with more than 1 segment,
even if IndexWriter.forceMerge(int)
is called.
@Deprecated public double getMaxMergeMBForOptimize()
getMaxMergeMBForForcedMerge()
public double getMaxMergeMBForForcedMerge()
setMaxMergeMBForForcedMerge(double)
public void setMinMergeMB(double mb)
public double getMinMergeMB()
setMinMergeMB(double)