Revert "Revert "Try to not use as much CPU in the StreamChangeCache"" (#3454)

This commit is contained in:
Amber Brown 2018-06-28 11:04:18 +01:00 committed by GitHub
parent cd6bcdaf87
commit 72d2143ea8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 2 deletions

0
changelog.d/3447.misc Normal file
View file

View file

@ -78,7 +78,8 @@ class StreamChangeCache(object):
not_known_entities = set(entities) - set(self._entity_to_key) not_known_entities = set(entities) - set(self._entity_to_key)
result = ( result = (
set(self._cache.values()[self._cache.bisect_right(stream_pos) :]) {self._cache[k] for k in self._cache.islice(
start=self._cache.bisect_right(stream_pos))}
.intersection(entities) .intersection(entities)
.union(not_known_entities) .union(not_known_entities)
) )
@ -113,7 +114,8 @@ class StreamChangeCache(object):
assert type(stream_pos) is int assert type(stream_pos) is int
if stream_pos >= self._earliest_known_stream_pos: if stream_pos >= self._earliest_known_stream_pos:
return self._cache.values()[self._cache.bisect_right(stream_pos) :] return [self._cache[k] for k in self._cache.islice(
start=self._cache.bisect_right(stream_pos))]
else: else:
return None return None