Linux: Merging Reiser4, How and Why?

Submitted by Jeremy
on August 28, 2004 - 10:32am

Reading through the lengthy debate on the lkml titled "silent semantic changes with reiser4" [story] is a time investment. Comprised of well over 500 emails and growing, I include here a tiny snippet containing a discussion primarily between Hans Reiser, Andrew Morton [interview], and Linus Torvalds. Questions raised include whether or not the filesystem should be ultimately merged into the mainline kernel, and if so how to go about this. Much of the debate is regarding extensions that are currently only available through reiser4, and perhaps not fully compatible with existing utilities. The thread within begins with some coments by Andrew, who suggests that if the provided feature set is the desired direction for the Linux kernel, his preference would be to "accept the reiser4-only extensions with a view to turning them into kernel-wide extensions at some time in the future, so all filesystems will offer the extensions (as much as possible)".

As quoted earlier [story], Hans stressed that it was important that the reiser4 functionality be merged so that Linux is capable of competing with WinFS and Spotlight. The argument was continued by others, and to these followup comments Linus retorted:

"Hell will freeze over before Microsoft does a filesystem right. Besides, WinFS is likely almost in user mode anyway, ie mostly a library, rather like the gnome people are already doing with gnome storage. So there's really no point in trying to push your agenda by trying to scare people with MS activities. Linux kernel developers do what's right because it is _right_, not because somebody else does it."


From: Andrew Morton [email blocked]
To: Hans Reiser [email blocked]
Subject: Re: silent semantic changes with reiser4
Date: 	Wed, 25 Aug 2004 15:28:05 -0700

Hans Reiser [email blocked] wrote:
>
> I had not intended to respond to this because I have nothing positive to 
> say, but Andrew said I needed to respond and suggested I should copy 
> Linus.

Yes, but I didn't say "flame Christoph and ignore the issues" ;)

There are lots of little things to do with implementation, coding style,
module exports, deadlocks, what code goes where, etc.  These are all normal
daily kernel business and we should set them aside for now and concentrate
on the bigger issues.

And as I see it, there are two big issues:

a) reiser4 extends the Linux API in ways which POSIX/Unix/etc do not
   anticipate and 

b) it does this within the context of just a single filesystem.

I see three possible responses:

a) accept the reiser4-only extensions as-is (possibly with post-review
   modifications, of course) or

b) accept the reiser4-only extensions with a view to turning them into
   kernel-wide extensions at some time in the future, so all filesystems
   will offer the extensions (as much as poss) or

c) reject the extensions.


My own order of preference is b) c) a).  The fact that one filesystem will
offer features which other filesystems do not and cannot offer makes me
queasy for some reason.

b) means that at some time in the future we need to hoist the reiser4
extensions (at a conceptual level) (and probably with restrictions) up into
the VFS.  This will involve much thought, argument and work.


To get us started on this route it would really help me (and, probably,
others) if you could describe what these API extensions are in a very
simple way, without referring to incomprehehsible web pages, and without
using terms which non-reiser4 people don't understand.

It would be best if each extension was addressed in a separate email
thread.

We also need to discuss what a reiser4 "module" is, what its capabilities
are, and what licensing implications they have.

Then, we can look at each one and say "yup, that makes sense - we want
Linux to do that" and we can also think about how we would implement it at
the VFS level.

If we follow the above route I believe we can make progress in a technical
direction and not get deadlocked on personal/political stuff.


Now, an alternative to all the above is to just merge reiser4 as-is, after
addressing all the lower-level coding issues.  And see what happens.  That
may be a thing which Linus wishes to do.  I'm easy.


