Spot the bug
Which line makes memory grow without limit?
from collections import OrderedDict_seen: dict[str, bytes] = {}_bounded: OrderedDict[str, bytes] = OrderedDict()def remember(key: str, value: bytes) -> None:_seen[key] = value_bounded[key] = valueif len(_bounded) > 1_000:_bounded.popitem(last=False)
Hint 1 of 1
Which dict ever removes items?
Choose an answer, then open Show answer below to check it.
Show answer
- Answer: line 8
_seen[key] = value
Line 8 adds every key to _seen forever. _bounded evicts its oldest entry past 1,000 items; _seen never shrinks.