]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
cephfs_mirror: Add ErrorListener to maintain blocklisted/failed timestamp in FSMirror
authorJos Collin <jcollin@redhat.com>
Tue, 28 May 2024 14:57:55 +0000 (20:27 +0530)
committerJos Collin <jcollin@redhat.com>
Wed, 17 Jul 2024 01:00:06 +0000 (06:30 +0530)
commitcd18a801584d3b09a40b9e0cb09f47898f1b724d
treed45948d06c22b58494c3c6c9a5c5564044ce873b
parent47e98cf975ffc13db2dddf675cfb19929d82606a
cephfs_mirror: Add ErrorListener to maintain blocklisted/failed timestamp in FSMirror

Have FSMirror register a listener with InstanceWatcher/MirrorWatcher which would get invoked when the mirror daemon is blocklisted or failed.
Thus FSMirror can maintain the last blocklisted/failed timestamp and use that for restarting the mirror daemon.

Fixes: https://tracker.ceph.com/issues/64927
Fixes: https://tracker.ceph.com/issues/51964
Fixes: https://tracker.ceph.com/issues/63931
Fixes: https://tracker.ceph.com/issues/63089
Signed-off-by: Jos Collin <jcollin@redhat.com>
(cherry picked from commit 77ec7bfde7a349b0e06b34ecdf328996c7642d43)
src/tools/cephfs_mirror/FSMirror.cc
src/tools/cephfs_mirror/FSMirror.h
src/tools/cephfs_mirror/InstanceWatcher.cc
src/tools/cephfs_mirror/InstanceWatcher.h
src/tools/cephfs_mirror/MirrorWatcher.cc
src/tools/cephfs_mirror/MirrorWatcher.h
src/tools/cephfs_mirror/Watcher.h