From: Linus Torvalds [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Wed, 25 Aug 2004 15:59:43 -0700 (PDT) On Thu, 26 Aug 2004, Spam wrote: > > > My own order of preference is b) c) a). The fact that one filesystem will > > offer features which other filesystems do not and cannot offer makes me > > queasy for some reason. > > This last sentence makes me wonder. Where is Linux heading? The idea > that a FS cannot contain features that no other FS has is very > scary. That's not what Andrew said or meant. Note the "cannot offer". As in "there is no way to offer them even if the filesystem could support it otherwise". We have tons of filesystems that do things other filesystems cannot do. Most filesystems support writing to a file - despite the fact that some filesystems (iso9600 being an obvious one) cannot. The infrastructure is there in the VFS layer, and it becomes a _choice_ for the filesystem whether it offers certain capabilities. So look at what Andrew said, again: his top choice would be (b). Let's see what that was again, shall we? > b) accept the reiser4-only extensions with a view to turning them into > kernel-wide extensions at some time in the future, so all filesystems > will offer the extensions (as much as poss) or In other words, if reiserfs does something special, we should make standard interfaces for doing that special thing, so that everybody can do it without stepping on other peoples toes. That doesn't mean that we'd _force_ everybody to do it. The same way we don't force iso9660 to write to a CD-ROM. Linus
From: Andrew Morton [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Wed, 25 Aug 2004 16:32:25 -0700 Spam [email blocked] wrote: > > > In other words, if reiserfs does something special, we should make > > standard interfaces for doing that special thing, so that everybody can > > do it without stepping on other peoples toes. > > Agreed that would be the best. But how much time and effort will it > be Zero. We can add these new features tomorrow, as reiser4-only features, with a plan in hand to generalise them later. -->>__if__<<-- we think these are features which Linux should offer.
From: Hans Reiser [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Thu, 26 Aug 2004 01:31:34 -0700 Andrew Morton wrote: >Hans Reiser [email blocked] wrote: > > >>I had not intended to respond to this because I have nothing positive to >>say, but Andrew said I needed to respond and suggested I should copy >>Linus. >> >> > >Yes, but I didn't say "flame Christoph and ignore the issues" ;) > > Oh....;-) >There are lots of little things to do with implementation, coding style, >module exports, deadlocks, what code goes where, etc. These are all normal >daily kernel business and we should set them aside for now and concentrate >on the bigger issues. > > Yes, you are right, but I am not sure Viro will go along with that..... ;-) >And as I see it, there are two big issues: > >a) reiser4 extends the Linux API in ways which POSIX/Unix/etc do not > anticipate and > >b) it does this within the context of just a single filesystem. > >I see three possible responses: > >a) accept the reiser4-only extensions as-is (possibly with post-review > modifications, of course) or > >b) accept the reiser4-only extensions with a view to turning them into > kernel-wide extensions at some time in the future, so all filesystems > will offer the extensions (as much as poss) or > >c) reject the extensions. > > >My own order of preference is b) c) a). > I don't object to b), though I think b) should wait for 2.7 and reiser4 should not. > The fact that one filesystem will >offer features which other filesystems do not and cannot offer makes me >queasy for some reason. > > Andrew, we need to compete with WinFS and Dominic Giampaolo's filesystem for Apple, and that means we need to put search engine and database functionality into the filesystem. It takes 11 years of serious research to build a clean storage layer able to handle doing that. Reiser4 has done that, finally. None of the other Linux filesystems have. The next major release of ReiserFS is going to be bursting with semantic enhancements, because the prerequisites for them are in place now. None of the other Linux filesystems have those prerequisites. They won't be able to keep up with the semantic enhancements. This metafiles and file-directories stuff is actually fairly trivial stuff. Look guys, in 1993 I anticipated the battle would be here, and I build the foundation for a defensive tower right at the spot MS and Apple are now maneuvering towards. Help me get the next level on the tower before they get here. It is one hell of a foundation, they won't be able to shake it, their trees are not as powerful. Don't move reiser4 into vfs, use reiser4 as the vfs. Don't write filesystems, write file plugins and disk format plugins and all the other kinds of plugins, and you won't be missing any expressive power that you really want.... Give Saveliev and I some credit. 10 years of hard work at an ivory tower nobody thought mattered. Now the battle leaves the browser and swings our way. Don't duplicate that infrastructure, use it. There is so much we could use help with if talented people like you chose to contribute. >b) means that at some time in the future we need to hoist the reiser4 >extensions (at a conceptual level) (and probably with restrictions) up into >the VFS. This will involve much thought, argument and work. > > >To get us started on this route it would really help me (and, probably, >others) if you could describe what these API extensions are in a very >simple way, without referring to incomprehehsible web pages, > what is not comprehensible....? > and without >using terms which non-reiser4 people don't understand. > > Well, I agree that there is value in defining things in more detail than we have. >It would be best if each extension was addressed in a separate email >thread. > >We also need to discuss what a reiser4 "module" is, what its capabilities >are, and what licensing implications they have. > >Then, we can look at each one and say "yup, that makes sense - we want >Linux to do that" and we can also think about how we would implement it at >the VFS level. > >If we follow the above route I believe we can make progress in a technical >direction and not get deadlocked on personal/political stuff. > > >Now, an alternative to all the above is to just merge reiser4 as-is, after >addressing all the lower-level coding issues. And see what happens. That >may be a thing which Linus wishes to do. I'm easy. > > > >
From: Andrew Morton [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Thu, 26 Aug 2004 01:45:42 -0700 Hans Reiser [email blocked] wrote: > > >To get us started on this route it would really help me (and, probably, > >others) if you could describe what these API extensions are in a very > >simple way, without referring to incomprehehsible web pages, > > > what is not comprehensible....? Pretty much anything at www.namesys.com. The amount of time which is needed to extract the technical info which one is looking for vastly exceeds a gnat-like attention span. As a starting point, please prepare a bullet-point list of userspace-visible changes which the filesystem introduces, or is planned to introduce. And describe the "plugin" system. Why does the filesystem need such a thing (other filesystems get their features via `patch -p1')? And what are the licensing implications of plugins? Are they derived works? Must they be GPL'ed?
From: Hans Reiser [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Thu, 26 Aug 2004 02:24:41 -0700 Andrew Morton wrote: >Hans Reiser [email blocked] wrote: > > >> >To get us started on this route it would really help me (and, probably, >> >others) if you could describe what these API extensions are in a very >> >simple way, without referring to incomprehehsible web pages, >> > >> what is not comprehensible....? >> >> > >Pretty much anything at www.namesys.com. The amount of time which is >needed to extract the technical info which one is looking for vastly >exceeds a gnat-like attention span. > >As a starting point, please prepare a bullet-point list of >userspace-visible changes which the filesystem introduces, or is planned to >introduce. > >And describe the "plugin" system. Why does the filesystem need such a >thing (other filesystems get their features via `patch -p1')? > > It takes 6 months or more to become competent to change a usual filesystem. Creating a new reiser4 plugin is a weekend programmer fun hack to do. Weekend programmers matter, because they tend to have clever ideas based on understanding a need they have. How many people can easily add new features to ext3 or reiserfs V3? Very few. What happens if you need a disk format change? Well, in V4, you can easily compose a plugin from plugin methods of other plugins, write a little piece of code with the one thing you want different, and add it in. Disk format changes, no big deal, add a new disk format plugin, or a new item plugin, or a new node plugin, etc., and you got your new format. There is a huge difference between code that is designed for reuse, and code that is not. That is the difference between V3 and V4. We were looking at our V3 balancing code, and it special cased each different kind of item (an item is a piece of something, which the balancing code chops objects into as it squeezes them into nodes). It looked like the complexity of the balancing code was going to be N squared, where N was the number of different kinds of items. So, we created item handlers, and wrote balancing code that could slice and dice and merge any item that implemented all of the operations required of an item handler. From there it grew, and we made everything pluggable. Adding features to the new code is far less than the time cost of adding features to the old code. I've seen Nikita complain that something would take 6 weeks to do (changing key assignment algorithms), and then it takes him 3 afternoons, and it was because of the plugins, because when we did something similar in V3 it took 3 man months. >And what are the licensing implications of plugins? Are they derived >works? > Yes. Hans
From: Horst von Brand [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Thu, 26 Aug 2004 14:12:32 -0400 Hans Reiser [email blocked] said: > Andrew Morton wrote: [...] > > The fact that one filesystem will offer features which other > > filesystems do not and cannot offer makes me queasy for some reason. Not me. As long as it is clearly experimental stuff that can be removed at the head hacker's whim, that is. 2.7 material. > Andrew, we need to compete with WinFS and Dominic Giampaolo's filesystem > for Apple, Says who? > and that means we need to put search engine and database > functionality into the filesystem. Please don't. Unix works and is extremely popular because it _doesn't_ try to be smart (policy vs mechanism distinction, simple abstractions that can be combined endlessly). If you add this to the filesystems, you either redo _all_ userland to understand _one_ particular way of doing "smart things" (which will turn out to be almost exactly the dumbest possible for some uses, and then you are stuck), or get lots of shards from broken apps (and users, and sysadmins). > It takes 11 years of serious > research to build a clean storage layer able to handle doing that. Great! Build an experimental OS showing how to use it, and through that see if the ideas hold any water _in real, day-to-day, down-to-earth, practice_. > Reiser4 has done that, finally. None of the other Linux filesystems > have. How come nobody before you in the almost 30 years of Unix has ever seen the need for this indispensable feature? > The next major release of ReiserFS is going to be bursting with > semantic enhancements, because the prerequisites for them are in place > now. None of the other Linux filesystems have those prerequisites. To me that would mean that ReiserFS has no place in Linux. > They won't be able to keep up with the semantic enhancements. This > metafiles and file-directories stuff is actually fairly trivial stuff. Maybe. But the question of it being of any use aren't trivially answered "yes". My gut feeling is that the answer is a resounding "no", but that's just me. Direcories are directories, if you want to ship directory-like stuff around, use directories (or tarfiles, or whatever). Just look what happened to the much, much easier stuff of splitting SUID/SGID into capabilities: Nothing at all whatsoever, because they have no decent place to stay in the hallowed Unix APIs. Sure, Linux is now large enough to be able to _define_ APIs to follow, but even so it isn't at all easy to do so. > Look guys, in 1993 I anticipated the battle would be here, and I build > the foundation for a defensive tower right at the spot MS and Apple are > now maneuvering towards. Why place a protective tower around the pit into which they are trying desperately to throw themselves? ;-) > Help me get the next level on the tower before > they get here. It is one hell of a foundation, they won't be able to > shake it, their trees are not as powerful. Don't move reiser4 into vfs, > use reiser4 as the vfs. Don't write filesystems, write file plugins and > disk format plugins and all the other kinds of plugins, and you won't be > missing any expressive power that you really want.... Better write libraries handling whatever weird format you have in mind for each use. Even applications. I don't expect to be able to use emacs to edit a JPEG or PostgreSQL database. Neither do I expect gimp to be able to edit a poem. The current trend (which I heartily agree with) is to take stuff _out_ of the kernel (for flexibility, access, development ease, even performance). -- Dr. Horst H. von Brand User #22616 counter.li.org Departamento de Informatica Fono: +56 32 654431 Universidad Tecnica Federico Santa Maria +56 32 654239 Casilla 110-V, Valparaiso, Chile Fax: +56 32 797513
From: Markus Törnqvist [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Fri, 27 Aug 2004 23:32:16 +0300 On Thu, Aug 26, 2004 at 02:12:32PM -0400, Horst von Brand wrote: >> Andrew, we need to compete with WinFS and Dominic Giampaolo's filesystem >> for Apple, >Says who? People will say it when people stop using Linux on servers because they can integrate metadata easier in other operating systems ;) >Please don't. Unix works and is extremely popular because it _doesn't_ try >to be smart (policy vs mechanism distinction, simple abstractions that can >be combined endlessly). If you add this to the filesystems, you either redo Just more moving little pieces to be combined endlessly. I think it looks like Reiser4 semantics should go into VFS and not break legacy posix compatibility. If you don't want to use a filesystem like that, don't. Maybe the reason Linux hasn't developed this yet is the fact that Linux supports n+1 file systems and above and beyond that many userspace ones. So there has been enough work in maintaining and competing the old ones and not coming up with new ones. >_all_ userland to understand _one_ particular way of doing "smart things" >(which will turn out to be almost exactly the dumbest possible for some >uses, and then you are stuck), or get lots of shards from broken apps (and >users, and sysadmins). This is a question if implementation. What if the files-as-dirs have a ..metas/mainstream[1] file and are handled by legacy applications as directories? Nothing breaks, but may look a bit ugly. Nothing one line of shell scripting would not cure. OTOH, the user space progs are quickly patched to support all this. >Great! Build an experimental OS showing how to use it, and through that see >if the ideas hold any water _in real, day-to-day, down-to-earth, practice_. Why should he? Parts of Linux are already here and susceptible to experiments in evolution. (Break out 2.7 for this one, the people want code! :) >How come nobody before you in the almost 30 years of Unix has ever seen the >need for this indispensable feature? Lack of imagination? Lack of need? Lack of drive space? And maybe someone did think among these lines back in the days, it's not like the current dogma of file systems is the only one that has ever been used. >To me that would mean that ReiserFS has no place in Linux. This is the type of argumentation I can not understand. Do you not have the freedom not to use it? And this is not personal, but please say Reiser4, as ReiserFS is coupled with versions 3.x. They are quite different. >Maybe. But the question of it being of any use aren't trivially answered >"yes". My gut feeling is that the answer is a resounding "no", but that's I think it's a pretty big yes, even if the technical details do need to be clear before anything is set in stone. That's the reason for the on-going discussion. >just me. Direcories are directories, if you want to ship directory-like >stuff around, use directories (or tarfiles, or whatever). Just look what Without a common user-space API to deal in them. Oh, joy. Make the common user-space API? Will never happen. >Better write libraries handling whatever weird format you have in mind for >each use. Even applications. I don't expect to be able to use emacs to edit >a JPEG or PostgreSQL database. Neither do I expect gimp to be able to edit >a poem. The current trend (which I heartily agree with) is to take stuff >_out_ of the kernel (for flexibility, access, development ease, even >performance). I don't think anyone's talking about using emacs to edit a picture, but emacs could be used to edit the picture's description.[2] Maybe with some userspace-hook that exports the exif data via ..metas/ so the kernel won't have to parse it. Linus wrote about why TCP is not in userspace and I think this is a similar situation. Technically. But not everything has to be in kernel space in Reiser4. Or that's what they say and I'm not sure where I stand on an exif parser in the kernel... On the social side, I may be wrong in this, but not many userspace filesystems have the possibility of becoming a de-facto standard. One might say that's because they suck, or they suck because they're implemented in userspace or they are just met with prejudice for the same reason. In the kernel something like this would have to be done right and people would put effort into doing it right. I for one would welcome that. [1] Sorry, guys, just had to use that name.. [2] You can edit a picture in emacs already, it's just prone to break ;) -- mjt
From: Linus Torvalds [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Fri, 27 Aug 2004 13:38:28 -0700 (PDT) On Fri, 27 Aug 2004, Markus Törnqvist wrote: > > People will say it when people stop using Linux on servers because > they can integrate metadata easier in other operating systems ;) Heh. Considering that WinFS seems to be delayed yet more, I don't think that's a very strong argument. Hell will freeze over before Microsoft does a filesystem right. Besides, WinFS is likely almost in user mode anyway, ie mostly a library, rather like the gnome people are already doing with nome storage. So there's really no point in trying to push your agenda by trying to scare people with MS activities. Linux kernel developers do what's right because it is _right_, not because somebody else does it. Linus
From: Hans Reiser [email blocked] Subject: Re: silent semantic changes with reiser4 Date: Sat, 28 Aug 2004 02:55:00 -0700 Linus Torvalds wrote: >On Fri, 27 Aug 2004, Markus Törnqvist wrote: > > >>People will say it when people stop using Linux on servers because >>they can integrate metadata easier in other operating systems ;) >> >> > >Heh. Considering that WinFS seems to be delayed yet more, I don't think >that's a very strong argument. > >Hell will freeze over before Microsoft does a filesystem right. Besides, >WinFS is likely almost in user mode anyway, ie mostly a library, rather >like the gnome people are already doing with nome storage. > >So there's really no point in trying to push your agenda by trying to >scare people with MS activities. Linux kernel developers do what's right >because it is _right_, not because somebody else does it. > > Linus > > > > Apple will get it right. I promise it. I have met Dominic, and he is very very sharp. Look at the Tiger demos on their website. Simple interface, looks nice to me.... The one area he might screw up is performance, but I don't care to count on that. WinFS first tried to put it all in the FS, and then it became a user mode library almost certainly because they are making the standard mistakes the database guys make when they try to emulate file systems without changing the core balanced tree algorithms, and their performance sucked and they had to back off. It took 11 years for me to get it right, and they aren't as crazy-err-persistent as I am.;-) We might get lucky and have them produce another NTFS, but then again, when Microsoft focuses on a task, they do much better at it than they do most of the time, and they are focused on WinFS. They have hired very sharp people. We can hope that they don't know how to use them, but when they hire people like Gerard Salton for $1 million a year, there is just possibly a chance that they might try to get their money's worth out of him. You should not be complacent about WinFS being delayed to 2007, because even if I get funding for enhanced ReiserFS semantics tomorrow we also can't get the job done before 2007. This is big science, not writing a device driver. Finally, how much harm will it be if we do it right and it is important and they fail? Suppose I am wrong about them, and we create a powerful unifying namespace for Linux before any other OS does? Is that so bad? Creating a powerful namespace at the heart of Linux is the most important enhancement you can make to the OS. Finally the storage layer is good enough to support putting the relationship between keywords (actually keyobjects in my scheme....) and their documents directly into the FS without losing performance for traditional file system usage patterns, and I get to stop tweaking performance and go have fun with semantics in the next major release. Hans

Related Links:

I think both sides have a point

on
August 28, 2004 - 12:27pm

I think both sides have a point

Reiser4 looks to me more like a framework for derived work - with reiser4-fs as a proof-of-concept filesystem (or rather a set of plugins) to attract attention by it's speed and possible features.

I understand Hans and the others have put a lot of work in this project, I also understand they are quite eager to see others appreciate their work, but I don't think it should be put to a mainstream kernel - make a patch, replace VFS layer with reiser4 framework, make ext3 and other filesystem a plugin composition - see how it works. I don't think anybody needs a metadata rich filesystem right away.

On the other hand - I think Apple is about to be the first to have some very exciting features integrated into a fully blown OS. Look at the way they handle applications today - they are exposed as a single icon - a single object to most of the users, but in fact it's a directory structure with metadata, binaries and everything else. I'd love to see packages organized in Linux this way some day. And it's certainly something reiser4 is capable of without the need to expose that to the userland - it may show up as legacy file. Of course, Apple has the advantage to have both kernel and userland at glance (any darwin developers here?), it will surely take a while for user apps like konqueror or midnight commander to take full advantage of these features, but I don't think it must break any backward compatibility here.

Also, there is the UNIX side of things. It's nice to have something more complex built on a very simple basis. Why have rootfs on a metadata filesystem if all you need is standard UNIX directory structure on top of it. Reiser4 doesn't in fact force you to do this, but it gives you an option to mount MySQL innodb "filesystem" as a set of directories and files with a proper plugin, an album plugin can be made, so that you don't have to fit description of a photo in it's actual filesytem name, but in it's metadata - all in a UNIFIED way!
I don't think this will be very useful at first, but I can see database applications, user menus, bookmarks in browsers and albums in mp3 players accessing this unified structure in the future. Why have each app define it's own configuration file or layout of it's data structures, when you can have all data stored in a generic way accessible from any app? Also, if you want, you can expose this generic structure as XML or a binary datafile to legacy apps - again, imagine a database built in a filesystem, you can expose that to one database as it's own binary structure, and at the same time to a secondary one with structure completely different - each database with it's own set of features or relations transparent to the other. But that's still quite a long shot :)

