From 9be9edf8fa3100536e2c8a562a696ce9161038d9 Mon Sep 17 00:00:00 2001 From: Jens Widell Date: Fri, 9 Dec 2022 23:09:05 +0100 Subject: [PATCH] S3: Fix deadlock in list_object_versions after multipart upload (#5742) --- moto/s3/models.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/moto/s3/models.py b/moto/s3/models.py index a9b4f256a..5f660e168 100644 --- a/moto/s3/models.py +++ b/moto/s3/models.py @@ -161,12 +161,11 @@ class FakeKey(BaseModel, ManagedState): @property def value(self): - self.lock.acquire() - self._value_buffer.seek(0) - r = self._value_buffer.read() - r = copy.copy(r) - self.lock.release() - return r + with self.lock: + self._value_buffer.seek(0) + r = self._value_buffer.read() + r = copy.copy(r) + return r @property def arn(self):