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? Adrian, 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? Vikas