(Illustration by Gaich Muramatsu)
On Wed, May 04, 2016 at 09:01:00PM -0400, Jan Harkes wrote: > On Wed, May 04, 2016 at 07:43:46PM -0400, Greg Troxel wrote: > > Coda's behavior of doing a store when one does > > open-for-write/read/close is really awkward. Arguably programs should > > not do that, but they do. So I think it's necessary to not store > > then, even if that does result in calling in the read locks. > > Alternatively, open-for-write can be open-for-read, and upgraded on > > the first write, but I think just not storing is 90% of the win. > > This is both simple and expensive. We already are partly there because Oh forgot to mention why this is expensive. The Coda servers need an RVM layout change to persistently store these checksums, right now they are computed on demand during getattr operations and some subset is cached in memory to handle frequently accessed or popular files. With large files, or a volume with many files it actually sometimes causes timeouts when validateattrs runs. JanReceived on 2016-05-04 21:07:43