As a conclusion
1) I think the namesys team should make a patchset containing all the features they want to present, and a few proof-of-concept applications (like reiser4fs) a regular user might appreciate. Possibly replacing VFS.

2) kernel developers should open a 2.7 branch, I think too much is going on in 2.6. Many people don't use 2.6 because it's like a developer playground. I'm not sure what features are waiting out there in the same way reiser4 has to, but I think 2.7 is a more suitable proving ground for things like filesystems and schedulers. It's nice to have reiser4 in -mm, but that's just another sign that I should not put it on my servers anymore - though some essential patches reach -mm first.

I think this is a good opportunity to crush competition (like Microsoft) on both the user and the developer front. Let's make their WinFS look like a toy before it even reaches the market, and give developers something to build on without breaking the good reputation of the stable linux series.

Jan Schermer

Just a Side Point About Mac Type Packages in Linux

Anonymous
on
August 31, 2004 - 11:19am

On the other hand - I think Apple is about to be the first to have some very exciting features integrated into a fully blown OS. Look at the way they handle applications today - they are exposed as a single icon - a single object to most of the users, but in fact it's a directory structure with metadata, binaries and everything else. I'd love to see packages organized in Linux this way some day.

This is not an entirely new idea. It appears to have its roots in RISC OS. The ROX Desktop provides facilities for handling packages this way in Linux using the ROX Filer. There are a number of apps that have been repackaged for the ROX Desktop. Of course, this is all in user space and there are certainly debates about how good of an idea some of the elements of RISC OS are, but the concepts have been experimented with.

