[Gluster-devel] Gluster Recovery

Anand Avati avati at zresearch.com
Thu Apr 26 07:04:48 UTC 2007

> The concern here is the following though:
> Two separate clients are identically configured to use AFR to two identical server configurations as follows:
>              Server1
>            /         \
> Client1 ---           ---Client2
>            \         /
>              Server2
> Client1 puts "hello.c" onto both Server1 and Server2 via AFR.  Client2 then changes hello.c in some way.
> Server1 goes down; data lost, no chance of recovery and is replaced by Server3, a brand new server with fresh disks.
> In this case, how does the data get reconstructed from the client's side because you mentioned that the automatic recovery was going to be on the glusterfs side.  Client1 believes hello.c is something different to what Client2 believes.  Which client will responsibly reconstruct the data?  Will the journaling of the remaining servers be used to reconstruct the data on the new server?

'changes' are done in sync on both server1 and server2 always
(writes()s are sent to all child nodes). when server3 comes in place
of server1, the self-heal should detect that hello.c is missing on
server3 and sync it from server2.


deep_thought (void)
  sleep (years2secs (7500000)); 
  return 42;

More information about the Gluster-devel mailing list