From f7ab6c45963fa0da68acedfb14281cd2456abc68 Mon Sep 17 00:00:00 2001 From: Poornima G Date: Fri, 28 Oct 2016 15:27:15 +0530 Subject: afr,dht,ec: Replace GF_EVENT_CHILD_MODIFIED with event SOME_DESCENDENT_DOWN/UP Currently these are few events related to child_up/down: GF_EVENT_CHILD_UP : Issued when any of the protocol client connects. GF_EVENT_CHILD_MODIFIED : Issued by afr/dht/ec GF_EVENT_CHILD_DOWN : Issued when any of the protocol client disconnects. These events get modified at the dht/afr/ec layers. Here is a brief on the same. DHT: - All the subvolumes reported once, and atleast one child came up, then GF_EVENT_CHILD_UP is issued - connect GF_EVENT_CHILD_UP is issued - disconnect GF_EVENT_CHILD_MODIFIED is issued - All the subvolumes disconnected, GF_EVENT_CHILD_DOWN is issued AFR: - First subvolume came up, then GF_EVENT_CHILD_UP is issued - Subsequent subvolumes coming up, results in GF_EVENT_CHILD_MODIFIED - Any of the subvolumes go down, then GF_EVENT_SOME_CHILD_DOWN is issued - Last up subvolume goes down, then GF_EVENT_CHILD_DOWN is issued Until the patch [1] introduced GF_EVENT_SOME_CHILD_UP, GF_EVENT_CHILD_MODIFIED was issued by afr/dht when any of the subvolumes go up or down. Now with md-cache changes, there is a necessity to differentiate between child up and down. Hence, introducing GF_EVENT_SOME_DESCENDENT_DOWN/UP and getting rid of GF_EVENT_CHILD_MODIFIED. [1] http://review.gluster.org/12573 Change-Id: I704140b6598f7ec705493251d2dbc4191c965a58 BUG: 1396038 Signed-off-by: Poornima G Reviewed-on: http://review.gluster.org/15764 CentOS-regression: Gluster Build System NetBSD-regression: NetBSD Build System Smoke: Gluster Build System Reviewed-by: N Balachandran Reviewed-by: Pranith Kumar Karampuri Reviewed-by: Rajesh Joseph --- rpc/xdr/src/glusterfs-fops.x | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'rpc') diff --git a/rpc/xdr/src/glusterfs-fops.x b/rpc/xdr/src/glusterfs-fops.x index 3b73499814d..7b0bcb33213 100644 --- a/rpc/xdr/src/glusterfs-fops.x +++ b/rpc/xdr/src/glusterfs-fops.x @@ -77,6 +77,9 @@ enum glusterfs_fop_t { GF_FOP_MAXVALUE }; +/* Note: Removed event GF_EVENT_CHILD_MODIFIED=8, hence + *to preserve backward compatibiliy, GF_EVENT_TRANSPORT_CLEANUP = 9 + */ enum glusterfs_event_t { GF_EVENT_PARENT_UP = 1, GF_EVENT_POLLIN, @@ -85,8 +88,7 @@ enum glusterfs_event_t { GF_EVENT_CHILD_UP, GF_EVENT_CHILD_DOWN, GF_EVENT_CHILD_CONNECTING, - GF_EVENT_CHILD_MODIFIED, - GF_EVENT_TRANSPORT_CLEANUP, + GF_EVENT_TRANSPORT_CLEANUP = 9, GF_EVENT_TRANSPORT_CONNECTED, GF_EVENT_VOLFILE_MODIFIED, GF_EVENT_GRAPH_NEW, @@ -98,8 +100,9 @@ enum glusterfs_event_t { GF_EVENT_VOLUME_BARRIER_OP, GF_EVENT_UPCALL, GF_EVENT_SCRUB_STATUS, - GF_EVENT_SOME_CHILD_DOWN, + GF_EVENT_SOME_DESCENDENT_DOWN, GF_EVENT_SCRUB_ONDEMAND, + GF_EVENT_SOME_DESCENDENT_UP, GF_EVENT_MAXVAL }; -- cgit