OS X packages

on
October 21, 2004 - 5:49pm

the way they handle applications today - they are exposed as a single icon - a single object to most of the users, but in fact it's a directory structure with metadata, binaries and everything else

Not only is it an old idea, but it's trivial too. You certainly do not need to change the kernel to do it.

I fully support Hans Reiser's position on this. Let's get Reiser4 in there, it's too good a chance to show M$hit that they are, as usual, delivering someone else's idea, poorly done, too late.

Hans Thinks outside the box - Linux can use more of that

Anonymous
on
September 5, 2004 - 2:13pm

For what it's worth whenever there is a person who comes in with an advancement that changes the paradyme there is always a tendancy to stick with what is familiar. I personally have been frustrated with Linux being somewhat stuck in the mud and tend to favor moving forward even if it means work and changes.

The idea of a file system built on top of a database is very revolutionary and I think that this concept represents the future of file systems.

Having said that - and not addressing the technical issues - I want to encourage people to get past the social issues. Hans - we can assume - is going to be very emotionally attached to his 11 years of work and is more intimately familiar with his code - and may express some frustrations about where things should go. OTOH - everyone else has to go through the mental processes of accepting a new direction which takes some time and if everyone is pushed to fast - it creates emotional barriers to ideas that are otherwise sound.

And - there may be ways to introduce Reiser 4 in a graceful way that will allow it to get going and see how it goes and let everyone warm up to it and merge into the minds of the Linux community.

