All of lore.kernel.org
 help / color / mirror / Atom feed
* NFSD Regression: client observing a file while other client writes to it leads to stale local cache
@ 2021-02-28 22:27 Timo Rothenpieler
  2021-03-01 18:46 ` J. Bruce Fields
  0 siblings, 1 reply; 8+ messages in thread
From: Timo Rothenpieler @ 2021-02-28 22:27 UTC (permalink / raw)
  To: Linux NFS Mailing List; +Cc: J. Bruce Fields

[-- Attachment #1: Type: text/plain, Size: 1304 bytes --]

I've been observing an issue where an NFS client reading(tail -f to be 
precise) a file to which another NFS client is writing(or rather, 
appending. It's a log file of a cluster job), the reading client gets 
stuck, and does not update its view of the file anymore.

On the server, the file still gets new lines of log added as expected.
On the reading client, the file gets stuck in the state of the moment 
it's being read.
And stays that way until the writing site closes it, and some time 
passes after that.

So, with the NFS Server being on 5.4, the issue did not appear.
On 5.10, it does. So I bisected the server it with the following setup:

One Client opening and appending to a file:

 > ( for i in $(seq 1 60); do date; sleep 1; done ) > testfile

The other just does "fail -f" on the selfsame file.

On the good side of the bisect, the file updates as expected, and tail 
-f shows new lines as they are added. On the bad side, it just gets 
stuck and never updates. The file size in "ls -l" also gets stuck.

At the end of that bisect, git pointed me at commit 
94415b06eb8aed13481646026dc995f04a3a534a.

 > nfsd4: a client's own opens needn't prevent delegations

And indeed, reverting that commit on top of a current 5.10 kernel makes 
the issue go away.


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4494 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-03-06  0:02 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-28 22:27 NFSD Regression: client observing a file while other client writes to it leads to stale local cache Timo Rothenpieler
2021-03-01 18:46 ` J. Bruce Fields
2021-03-02  1:03   ` Timo Rothenpieler
2021-03-02  1:06     ` J. Bruce Fields
2021-03-02  1:23       ` Timo Rothenpieler
2021-03-04 14:42         ` J. Bruce Fields
2021-03-05 22:31           ` J. Bruce Fields
2021-03-06  0:01             ` Timo Rothenpieler

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.