ShengLi has uploaded this change for review.

View Change

RADOS: re-establish watches after disconnects

Expired watches leave RADOS_URLS changes undetected and grace updates
dependent on polling.

Use a shared helper with error callbacks, periodic checks and bounded
retries to re-establish watches on a monitor thread. Reconcile missed
updates after recovery and drain callbacks before releasing resources.

ACK notifications with the supplied handle and preserve the shared
client when opening an individual URL fails.

Change-Id: Id34d987a45f3c4a6d5d07b706bbe88d485b79f6a
Signed-off-by: Sheng Li <50203418+LiShengG@users.noreply.github.com>
---
M src/SAL/CMakeLists.txt
M src/SAL/recovery/recovery_rados_cluster.c
M src/config_parsing/CMakeLists.txt
M src/config_parsing/conf_url_rados.c
A src/include/gsh_rados_watch.h
A src/support/gsh_rados_watch.c
6 files changed, 558 insertions(+), 26 deletions(-)

git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/08/1248908/1

To view, visit change 1248908. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: Id34d987a45f3c4a6d5d07b706bbe88d485b79f6a
Gerrit-Change-Number: 1248908
Gerrit-PatchSet: 1
Gerrit-Owner: ShengLi <50203418+LiShengG@users.noreply.github.com>