I have been waiting for Reiser 4 for a long time so I urge people to allow your imagination to take off and appreciate the power offered by the revolutionary new concepts and to feel the emotions of change - but to let reason ultimately rule.

My 2 cents ...

Marc Perkel

Re:I think both sides have a point

Andrew Foster (not verified)
on
September 13, 2005 - 2:06pm

2) kernel developers should open a 2.7 branch, I think too much is going on in 2.6. Many people don't use 2.6 because it's like a developer playground. I'm not sure what features are waiting out there in the same way reiser4 has to, but I think 2.7 is a more suitable proving ground for things like filesystems and schedulers.

This is very true. It is a task just to look at the list of new features in the Linux changelog, much fixes. A 2.7 branch would be the perfect place to test filesystems and schedulers because 1. It would be known in the community that it is purely experimental and definetly NOT suitable for mission-critical tasks, and 2. It would allow the 2.6 branch to finally mature, which would lead to it being more widely adopted. The 2.6 branch has all of the newest features needed to compete with Windows and Mac, but it doesn't have the stability of the 2.4 branch.

I think this is a good opportunity to crush competition (like Microsoft) on both the user and the developer front. Let's make their WinFS look like a toy before it even reaches the market, and give developers something to build on without breaking the good reputation of the stable linux series.

I don't think this alone would crush Microsoft. It would make WinFS look like a toy, yes, but this might help Microsoft. If the 2.6 branch stabilizes and Reiser4 is added in, Linux might be put into a favorable view with the general public. Most who know about Linux think it is an OS only for nerds. If the general public starts to realize that Linux can fit their needs AND be secure and stable, Microsoft would realize this and would work as hard as they could to fix problems with their OSes, and if the extensions are added in, they might be adopted as a standard.

The first step would be to open a 2.7 branch to allow for Reiser4's integration into the kernel.

Andrew Foster

Wow, way off, Linus

Anonymous
on
August 28, 2004 - 12:39pm

"Hell will freeze over before Microsoft does a filesystem right. Besides, WinFS is likely almost in user mode anyway, ie mostly a library, rather like the gnome people are already doing with gnome storage. So there's really no point in trying to push your agenda by trying to scare people with MS activities. Linux kernel developers do what's right because it is _right_, not because somebody else does it."

Ignoring the blatant (and outdated) cheap shots, I've worked extensively with WinFS at my company due to our relationship with MS, and trust me, you guys do NOT want to rest on your laurels on this one. (Although, I do think it's hilarious that in another Hans-vs-Linus debate, the sides have flip-flopped when it comes to who has a lack of vision.)

"...and trust me..."

Anonymous
on
August 29, 2004 - 6:43am

No, i don't trust you since i don't see why you are have any credibility. Anyone can say something similar as you do e.g. in an astroturf campaign. Where are the relevant references and in-depth arguments? As it is now, your post ain't constructive...

Does DRM fit into WinFS?

Anonymous
on
August 29, 2004 - 11:19pm

Does DRM fit into WinFS... or any prior art in any file system?

How about a tie in with the NX bit on the processor?

$0.02

Does DRM fit into WinFS?

Anonymous
on
August 31, 2004 - 2:35pm

I've been mulling over if the new facilities in Reiser4 might actually dovetail into security issues (not a great leap of faith to extend metadata to meta-ownership, and that could get back to finding Reiser4
useful in an IPL environment, not to mention protecting system files {from non-system users (miss-)using system programs}...
a retired router tester

Maybe time for 2.7 now!

Anonymous
on
August 28, 2004 - 1:09pm

I think, this should be the right time to switch into a 2.7 branch. - Merging it into -mm tree will bring significant changes, and the new development model isn't worth one coin any more!

Playing with the code in the way, Andrew suggested seems to be the right direction. But not in the stable mainline branch, this should (IMHO) be done in 2.7!

Anyway, there is the possiblity of backporting it into 2.6 if the changes where smaller then expected. -

Look...

Anonymous
on
August 29, 2004 - 3:18am

There is no reason not to put it in Linux 2.6.X as-is: It hardly touches any code outside of fs/reiser4, and if you mark is as EXPERIMENTAL (or even DANGEROUS), people can make an informed decision about whether they want to try it or not. Reiser4 won't magically make the kernel unstable unless you actually choose to use it (and even then it's quite unlikely).

There's no good to force people to use an unstable (for various other reasons) 2.7.X branch just to try out Reiser4. And putting it in 2.6.X will probably getting all the necessary changes to userspace tools implemented more quickly (because more people will be testing and patching).

2.6 *and* 2.7

Anonymous
on
August 29, 2004 - 11:51am

I believe the best would be marking it EXPERIMENTAL in 2.6, and fork off 2.7 (I don't give a damn if it's called "2.7" or not; the point is that there should be a separate tree) to attempt the VFS changes some people are talking about. I feel the extra functionality Reiser4 brings is a trend future filesystems will follow, not just some crazy adventure to be soon forgotten.

isn't there some issue in ker

Anonymous (not verified)
on
September 14, 2005 - 7:40am

isn't there some issue in kernel bugzilla where we could vote on ? :)

if it is possible to put independent code in 2.6, then _finally_ fork 2.7 where vfs changes can be made - from outside view this looks like the best option. i'm all for it.

DragonFly BSD/Linux/ReiserFS4

Anonymous
on
August 28, 2004 - 2:22pm

Since DragonFlyBSD is an experimental OS, Hans may try his new FS (which I think is great to emulate modular design in fileSubsystem). Since linux is a mature OS, we should take time to merge anything experimental. Rather we should focus on trimming current linux core functionality in such a way that it will be prepared to accept such changes for 2.7 development release. After all open source projects are for the people and by the owner. :)
S. M. Raihan

Especially since the Dragonfl

Anonymous
on
August 28, 2004 - 2:50pm

Especially since the Dragonfly people are planning on redoing their VFS, now would seem to be the ideal time for Namesys to chat with those developers.

Especially since the Dragonfl

Anonymous
on
August 28, 2004 - 4:16pm

Dragonly VFS is moving pretty much in the direction of the current Linux VFS, at least as far as namespace operations are concerned.

Bad guys these Dfly folks, as Hans told us the Linux VFS sucks so bad ;-)

