public class CacheClearExpiredRecordsTask extends ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>
This task provides per partition expiration operation logic. Fires cleanup operations at most partition operation thread count or some factor of it in one round.
These parameters can be set node-wide or system-wide
Node-wide setting example:
Config config = new Config();
config.setProperty("hazelcast.internal.cache.expiration.cleanup.operation.count", "3");
Hazelcast.newHazelcastInstance(config);
System-wide setting example:
System.setProperty("hazelcast.internal.cache.expiration.cleanup.operation.count", "3");
ClearExpiredRecordsTask.ProcessablePartitionType| Modifier and Type | Field and Description |
|---|---|
static String |
PROP_CLEANUP_OPERATION_COUNT |
static String |
PROP_CLEANUP_PERCENTAGE |
static String |
PROP_TASK_PERIOD_SECONDS |
containers, nodeEngine, partitionService, toBackupSender| Constructor and Description |
|---|
CacheClearExpiredRecordsTask(CachePartitionSegment[] containers,
NodeEngine nodeEngine) |
newBackupExpiryOpFilter, partitionLost, run, sendQueuedExpiredKeyspublic static final String PROP_CLEANUP_PERCENTAGE
public static final String PROP_TASK_PERIOD_SECONDS
public static final String PROP_CLEANUP_OPERATION_COUNT
public CacheClearExpiredRecordsTask(CachePartitionSegment[] containers, NodeEngine nodeEngine)
public void tryToSendBackupExpiryOp(ICacheRecordStore store, boolean sendIfAtBatchSize)
tryToSendBackupExpiryOp in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>public Iterator<ICacheRecordStore> storeIterator(CachePartitionSegment container)
storeIterator in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected Operation newPrimaryExpiryOp(int expirationPercentage, CachePartitionSegment container)
newPrimaryExpiryOp in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected Operation newBackupExpiryOp(ICacheRecordStore store, Collection<ExpiredKey> expiredKeys)
newBackupExpiryOp in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected void equalizeBackupSizeWithPrimary(CachePartitionSegment container)
equalizeBackupSizeWithPrimary in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected boolean hasExpiredKeyToSendBackup(CachePartitionSegment container)
hasExpiredKeyToSendBackup in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected boolean hasRunningCleanup(CachePartitionSegment container)
hasRunningCleanup in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected void setHasRunningCleanup(CachePartitionSegment container)
setHasRunningCleanup in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected boolean isContainerEmpty(CachePartitionSegment container)
isContainerEmpty in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected boolean notHaveAnyExpirableRecord(CachePartitionSegment container)
notHaveAnyExpirableRecord in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected long getLastCleanupTime(CachePartitionSegment container)
getLastCleanupTime in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected void sortPartitionContainers(List<CachePartitionSegment> containers)
sortPartitionContainers in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>protected ClearExpiredRecordsTask.ProcessablePartitionType getProcessablePartitionType()
getProcessablePartitionType in class ClearExpiredRecordsTask<CachePartitionSegment,ICacheRecordStore>Copyright © 2019 Hazelcast, Inc.. All rights reserved.