public class MarkSweepGarbageCollector extends java.lang.Object implements BlobGarbageCollector
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_BATCH_COUNT |
static java.lang.String |
DELIM |
static org.slf4j.Logger |
LOG |
static java.lang.String |
NEWLINE |
static java.lang.String |
TEMP_DIR |
| Constructor and Description |
|---|
MarkSweepGarbageCollector(BlobReferenceRetriever marker,
GarbageCollectableBlobStore blobStore,
java.util.concurrent.Executor executor,
long maxLastModifiedInterval,
java.lang.String repositoryId) |
MarkSweepGarbageCollector(BlobReferenceRetriever marker,
GarbageCollectableBlobStore blobStore,
java.util.concurrent.Executor executor,
java.lang.String repositoryId)
Instantiates a new blob garbage collector.
|
MarkSweepGarbageCollector(BlobReferenceRetriever marker,
GarbageCollectableBlobStore blobStore,
java.util.concurrent.Executor executor,
java.lang.String root,
int batchCount,
long maxLastModifiedInterval,
java.lang.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.
|
java.util.List<GarbageCollectionRepoStats> |
getStats()
Returns the stats related to GC for all repos
|
public static final org.slf4j.Logger LOG
public static final java.lang.String NEWLINE
public static final java.lang.String TEMP_DIR
public static final int DEFAULT_BATCH_COUNT
public static final java.lang.String DELIM
public MarkSweepGarbageCollector(BlobReferenceRetriever marker, GarbageCollectableBlobStore blobStore, java.util.concurrent.Executor executor, java.lang.String root, int batchCount, long maxLastModifiedInterval, java.lang.String repositoryId) throws java.io.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 nodejava.io.IOExceptionpublic MarkSweepGarbageCollector(BlobReferenceRetriever marker, GarbageCollectableBlobStore blobStore, java.util.concurrent.Executor executor, java.lang.String repositoryId) throws java.io.IOException
java.io.IOExceptionpublic MarkSweepGarbageCollector(BlobReferenceRetriever marker, GarbageCollectableBlobStore blobStore, java.util.concurrent.Executor executor, long maxLastModifiedInterval, java.lang.String repositoryId) throws java.io.IOException
java.io.IOExceptionpublic void collectGarbage(boolean markOnly)
throws java.lang.Exception
BlobGarbageCollectorcollectGarbage in interface BlobGarbageCollectormarkOnly - whether to only mark references and not sweep in the mark and sweep operation.java.lang.Exception - the exceptionpublic java.util.List<GarbageCollectionRepoStats> getStats() throws java.lang.Exception
getStats in interface BlobGarbageCollectorjava.lang.Exceptionpublic long checkConsistency()
throws java.lang.Exception
checkConsistency in interface BlobGarbageCollectorjava.lang.Exception"Copyright © 2010 - 2018 Adobe Systems Incorporated. All Rights Reserved"