--hch

BSD vs. GPL

Anonymous
on
August 28, 2004 - 7:40pm

There could be licensing reasons for not including Reiser4 in Dfly - Reiser4 is GPL'd. I suspect the Dfly people would be reluctant to change their licensing in order to incorporate the code. Equally, I doubt the Namesys developers would BSD license their code.

AFAICS, it's not that it can't be done, it's just a merge would require either Dfly goes to a GPL license or that Reiser4 goes to a BSD-style license...

GPL-Compatibility

Anonymous
on
August 29, 2004 - 7:04am

Which version of the BSD license is it? According to this page:
http://www.fsf.org/licenses/license-list.html#GPLCompatibleLicenses
the BSD license without the advertising clause is compatible.

BSD version

Anonymous
on
August 29, 2004 - 9:07am

I wasn't thinking in terms of GPL compatibility, although I imagine there's a combination of some 3 clause and some 4 clause BSD licensed code in there, as there is in FreeBSD (which probably makes it incompatible).

The (other) problem would be this: as it is, people can (AFAIK) take the Dfly kernel and make a proprietary derivative work from it and sell it to the public without releasing the source code to them. If Reiser4 was in there, they couldn't because it's GPL - it would mean a fundamental change to the terms under which Dfly could be used, which may not be acceptable to the developers.

Disclaimer: IANAL ;-)

You're confusing yourself

on
August 29, 2004 - 10:14am

The issue is not about putting BSD code into a GPL program [perfectly ok - code becomes GPL], it about putting Reiser4 (GPL) into DragonFly BSD (BSD) [code becomes GPL]. If DflyBSD wants to remain BSD, this transformation cannot occur.

Dual-license

Anonymous
on
August 29, 2004 - 2:11pm

Dual-licensing the code is in theory possible, but in practice it'll be hell of a nuisance; e.g. it costs loads of time, everyone needs to agree. Which reminds me about a few GNOME authors who've passed away. When GNOME decides to be relicensed for whatever reason then those components will have to be rewritten.

Namesys business model

Anonymous
on
August 29, 2004 - 7:29pm

As well as the administrative difficulty, there's another problem:

Namesys make their money out of licensing the code to closed-source developers under a non-GPL license. People actually pay them for the privilege of a) not having to GPL their own code b) not having to admit they're using Reiser code at all (!). I think this is perfectly valid but I suspect they wouldn't want to put much code under a more permissive license because it would undermine their business model somewhat.

Actually

Anonymous
on
August 30, 2004 - 3:23am

You're right, but i was thinking of dual-licensing _DragonFlyBSD_, more specific the kernel. Not a single bit in my head would even argue to dual-license ReiserFS(4) it cost him way too much work and time. Hans just doesn't want this.

Oh I see

Anonymous
on
August 30, 2004 - 9:58am

Ah sorry, I see ;-) Yes, I can definitely see your point about the administrative difficulty for such a large code base! Being able to claim to be the first dual licensed OS (I think?) would be amusing, though :-D

Dual licensing DragonFly

Anonymous
on
September 5, 2004 - 3:55pm

There is support for GPL modules, e.g. the 387 emulation and the ext2 support are GPL code in both DragonFly and FreeBSD. This works because noone, not even the FSF can argue that this modules are derived work of the kernel, they are mere aggregations.
As a core developer I don't have a problem with another OPTINAL, EXTERNAL GPL filesystem, but I don't want to include it in the base kernel. LGPL maybe, GPL definitely not.
Dual-licensing the kernel is a not an option either, because it would need asking for permissions of all the contributers to FreeBSD and UCB. Even just making the code GPL compatible is a lot of hard paper work.

The ability to use the filesy

Anonymous
on
August 29, 2004 - 12:41pm

The ability to use the filesystem is what counts, not what respository the code is stored in. Who cares if it's "in" Dragonfly or not?

Your ignorance hurts my eyes.

Anonymous
on
August 29, 2004 - 9:58pm

Your ignorance hurts my eyes.

re: DragonFly BSD/Linux/ReiserFS4

Anonymous
on
August 30, 2004 - 5:23am

Thing is , H.Reiser is a contractor, his contract is to develop
a filesystem with these features for Linux, not DragonFlyBSD.
Hire him, I'm sure he'll do it though.

Dragon Fly + Matt Dillon + Amiga

Anonymous
on
August 31, 2004 - 4:51pm

Note that Matt Dillon of Dragonfly BSD is an ex-Amiga hacker (he wrote one of the more widely used C compilers "DICE" on the platform). Given that AmigaOS had its own vaguely plan-9-ish take on pluggable filesystems many years ago, I imagine Matt might well have a few of his own ideas as to what makes a good next-gen VFS - it takes somewhat more "next gen" filesystem stuff to wow an amiga user than a windows or unix user.

