[Gluster-users] AFR not working

Vikas Gorur vikas at gluster.com
Wed Dec 23 09:14:12 UTC 2009

Adrian Revill wrote:
> Hi
> I am having trouble with AFR, I have two servers set up to mirror, if 
> I shut down either server and then copy a file into the client mount 
> then restart the server I get a 0 size file on the newly started 
> servers backing store. Which I guess is to be expected.
> But if i do a ls -lR I do not get the servers re-syncing, the only way 
> I can get the servers to sync is to either touch the file, or read the 
> contents.
> Has anyone else had a problem with ls -lR not triggering a sync?

To answer your questions raised in this and the other message:

1) You should never see a 0-byte file overwriting a non-zero-byte file.
You said that you only saw this once. Please report it if you see
it again.

2) The self-heal happens when a lookup() on the file is sent. A lookup
usually happens before any other operation on a file is done.

3) When you do an ls -lR the sync should happen, since ls will do a
stat on the file. I see that you have stat-prefetch loaded on the client 
side. I
have a hunch that the not-syncing is due to the file's attributes
being cached either by the stat-prefetch translator or by the kernel
itself, resulting in lookup() not being sent.

Can you try without stat-prefetch?


More information about the Gluster-users mailing list