]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
osd: avoid watcher remains after "rados watch" is interrupted
authorweixinwei <weixw3@lenovo.com>
Tue, 4 Apr 2023 09:40:12 +0000 (17:40 +0800)
committerIlya Dryomov <idryomov@gmail.com>
Thu, 25 Jul 2024 10:27:21 +0000 (12:27 +0200)
commita88f69b4ef7c1a5b7f348a14e8ccd52b51003454
treec2c8d49cec500b210d7af6a768e6c5952c5d65fa
parent7047a46363fa8c39c995b36f01c8705092b07079
osd: avoid watcher remains after "rados watch" is interrupted

If "rados watch" is interrupted (e.g. killed), rados watcher remains in osd.
The reason is that in do_osd_op_effects, session is nullptr (rados client is killed),
resulting in WatchTimeout is not registerd.

Fixes: https://tracker.ceph.com/issues/58120
Signed-off-by: weixinwei <weixw3@lenovo.com>
(cherry picked from commit 5bb185cbc9547a1b324c339753b4b3786073a58f)
src/osd/PrimaryLogPG.cc
src/osd/Watch.cc