~soren/filecache/trunk-fail

« back to all changes in this revision

Viewing changes to filecache/__init__.py

  • Committer: Rick Harris
  • Author(s): Cory Wright
  • Date: 2010-04-21 22:49:58 UTC
  • Revision ID: git-v1:4dc46226b1f2081538d963404395d8e26cabad16
Closes #1

ExpiryFileCache now prunes expired keys

Show diffs side-by-side

added added

removed removed

Lines of Context:
683
683
                     % (key, age, expiry))
684
684
        return age > expiry
685
685
 
 
686
    def _prune(self):
 
687
        start_time = time.time()
 
688
        num_keys = 0
 
689
        # N.B. prune already as the delete lock
 
690
        cache_stats = self._unsafe_stat()
 
691
        logger.debug("cache_stats for pruning %s" % pformat(cache_stats))
 
692
        for key in cache_stats:
 
693
            if self._check_stale(key):
 
694
                self._unsafe_delete(key)
 
695
                num_keys += 1
 
696
 
 
697
        logger.info("pruned %s keys in %.2f secs" % 
 
698
                     (num_keys, (time.time() - start_time)))
 
699