From fbc7a633869bca8a0ed89c2ff4d01adc5a0c8fe9 Mon Sep 17 00:00:00 2001 From: ljf Date: Wed, 16 Nov 2016 00:18:27 +0100 Subject: [PATCH] [enh] Use modification time to renew actionmap cache --- moulinette/actionsmap.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/moulinette/actionsmap.py b/moulinette/actionsmap.py index 0e8fcdcc..26656aec 100644 --- a/moulinette/actionsmap.py +++ b/moulinette/actionsmap.py @@ -369,7 +369,10 @@ class ActionsMap(object): logger.debug("loading actions map namespace '%s'", n) actionsmap_yml = '%s/actionsmap/%s.yml' % (pkg.datadir, n) - actionsmap_pkl = '%s/actionsmap/%s-%s.pkl' % (pkg.cachedir, n, os.stat(actionsmap_yml).st_size) + actionsmap_yml_stat=os.stat(actionsmap_yml) + actionsmap_pkl = '%s/actionsmap/%s-%d-%d.pkl' % (pkg.cachedir, n, + actionsmap_yml_stat.st_size, + actionsmap_yml_stat.st_mtime) if use_cache and os.path.exists(actionsmap_pkl): try: @@ -523,7 +526,9 @@ class ActionsMap(object): os.remove('%s/actionsmap/%s' % (pkg.cachedir, i)) # Cache actions map into pickle file - with pkg.open_cachefile('%s-%s.pkl' % (n, os.stat(am_file).st_size), 'w', subdir='actionsmap') as f: + am_file_stat=os.stat(am_file) + pkl='%s-%d-%d.pkl' % (n, am_file_stat.st_size, am_file_stat.st_mtime) + with pkg.open_cachefile(pkl, 'w', subdir='actionsmap') as f: pickle.dump(actionsmaps[n], f) return actionsmaps