On 10/25/13 13:33, Anand Avati wrote:
On Fri, Oct 25, 2013 at 12:51 PM, James <[email protected] <mailto:[email protected]>> wrote:On Fri, Oct 25, 2013 at 3:18 PM, Anand Avati <[email protected] <mailto:[email protected]>> wrote: > In normal operations they will differ as much as the time drift between the > servers + lag in delivery/issue of write() calls on the servers. This delta > is "fixed up" by consistently returning the highest of the two mtimes > whenever queried. But lets says we have replica == 2. On server A this mtime is 4:45 On server B this mtime is 4:46 So fuse queries the times, and it returns the max, which is 4:46. All is good. Suppose now that server B is down, and the query is run again. It should now return 4:45, although this means that file has changed mtime. This could break client operations, which may care about a change in mtime. Note that I don't expect differences of 1 minute, but I just chose arbitrary values to make understanding the example easier. So isn't this a bug? This is a known behavior - when a server goes down, files can witness a changed mtime (but I don't think that is what the original post was about). We could provide a new feature/enhancement to keep mtimes in sync with explicit utimes() call per-write() - but that might be too expensive for most users.
Also, the time used would have to be sent from the client (using the client's time.) Otherwise, every query will cause a time negotiation between all servers to figure out the "proper" time.
Then it will be on the users to keep all clients sync'd, or you will have competing time updates.
-- Mr. Flibble King of the Potato People _______________________________________________ Gluster-users mailing list [email protected] http://supercolony.gluster.org/mailman/listinfo/gluster-users
