@InterfaceAudience.Private public class FIFOCompactionPolicy extends ExploringCompactionPolicy
comConf, storeConfigInfo| Constructor and Description |
|---|
FIFOCompactionPolicy(Configuration conf,
StoreConfigInformation storeConfigInfo) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
needsCompaction(Collection<StoreFile> storeFiles,
List<StoreFile> filesCompacting)
A heuristic method to decide whether to schedule a compaction request
|
CompactionRequest |
selectCompaction(Collection<StoreFile> candidateFiles,
List<StoreFile> filesCompacting,
boolean isUserCompaction,
boolean mayUseOffPeak,
boolean forceMajor) |
boolean |
shouldPerformMajorCompaction(Collection<StoreFile> filesToCompact) |
applyCompactionPolicy, applyCompactionPolicycreateCompactionRequest, setMinThresholdcheckMinFilesCriteria, filterBulk, getCurrentEligibleFiles, getNextMajorCompactTime, preSelectCompactionForCoprocessor, removeExcessFiles, skipLargeFiles, throttleCompactiongetConf, setConfpublic FIFOCompactionPolicy(Configuration conf,
StoreConfigInformation storeConfigInfo)
public CompactionRequest selectCompaction(Collection<StoreFile> candidateFiles, List<StoreFile> filesCompacting, boolean isUserCompaction, boolean mayUseOffPeak, boolean forceMajor) throws IOException
selectCompaction in class SortedCompactionPolicycandidateFiles - candidate files, ordered from oldest to newest by seqId. We rely on
DefaultStoreFileManager to sort the files by seqId to guarantee contiguous compaction based
on seqId for data consistency.IOExceptionpublic boolean shouldPerformMajorCompaction(Collection<StoreFile> filesToCompact) throws IOException
shouldPerformMajorCompaction in class RatioBasedCompactionPolicyfilesToCompact - Files to compact. Can be null.IOExceptionpublic boolean needsCompaction(Collection<StoreFile> storeFiles, List<StoreFile> filesCompacting)
RatioBasedCompactionPolicyneedsCompaction in class RatioBasedCompactionPolicystoreFiles - files in the store.filesCompacting - files being scheduled to compact.