(Illustration by Gaich Muramatsu)
On Wed, Aug 13, 2003 at 06:04:16PM +0200, Tom Weber wrote: > Now we accessed the coda file system on the server thru a SMB share > (smb share to /coda/codaserver/httpd/htdocs) which seemed to run > perfectly, but now we have the problem that periodicly (every 5-10 > minutes) several nodes of the 5 clients either: > - are out of sync > - say "connection timed out" > - simply hang when using a command like cat or touch on the coda > filesystem The last time I played around with Samba, I think I noticed two problems. 1- Samba always opened files read/write. Because we don't track individual write calls in our kernel module we never notice that no actual writes have taken place. Venus still has to assume that the file is modified and will write back the 'new data'. 2- Samba caches file handles. Because Coda uses session semantics, updates are not propagated until the file is closed. Since Samba doesn't close the fds when a 'session' ends, we neither fetch updated versions from the server, nor send updates back to the server. The open files also use up cache space and we cannot drop them as space is needed. By caching fds, Samba also hides useful information about file usage which affects the cache replacement policy. All of the things you describe can result from these two problems. "out of sync" because filehandles are kept open and updates are not propagated. Timeouts and hangs could be caused by not having cache space available (since everything is already used up by the 'open' files). JanReceived on 2003-08-14 09:28:16