[quote=HaikuForever]
Do you mean that having the indexing directly supported by the kernel is not a good idea, at the end of the day?!?
I was under the impression that, on the contrary, this had some advantages over application-based indexing, but then I am not an expert of this.[/quote]
In my not so humble opinion yes, on balance this costs too much and delivers too little value. Obviously at least some people at Be felt differently, and perhaps some of the Haiku developers likewise.
There is one, very significant upside to having the kernel involved: The kernel can make sure that so long as you’re running BeOS / Haiku the index is kept up-to-date (of course though all bets are off if you run a different OS with BFS write capability which may not maintain the index).
Any non-kernel indexing feature would obviously face the possibility that it wasn’t running when something changed and so it couldn’t update the index. A system like Beagle for example, must identify updated files and re-index them periodically. This was the situation in early BeOS (pre-DR9 I think) with the original BFS now mostly referred to as OFS among BeOS fans.
The “live query” feature is sometimes argued as an upside to the in-kernel index, but this can fairly easily be implemented by monitoring all new file metadata instead, most operating systems provide a way to do this for local files at least.
You mean after Haiku R1? That would be a question for the developers. But even today you will see people recommend formatting auxiliary BFS filesystems with no indexing for certain problems, because the performance of BFS with indexing is really quite bad compared to a typical modern filesystem that doesn’t. Core features of Haiku rely on the index, or at least on fast queries, so a situation where the index never exists, or isn’t provided by default for the root filesystem is unlikely in the foreseeable future.
[quote]
Sure, we still have some applications like mail applications, people contacts applications and the like which use extended attributes, but they are the exception, and not much importance is given to them anymore.
Too bad.[/quote]
Universality is quite important. The Windows (NT) family saw the same trend, initially several Microsoft products used NTFS extended attributes to store metadata but users found it confusing that the metadata was easily (and often silently) lost e.g. if they emailed the file or put it onto a non-NTFS disk. So almost all current Microsoft products avoid using extended attributes, instead stuffing metadata into the file itself.
We have seen this before, record-oriented file storage was very common in the 1970s, but the advent of systems offering simple “files are just an array of bytes” storage dominated, because getting your files correctly from one record-oriented system to another was a pain, while the simple array-of-bytes approach worked well across many systems.