summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libglusterfs/src/glusterfs.h1
-rw-r--r--xlators/cluster/afr/src/afr-common.c2
-rw-r--r--xlators/cluster/dht/src/dht-common.c6
3 files changed, 8 insertions, 1 deletions
diff --git a/libglusterfs/src/glusterfs.h b/libglusterfs/src/glusterfs.h
index b9ed3bdf96e..67bfd5ad260 100644
--- a/libglusterfs/src/glusterfs.h
+++ b/libglusterfs/src/glusterfs.h
@@ -631,6 +631,7 @@ typedef enum {
GF_EVENT_VOLUME_BARRIER_OP,
GF_EVENT_UPCALL,
GF_EVENT_SCRUB_STATUS,
+ GF_EVENT_SOME_CHILD_DOWN,
GF_EVENT_MAXVAL,
} glusterfs_event_t;
diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c
index c79ec06972a..1345d4d0bcc 100644
--- a/xlators/cluster/afr/src/afr-common.c
+++ b/xlators/cluster/afr/src/afr-common.c
@@ -4044,7 +4044,7 @@ afr_notify (xlator_t *this, int32_t event,
"All subvolumes are down. Going offline "
"until atleast one of them comes back up.");
} else {
- event = GF_EVENT_CHILD_MODIFIED;
+ event = GF_EVENT_SOME_CHILD_DOWN;
}
priv->last_event[idx] = event;
diff --git a/xlators/cluster/dht/src/dht-common.c b/xlators/cluster/dht/src/dht-common.c
index ed884b60035..555b9f9c7d6 100644
--- a/xlators/cluster/dht/src/dht-common.c
+++ b/xlators/cluster/dht/src/dht-common.c
@@ -8509,6 +8509,12 @@ dht_notify (xlator_t *this, int event, void *data, ...)
break;
+ case GF_EVENT_SOME_CHILD_DOWN:
+ subvol = data;
+ propagate = 1;
+
+ break;
+
case GF_EVENT_CHILD_DOWN:
subvol = data;