Ravikumar created HDFS-8892: ------------------------------- Summary: ShortCircuitCache.CacheCleaner can add Slot.isInvalid() check too Key: HDFS-8892 URL: https://issues.apache.org/jira/browse/HDFS-8892 Project: Hadoop HDFS Issue Type: Improvement Components: hdfs-client Affects Versions: 2.7.1 Reporter: Ravikumar Priority: Minor
Currently CacheCleaner thread checks only for cache-expiry times. It would be nice if it handles an invalid-slot too in an extra-pass of evictable map… for(ShortCircuitReplica replica:evictable.values()) { if(!scr.getSlot().isValid()) { purge(replica); } } //Existing code... int numDemoted = demoteOldEvictableMmaped(curMs); int numPurged = 0; Long evictionTimeNs = Long.valueOf(0); …. ….. Apps like HBase can tweak the expiry/staleness/cache-size params in DFS-Client, so that ShortCircuitReplica will never be closed except when Slot is declared invalid. I assume slot-invalidation will happen during block-invalidation/deletes {Primarily triggered by compaction/shard-takeover etc..} -- This message was sent by Atlassian JIRA (v6.3.4#6332)