Package org.apache.bookkeeper.bookie
Class ScanAndCompareGarbageCollector
- java.lang.Object
- 
- org.apache.bookkeeper.bookie.ScanAndCompareGarbageCollector
 
- 
- All Implemented Interfaces:
- GarbageCollector
 
 public class ScanAndCompareGarbageCollector extends java.lang.Object implements GarbageCollector Garbage collector implementation using scan and compare.Garbage collection is processed as below: - fetch all existing ledgers from zookeeper or metastore according to the LedgerManager, called globalActiveLedgers
- fetch all active ledgers from bookie server, said bkActiveLedgers
- loop over bkActiveLedgers to find those ledgers that are not in globalActiveLedgers, do garbage collection on them.
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from interface org.apache.bookkeeper.bookie.GarbageCollectorGarbageCollector.GarbageCleaner
 
- 
 - 
Field SummaryFields Modifier and Type Field Description (package private) static org.slf4j.LoggerLOG
 - 
Constructor SummaryConstructors Constructor Description ScanAndCompareGarbageCollector(LedgerManager ledgerManager, CompactableLedgerStorage ledgerStorage, ServerConfiguration conf, StatsLogger statsLogger)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidgc(GarbageCollector.GarbageCleaner garbageCleaner)Do the garbage collector work.intgetNumActiveLedgers()
 
- 
- 
- 
Constructor Detail- 
ScanAndCompareGarbageCollectorpublic ScanAndCompareGarbageCollector(LedgerManager ledgerManager, CompactableLedgerStorage ledgerStorage, ServerConfiguration conf, StatsLogger statsLogger) throws java.io.IOException - Throws:
- java.io.IOException
 
 
- 
 - 
Method Detail- 
getNumActiveLedgerspublic int getNumActiveLedgers() 
 - 
gcpublic void gc(GarbageCollector.GarbageCleaner garbageCleaner) Description copied from interface:GarbageCollectorDo the garbage collector work.- Specified by:
- gcin interface- GarbageCollector
- Parameters:
- garbageCleaner- cleaner used to clean selected garbages
 
 
- 
 
-