|
|
Log in / Subscribe / Register

Network filesystem topics

Network filesystem topics

Posted May 23, 2018 13:03 UTC (Wed) by trondmy (subscriber, #28934)
In reply to: Network filesystem topics by dgc
Parent article: Network filesystem topics

The problem with networked filesystems is that typically the server owns the case folding algorithm, and the client has no a priori understanding of how it works. When looking at this problem for NFSv4, we found it basically means that we either have to accept a certain amount of dentry aliasing, or we have to impose artificial limitations in order to avoid that behaviour (e.g. by limiting the number of cached dentries to 1 per file per directory).

The easiest solution is to allow for dentry aliasing, but that then leads to interesting corner cases when creating, linking, renaming or unlinking files. For instance, you end up no longer being able to assume that cached dentries are still valid after an unlink or rename operation, and you can no longer perform negative dentry caching when files are created or linked to...


to post comments

Network filesystem topics

Posted May 24, 2018 12:56 UTC (Thu) by JFlorian (guest, #49650) [Link] (1 responses)

I'd argue that the true "easiest" solution is a case-sensitive filesystem, but obviously that ship sailed with its disaster in tow. What an unfortunate decision.

Network filesystem topics

Posted May 25, 2018 2:12 UTC (Fri) by zlynx (guest, #2285) [Link]

I'm not sure which you're claiming as the disaster.

I would claim that anything other than raw bytes is the disaster. Especially after my experience with OSX and HFS where I once had to completely reformat a laptop to remove a few files after Apple decided to change their Unicode normalization rules.

There was simply no way to get to the old filenames and no way to access the files.

Let the GUI deal with case sensitivity if it must. Let the OS API access a file by an unambiguous stream of bytes terminated by a null.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds