public class BalancedSegmentMergePolicy
extends org.apache.lucene.index.LogByteSizeMergePolicy
This is based on code from zoie, described in more detail at http://code.google.com/p/zoie/wiki/ZoieMergePolicy.
Modifier and Type | Class and Description |
---|---|
static class |
BalancedSegmentMergePolicy.MergePolicyParams
Specifies configuration parameters for BalancedSegmentMergePolicy.
|
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_NUM_LARGE_SEGMENTS |
DEFAULT_MAX_MERGE_MB, DEFAULT_MAX_MERGE_MB_FOR_FORCED_MERGE, DEFAULT_MIN_MERGE_MB
Constructor and Description |
---|
BalancedSegmentMergePolicy() |
Modifier and Type | Method and Description |
---|---|
org.apache.lucene.index.MergePolicy.MergeSpecification |
findForcedDeletesMerges(org.apache.lucene.index.SegmentInfos infos) |
org.apache.lucene.index.MergePolicy.MergeSpecification |
findForcedMerges(org.apache.lucene.index.SegmentInfos infos,
int maxNumSegments,
Map<org.apache.lucene.index.SegmentInfo,Boolean> segmentsToMerge) |
org.apache.lucene.index.MergePolicy.MergeSpecification |
findMerges(org.apache.lucene.index.SegmentInfos infos) |
int |
getMaxSmallSegments() |
int |
getNumLargeSegments() |
boolean |
getPartialExpunge() |
void |
setMaxSmallSegments(int maxSmallSegments) |
void |
setMergeFactor(int mergeFactor) |
void |
setMergePolicyParams(BalancedSegmentMergePolicy.MergePolicyParams params) |
void |
setNumLargeSegments(int numLargeSegments) |
void |
setPartialExpunge(boolean doPartialExpunge) |
protected long |
size(org.apache.lucene.index.SegmentInfo info) |
getMaxMergeMB, getMaxMergeMBForForcedMerge, getMaxMergeMBForOptimize, getMinMergeMB, setMaxMergeMB, setMaxMergeMBForForcedMerge, setMaxMergeMBForOptimize, setMinMergeMB
close, getCalibrateSizeByDeletes, getMaxMergeDocs, getMergeFactor, getNoCFSRatio, getUseCompoundFile, isMerged, isMerged, message, setCalibrateSizeByDeletes, setMaxMergeDocs, setNoCFSRatio, setUseCompoundFile, sizeBytes, sizeDocs, toString, useCompoundFile, verbose
public static final int DEFAULT_NUM_LARGE_SEGMENTS
public void setMergePolicyParams(BalancedSegmentMergePolicy.MergePolicyParams params)
protected long size(org.apache.lucene.index.SegmentInfo info) throws IOException
size
in class org.apache.lucene.index.LogByteSizeMergePolicy
IOException
public void setPartialExpunge(boolean doPartialExpunge)
public boolean getPartialExpunge()
public void setNumLargeSegments(int numLargeSegments)
public int getNumLargeSegments()
public void setMaxSmallSegments(int maxSmallSegments)
public int getMaxSmallSegments()
public void setMergeFactor(int mergeFactor)
setMergeFactor
in class org.apache.lucene.index.LogMergePolicy
public org.apache.lucene.index.MergePolicy.MergeSpecification findForcedMerges(org.apache.lucene.index.SegmentInfos infos, int maxNumSegments, Map<org.apache.lucene.index.SegmentInfo,Boolean> segmentsToMerge) throws IOException
findForcedMerges
in class org.apache.lucene.index.LogMergePolicy
IOException
public org.apache.lucene.index.MergePolicy.MergeSpecification findForcedDeletesMerges(org.apache.lucene.index.SegmentInfos infos) throws org.apache.lucene.index.CorruptIndexException, IOException
findForcedDeletesMerges
in class org.apache.lucene.index.LogMergePolicy
org.apache.lucene.index.CorruptIndexException
IOException
public org.apache.lucene.index.MergePolicy.MergeSpecification findMerges(org.apache.lucene.index.SegmentInfos infos) throws IOException
findMerges
in class org.apache.lucene.index.LogMergePolicy
IOException