Does anybody know the current status of network file system support in Haiku, specifically the ability to mount a remote BFS drive with full query functionality? NFS and CIFS are no good, they lack attributes and queries.
I recall some time ago BeServed was open sourced and given to Haiku, but I don’t know what ever happened to that. If there is no existing development in this area, I’m interested in doing something.
The specific application I have in mind is a server machine acting as a large-capacity file server for a couple of Haiku systems, which have limited local storage. The operating system of the server does not matter, but it needs to have a 100% stable, corruption-free filesystem implementation. BeOS R5 or FreeBSD would be acceptable, I’m not sure how robust Haiku’s filesystem implementation is in a server application like this where data loss or corruption cannot be tolerated.
One possible design I have in mind involves using a system such as FreeBSD in conjunction with a database. The database would store the attributes for the files, and most importantly, index the attributes. This eliminates the need to run BeOS or Haiku on the server, and being a true database the search performance should be rather fast. Write performance might be slower but I don’t care about that - servers tend to be used for bulk storage rather than fast manipulation of files. As a result there should be no need for “mkindex” - every attribute including filename will be indexed from the start.
On the Haiku side, a filesystem driver would make this appear as if it were a native BFS drive. Queries will work as usual (faster thanks to the database.)
I don’t specifically require live queries to work across multiple machines (modify a file on machine A and it shows up in machine B’s live query) but it would be desirable for completeness.
If there is some existing network file system support that can be built atop of, it would greatly reduce the amount of effort required in implementing this. In particular some kind of filesystem driver on Haiku, then all I have to worry about is writing server-side software to speak the right network protocol rather than trying to figure out how to write a filesystem driver.