From 55617ef037695f47ead1c1b753678402e1545f8c Mon Sep 17 00:00:00 2001 From: Jeff Darcy Date: Thu, 10 Dec 2015 10:30:32 -0500 Subject: NSR : nsr server code generation patch The NSR-server with this patch, appoints the first node on every replica subvolume, as the leader for that subvolume. On receiving a 'write' fop, the leader first checks if there is quorum in the replica subvolume to proceeed. In case there isn't it fails with EROFS. If there is quorum, the leader forwards the fop to the followers. The followers on receiving the fop, perform the operation, and based on the success or failure of the outcome send a +ve or a -ve ack to the leader. The leader after receiving acks from the followers performs a quorum check of the acks, to see if it should even try to perform the fop. If quorum is not being met, and the leader's outcome wouldn't affect quorum, then it would send -ve ack to the client without even performing the fop. If quorum is being met, the leader will then try the fop on itself, and based on it's outcome perform a quorum check of all the acks received (this time, including it's own). Based on the result of the quorum check (irrespective of the outcome on the leader), a +ve or -ve ack is send back to the client. Change-Id: I860654b74c53e9b139b37dba43848e5504df6dce Signed-off-by: Avra Sengupta Reviewed-on: http://review.gluster.org/12705 Smoke: Gluster Build System Tested-by: Jeff Darcy CentOS-regression: Gluster Build System NetBSD-regression: NetBSD Build System Reviewed-by: Jeff Darcy --- configure.ac | 2 ++ 1 file changed, 2 insertions(+) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index e9f75a6a1b0..5d2fe342b74 100644 --- a/configure.ac +++ b/configure.ac @@ -189,6 +189,8 @@ AC_CONFIG_FILES([Makefile xlators/experimental/Makefile xlators/experimental/nsr-client/Makefile xlators/experimental/nsr-client/src/Makefile + xlators/experimental/nsr-server/Makefile + xlators/experimental/nsr-server/src/Makefile cli/Makefile cli/src/Makefile doc/Makefile -- cgit