From b1a1f246113d9db4321dc21b08bcc1f2aea4d5bb Mon Sep 17 00:00:00 2001 From: Tim Serong Date: Thu, 9 Sep 2021 17:08:24 +1000 Subject: [PATCH] pybind/rados: don't close watch in dealloc if already closed Fixes: https://tracker.ceph.com/issues/52553 Signed-off-by: Tim Serong (cherry picked from commit d292d01635c203384a9ecb1876e54014b5a8b5c4) --- src/pybind/rados/rados.pyx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/pybind/rados/rados.pyx b/src/pybind/rados/rados.pyx index 67d8a1e2c7e35..e47f57438a9bb 100644 --- a/src/pybind/rados/rados.pyx +++ b/src/pybind/rados/rados.pyx @@ -2047,6 +2047,8 @@ cdef class Watch(object): return False def __dealloc__(self): + if self.id == 0: + return self.ioctx.rados.require_state("connected") self.close()