diff --git a/pyredis/persistence.py b/pyredis/persistence.py index 64f59aa..f3abfcb 100644 --- a/pyredis/persistence.py +++ b/pyredis/persistence.py @@ -11,13 +11,13 @@ def log_command(self, command: Array) -> None: class AppendOnlyFilePersistence(RedisPersistence): def __init__(self, filename: str): self._filename = filename - self.file = open(filename, mode="ab", buffering=0) def log_command(self, command: Array) -> None: - self.file.write(f"*{len(command)}\r\n".encode()) + with open(self._filename, mode="ab", buffering=0) as file: + file.write(f"*{len(command)}\r\n".encode()) - for item in command: - self.file.write(item.resp_encode()) + for item in command: + file.write(item.resp_encode()) class NoPersistence(RedisPersistence):