Skip to content

Commit 17a5f42

Browse files
authored
Bug fix: Fix peek when value is so large that a file is used (grantjenks#288)
Error caused by copy/paste from pull().
1 parent 4d30686 commit 17a5f42

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

diskcache/core.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1703,9 +1703,6 @@ def peek(
17031703
except IOError:
17041704
# Key was deleted before we could retrieve result.
17051705
continue
1706-
finally:
1707-
if name is not None:
1708-
self._disk.remove(name)
17091706
break
17101707

17111708
if expire_time and tag:

tests/test_deque.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -302,3 +302,13 @@ def test_rotate_indexerror_negative(deque):
302302

303303
with mock.patch.object(deque, '_cache', cache):
304304
deque.rotate(-1)
305+
306+
307+
def test_peek(deque):
308+
value = b'x' * 100_000
309+
deque.append(value)
310+
assert len(deque) == 1
311+
assert deque.peek() == value
312+
assert len(deque) == 1
313+
assert deque.peek() == value
314+
assert len(deque) == 1

0 commit comments

Comments
 (0)