Aside: rather less elegantly, amiga handled "metadata" thusly: it was decreed that the metadata for a file "file.name" lived in the file "file.name.info" in the same directory in an amiga-standard wrapper format (IFF, nowadays I guess you'd simply have to use XML, though IFF is more closely analogous to quicktime). And that was that. Amiga-specific programs were just written to deal, and if you used ported unix programs (common on amiga via the cygwin-analogous ixemul.library), you just had to remember to copy/move/archive the .info file too. If you forgot, the OS gave you a cruddy default, or with a ubiquitous patch called "deficons" , a non-cruddy default via a mechanism similar to "file" magic on unix (AFAIK patch was folded into the official OS long after it mattered.)

Getting out the prior art

Anonymous
on
August 28, 2004 - 5:04pm

If nothing else, Hans is to be commended for protecting freedom from those who would try to patent the obvious.
<joke>
Reiser4: can we call it 'ZoSo' ?
</joke>

I think this is where a split takes place

Anonymous
on
August 29, 2004 - 12:43am

I think this is pretty much where the new development kernel has to take its roots from. This is where the distinction between basic filesystems <=2.6 and fully implemented reiser4 database like filesystems with real metadata support>=2.7.
Going to 2.7 now will give 3rd party apps time to catch up to the big changes, the same way they caught up when we were going from 2.4 to 2.6. At the same time Hans gets testers in 2.7 to bang out the bugs of a "metadatabase" file system, which is obviously the best way to search and sort data on a computer.

Pr0f. X

VFS

Anonymous
on
August 29, 2004 - 3:24am

Lets stop dancing around the issue. It's not Reiser4 that is causing all the talk its the rigidness of the VFS superblock. The VFS is where the changes need to occure to create a more dynamic VFS to support File System's of the future.

amen

Anonymous
on
August 29, 2004 - 9:47am

nt

I did not get the joke

on
August 31, 2004 - 2:18pm

Care to explain it? Please?

WinFS vaporized?

Anonymous
on
August 30, 2004 - 5:39am

Sounds as if WinFS might not be so big and powerful after all.

http://www.theregister.co.uk/2004/08/27/microsoft_decouples_longhorn/

Anoter good call perhaps by Linus.

MS is not the only game in town.

Anonymous
on
August 30, 2004 - 8:50pm

As others have pointed out, Spotlight does exist and will ship next year.
As no-one has yet pointed out, Apple has 20 yrs experience with rich metadata (resource forks were part of MacOS v1.0) and a developer community that knows well all the neat things you can do with them and was upset when Apple had to give them up as part of moving to OS X.
If you think this stuff isn't going to change, you're living in the same dream world as the UNIX-heads of the 80's who looked at GUIs and imagined them as some fad that would go away, while physical, honest-to-god VT100s would persist till the end of time,

Maynard Handley

Re: WinFS vaporized

Anonymous
on
August 31, 2004 - 1:28pm

Looks like Joel on Software isn't very wild about it either;

WinFS, advertised as a way to make searching work by making the file system be a relational database, ignores the fact that the real way to make searching work is by making searching work. Don't make me type metadata for all my files that I can search using a query language. Just do me a favor and search the damned hard drive, quickly, for the string I typed, using full-text indexes and other technologies that were boring in 1973.

Re: Meta Info storage

Anonymous
on
August 30, 2004 - 8:23pm

What if something like the sysfs was implemented for storing meta info with some sort of link to each and every file/directory. I all cases of storing meta info it will take storage space! Why not something like sysfs? it already contains hardware info.

Walt N.

Least we forget about patents

on
August 31, 2004 - 3:04pm

There has been a lot of technical discussion on whether the changed semantics i a good idea or not and that is a very good thing; but I would like to throw in another perhaps a very salient point - software patents. I completely agree that software patents, as they stand, are doing a great disservice to the entire software community but it is the law in the US and we have to live with that. The most powerful tool we have to fight software patents is to create and publish prior art. The old saying 'necessity is the mother of invention' could not be a truer statement - you can only solve a problem that you know about.

Pros:

1. Reiser4 provides a powerful net semantics for organizing meta-data.
2. Unified files and directories (data and meta-data)
3. Removes ad-hoc API for meta-data (file date, permission, owner,
ACL) are all meta-data
4. Introduces whole set of problems to be solved and new uses to be
discovered
5. Breaks very few few types of applications - notable exceptions
copy, backup, version control
6. Enables the community to create prior art while solving these issues
7. Excellent PR for open source - not only do we innovate (not just
copy others) but we seen to innovate in truly worth while ways.

Cons:

1. We discover that it adds huge unforeseen complications to a very
large number of applications.
2. The Unix semantics has served us well for the las 40 years so why
change now - we will implement something if someone else has shown
us the need.
3. Could all be done is user space.

I have been reading some dissenting voices about the Reiser4 file semantics and the problems that this will present to the Linux community. If I understand correctly, the problem in a nutshell is every file now would look like a directory and can be opened as a directory. The names in that directory are not new files but meta data associated with the file. This is well documented by Has Reiser on the Namesys site. This change is in some way sneaky, but in reality Hans has been writing about it for years - most of us did not pay too much attention. The immediate response in the community has been that this is too big a change and should be withdrawn.

I humbly propose that this is a challenge we should face head on now or we may not have an opportunity to do so in the future. The best way for open source to fight patents is to create prior art and you can only create prior art if you have a problem to solve. WinFS is going to give Microsoft the opportunity to discover the problems that have to be solved when faced with a file system that offers rich meta data. IMHO we have to innovate to prevent patents corralling all open source development to the old Unix domain. The only way we can fight patents is to create prior art. If we are too conservative about the challenge of change we will have to be simply spectators while the like of Microsoft patent all the ‘trivial ideas’ around the rich meta-data semantics that Reiser4 has to offer. We should give to the community the opportunity to discover and solve the problems that using new ways of looking at files and information that we will face.

I am generally of the opinion that much of the 'innovation' in computing is largely trivial or useless from a long term point of view. A few years ago we were told that Unix was a relic of the past and Windows NT was the operating of the future - well we see the future has to reinvent that past relic 'bit by bit'. We now see that Microsoft had many good ideas but also may worthless ones and they are having to retro-fit much that had been implemented in Unix all those years ago. But it has not been a one way street, we too have borrowed many ideas from Microsoft also.

The challenge of WinFS is not that it will be so great, in the beginning, but that it give Microsoft first crack at tackling and patenting all the trivial little solutions that integrating the WinFS into an existing computing environment poses. If we faced those issues first we have the opportunity to create the prior art necessary to defend against the, mostly trivial, patents that Microsoft and other will be filing furiously. If we are too conservative, there will be no prior art to face the challenge. Whatever your opinion about patients they will stop us dead in out tracks if we do not innovate first.

The new file semantics is both a challenge and an opportunity and one that the 'many eye-balls' of open source should brilliantly demonstrate. Yes this changes the way we view a file system and what it can be used for. As other have mentioned user space solutions would be unworkable because of the huge task of getting everybody to agree on libraries and converting the huge number of applications to use common libraries - the kernel is the common library all applications are forced to use. I strongly agree with Hans that the semantics should not be removed from Reiser4 but here lies the challenge how do you write a simple file copy utility, we can not longer use a simple OPEN, READ, WRITE, and CLOSE and get a perfect copy. But of course it has never been that simple to actually copy a file - files have always had other attributes (security, timestamps, ownership).

Perhaps we have always needed a separate form of file open (not a seriously thought out suggestion) - OPEN_READ_WITH_META_DATA and OPEN_WRITE_WITH_METADATA (choose any name you like). This form of open would maintain the original 'file as bytestream' concept and would read all the metadata first followed by the actual data for the file. Clearly the encoding of the meta-data is left as an open question (I would prefer the meta-data be encoded in XML utf8 format). I see the challenge coming from completely internalizing the richer semantics that is proposed. The main issue is to enable, file system utilities such as backup and restore, file copy and move, and of course the most interesting of all version control such as CVS to work well with rich meta-data. Microsoft faces this problem also - let us not wait for it to patent all the simple ideas around this interesting extension to the file semantics.

I strongly believe in the philosophy that Namesys is proposing - unifying names space for rich data. The Unix file model was absolutely great for its time, but as we attempt to handle TB of disk space and files. IMHO the real challenge that open source faces is how to balance the desire for conservative incremental change while pushing the limits of our view of computing. In the last two decades w have seen 10,000 x improvement in the power of the machines we have available yet the underlying software infrastructure have improved in relatively modest terms. We need to show that open source is not simply a rehash of other peoples technology but is capable of expanding our view of computing otherwise 20 years from now we will still be asking how do we effectively compete with Microsoft.

Let's use the GPL

Anonymous
on
September 1, 2004 - 6:30am

Once Hans get enough kernel developers, he can start a new branch on his own. Show Linus it works!

*cough*

on
September 3, 2004 - 8:28pm

Well.. Reiser4 is already living in it's own 'branch', what Hans wants is to merge that branch with the main branch... (It's in the -mm branch now, so getting closer.)

