Subject: auto-revert-mode check
From: Ken Raeburn <[email-masked]>
To: [email-masked]
Date: Mon, 28 Mar 2011 18:22:04 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

It looks like auto-revert-mode in 23.2 checks the file timestamp to see when the file is updated.  But I often see the file as having an extra line or two that Emacs doesn't pick up for a long time, until something else is added to the file.  I don't have time to look into it right now at work, but my guess is either/both (1) Emacs records the "changed" timestamp after reading the updated content, so the timestamp could correspond to an updated version relative to the buffer content; (2) Emacs isn't recording/checking the timestamp with enough granularity (which on this NFS file server and Linux NFS client, appears to be a millisecond, though file-attributes appears to return no sub-second component), so updates within the space of a second after Emacs rereads the file aren't detected.

Checking file size too would help, at least for files updated by appending.

I think file-attributes needs to be able to return sub-second granularity timestamps for modern operating systems, though it may require using non-standard interfaces, like GNU libc's stat.st_atim.tv_nsec or stat.st_atimensec field.

I'll see if I have time to look into this later this week.

Ken