public class MarkSweepGarbageCollector extends Object implements BlobGarbageCollector
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_BATCH_COUNT |
static String |
DELIM |
static org.slf4j.Logger |
LOG |
static String |
NEWLINE |
static String |
TEMP_DIR |
| Constructor and Description |
|---|
MarkSweepGarbageCollector(BlobReferenceRetriever marker,
GarbageCollectableBlobStore blobStore,
Executor executor,
long maxLastModifiedInterval,
String repositoryId) |
MarkSweepGarbageCollector(BlobReferenceRetriever marker,
GarbageCollectableBlobStore blobStore,
Executor executor,
String repositoryId)
Instantiates a new blob garbage collector.
|
MarkSweepGarbageCollector(BlobReferenceRetriever marker,
GarbageCollectableBlobStore blobStore,
Executor executor,
String root,
int batchCount,
long maxLastModifiedInterval,
String repositoryId)
Creates an instance of MarkSweepGarbageCollector
|
| Modifier and Type | Method and Description |
|---|---|
long |
checkConsistency()
Checks for the DataStore consistency and reports the number of missing blobs still referenced.
|
void |
collectGarbage(boolean markOnly)
Marks garbage blobs from the passed node store instance.
|
List<GarbageCollectionRepoStats> |
getStats()
Returns the stats related to GC for all repos
|
public static final org.slf4j.Logger LOG
public static final String NEWLINE
public static final String TEMP_DIR
public static final int DEFAULT_BATCH_COUNT
public static final String DELIM
public MarkSweepGarbageCollector(BlobReferenceRetriever marker, GarbageCollectableBlobStore blobStore, Executor executor, String root, int batchCount, long maxLastModifiedInterval, String repositoryId) throws IOException
marker - BlobReferenceRetriever instanced used to fetch refereed blob entriesblobStore - the blob store instanceexecutor - executorroot - the root absolute path of directory under which temporary
files would be createdbatchCount - batch sized used for saving intermediate statemaxLastModifiedInterval - lastModifiedTime in millis. Only files with time
less than this time would be considered for GCrepositoryId - - unique repository id for this nodeIOExceptionpublic MarkSweepGarbageCollector(BlobReferenceRetriever marker, GarbageCollectableBlobStore blobStore, Executor executor, String repositoryId) throws IOException
IOExceptionpublic MarkSweepGarbageCollector(BlobReferenceRetriever marker, GarbageCollectableBlobStore blobStore, Executor executor, long maxLastModifiedInterval, String repositoryId) throws IOException
IOExceptionpublic void collectGarbage(boolean markOnly)
throws Exception
BlobGarbageCollectorcollectGarbage in interface BlobGarbageCollectormarkOnly - whether to only mark references and not sweep in the mark and sweep operation.Exception - the exceptionpublic List<GarbageCollectionRepoStats> getStats() throws Exception
getStats in interface BlobGarbageCollectorExceptionpublic long checkConsistency()
throws Exception
checkConsistency in interface BlobGarbageCollectorException"Copyright © 2010 - 2017 Adobe Systems Incorporated. All Rights Reserved"