Fix bug in in-memory data cache

Previously, if we didn't find a key, we'd empty the entire cache, making it essentially a single-key cache. We skip clearing now, although this does mean we won't GC expired entries (not a problem for tests, though)
This commit is contained in:
Joseph Schorr 2018-05-01 13:25:46 +03:00
parent 23c19bcbc1
commit 178c8e7cb0
2 changed files with 6 additions and 3 deletions

2
data/cache/impl.py vendored
View file

@ -40,7 +40,7 @@ class NoopDataModelCache(DataModelCache):
class InMemoryDataModelCache(DataModelCache):
""" Implementation of the data model cache backed by an in-memory dictionary. """
def __init__(self):
self.cache = ExpiresDict(rebuilder=lambda: {})
self.cache = ExpiresDict()
def retrieve(self, cache_key, loader, should_cache=is_not_none):
not_found = [None]