And Reiser4 doesn't have to be merged with the main Linux branch to be prior art, simply existing is enough.

Let's Play!

Anonymous (not verified)
on
September 13, 2005 - 12:45pm

Doing stuff is userspace is fine, but I'm sick of even more utilities designed to try and cram square blocks into round holes. Theres a point where have more and more arcane libs and script files to EMULATE the behaviour of a well designed and thought out feature becomes POINTLESS. The Kernel provides tons of features that userspace takes advantage of.

Reiser4 merely gives us a larger well written toolkit. Who cares if it EXTENDS semantics. We can't be beholden to Posix forever ( Posix defines MINIMUMS of Behavior ).

A Filesystem that at the INODE level is good for DBs? Awesome! Hey folks, your DB operations no longer need be limited to a library running ontop a large file.

Rich metadata slice/dice features? Great!

"Oh, well you can just use Grep/Find/Foo"

But we are talking about a framework that will allow us to optimize/index/search it. And in ways we can't comprehend.

"We could just search like the Gnome desktop tool"

Hey folks, a DB running on top a monolithic file ontop a vanilla heirarchal FS, with no support for plugins. More levels of indirection, inefficiencies, etc... Which is faster, having BTree facilities at the library level, with indexes being written to files, or the ability to mash then around down on the disk surface using Reiser and plugins? My suspicion is Reiser + a Plugin will be a wicked DB platform.

Reiser is a TOOl, a VERY RICH one. Let's get it out there, and start playing!

I look at it like Python...

Sure, I could index lists using the old C style syntax, but why would I? The slice syntax, generators, etc, make it much more expressive and powerful. And it turns out, that because of the way Python is built, sometimes the 'fancier' methods are faster. They take up less memory ( lazy initialized ) or are faster at skipping, because each 'case' has been 'optimized' for it's task. You're not forced to use just C-Style array indices.

With Reiser, we can have our Posix, and extend it too.

No one KNOWS the applications yet.

So hey, let's PLAY.

( And Posix isn't the be-all of standards, there is a lot of ugliness in it ).

So get it into 2.7, and backport to 2.6 if it shows promise. People need to play with it.

I think Hans needs to take the GDBM, and see if he can optimize it on reiser via a plugin, and compare it to the plain flat file + index case. This would be a somewhat non-trivial example of what Reiser could do.

Reiser the scary populist?

on
September 6, 2004 - 8:14pm

Regardless of the issue at hand Reiser comes off like a crazed preacher. These issues should be decided by cold consideration of technical merits not prophecies of incipent doom from competition. Andrew is completly right about the documents and namesys, it is impossible to find straightforward technical documents, everything there is written PR style explaining the filesystem to the masses.

Trying to drop the emotional haze from our minds let us consider whether this meta-data filesystem really deserves to be integrated into the kernel. Firstly, I would point out that many linux installations will not want the extra overhead from supporting this sizeably expanded file interface. Servers, and databases certainly do not want the extra overhead of running meta-data databasese or even special meta-data caching. Furthermore it is far from clear that even on desktop machines we even want every file to be part of this meta-data system. Perhaps only documents and user files should show up/be accesable from this nifty database FS feature. After all when they search for documents modified in the last 5 days we don't want a bunch of log files showing up. Furthermore, it is quite unclear if there is really any performance issue which would benefit from including in the kernel.

I think the best solution is a comprimise. The default filesystem would stay hierarchy based (Ext3 perhaps) and in addition to a swap partition you would have a meta-data partition with it's own Meta-FS. Now a new optional interface for Meta-FS could be designed without concern for unix compatibility since all everything can still be accessed through the default filesystem (meta-FS returns a path to the file on the real FS....or inode if we need speed).

In fact this argueably has performance *advantages*. This lets us place the meta-data on a seperate harddrive which can be optimized for short reads and seeks while the main filesystem is optimized for data transfer (since things like ls can be done entierly by lookups on the Meta-FS).

I think you dont get it...

Anonymous
on
September 8, 2004 - 3:43am

ReiserFS is not, like winFS, a database on top of a filesystem (eg you can't put the meta-data on a seperate drive). the revolutionary part is that it IS a database. the files are stored in the database, without performance loss compared to non-database filesystems. So there is NO extra overhead (ReiserFS4 is mostly faster than other filesystems, actually). so no meta-data database, no caching of meta-data - because meta-data doesnt exist. all data is treated the same, thats the point of ReiserFS4.

maybe this is a over-simplification, but its closer to the what RFS4 is than what you seem to think about it ;-)

I get it

on
September 8, 2004 - 1:13pm

Perhaps my comment was unclear. I understand that RFS4 is not built on top and is integrated into the filesystem itself. This is my OBJECTION to RFS4.

This keyword filesystem concept is only really usefull for the end user at the document. Servers, kernels and other system level tools have no *need* for these advanced features. RFS4 is implemented at a system level meaning it has less performance issues than something like WinFS (probably) but it still adds more features and hence will likely be slower than a filesystem tuned just to provide a hierarchiacal system. Likely even modifying the kernel to present an interface less optimized for the simple hierarchy/directory structure which best suits the core system.

Since we really only need, or even want these extra features at the user level, i.e. when they are searching for their documents we don't need or want our binary paths or similar things working on this system, why should we put this change at the system level. In other words I'm saying that we should take a performance hit WHERE IT DOESN'T matter in the user space interface (KDE, gnome storage etc..). This is going to be a relativly rare and hardly requires the slight performance boost given by integrating this system into the kernel. We thus avoid taking a performance hit where it *does* matter, in the kernel which now screws over server operators etc.. etc..

Servers, kernels and other sy

Anonymous (not verified)
on
September 13, 2005 - 2:11pm

Servers, kernels and other system level tools have no *need* for these advanced features

So, are you saying that the criteria for integration includes:

Servers, Kernels and other System Level Tools must currently *need* the functionality before it will be considered?

Is this based on the assumption that Servers, Kernels and other System Level Tools will -never- need this functionality? Is it based on the philosophy that proactive inclusion is always a bad thing?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.