Slashdot Mirror


Interview With Reiser4 Author Hans Reiser

An anonymous reader writes "KernelTrap has an interesting interview with Hans Reiser, the author of two revolutionary Linux filesystems, Reiser3 and Reiser4. Reiser3 was the first journaling Linux filesystem. Reiser4 is a complete rewrite that is claimed to offer amazing performance and a new plugin architecture offering semantic enhancements to rival Microsoft's WinFS and Apple's Spotlight. Comparing Reiser4 to WinFS, Reiser says in the interview, "Reiser4 is a much more mature design, representing a 10 year effort"."

29 of 382 comments (clear)

  1. Maturity by Anonymous Coward · · Score: 1, Interesting
    "Reiser4 is a much more mature design, representing a 10 year effort"."
    If Hans himself had not also shown the maturity of a ten-year-old, his filesystem would've made the mainstream Linux kernel by now.
    1. Re:Maturity by BenjyD · · Score: 2, Interesting

      Is there any information on reliability, though? Saving a few seconds copying files is great, but if I end up losing data after a power failure it's not much use.
      Personally, I've found ext3 to survive crashes the best: xfs, jfs and reiser have all lost me data.

    2. Re:Maturity by cloudmaster · · Score: 2, Interesting

      Personally, I've found Reiser to be the best. I've lost data on ext2 and ext3, as well as jfs (and reiser, once). Overall, I've also lost weeks of time waiting for ext to fsck on an "unscheduled" reboot. :)

      Of course, this is moot since none of them will regularly lose files, and anything important is regularly backed up. Not to mention that a single UPS to weather minor power interruptions costs under $100... Right? ;)

    3. Re:Maturity by LWATCDR · · Score: 3, Interesting

      Actually I didn't see much immaturity. Okay Linus saying microsoft will get a files system right when hell freezes over seemed a little immature.
      Frankly Reiser4 looks like a good project.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    4. Re:Maturity by CdBee · · Score: 2, Interesting

      Also, a lot of the truly great programmers of our age have had personality flaws.. possibly a degree of autism-like inability to interface to other people is symptomatic of the mindset that understands computer systems. God knows, we geeks face dumber forms of that assumption every day!

      --
      I have been a user for about 10 years. This ends Feb 2014. The site's been ruined. I'm off. Dice, FU
    5. Re:Maturity by Arandir · · Score: 2, Interesting

      Now, we all know the stereotypical kernel dev - technically conservative, concerned about maintenaince, not really keen on making big compromises, and annoyed by ego

      You make that sound like a bad thing!

      I'm not a kernel developer, but as a professional software engineer I do know that conservative development is the best policy. Users tend to want the opposite unfortunately. They don't care how rotten and worm-ridden the inside of the apple is, so long as the outside is bright and shiny.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  2. I was actually just wondering by mcc · · Score: 2, Interesting

    I was wondering over the weekend, on a whim, whether it would make sense to create a cross-platform library that abstracts meta-data/search functionality. Like, it would provide one uniform set of utility functions, and this would turn into calls to WinFS on windows, calls to Spotlight on OS X, and calls to ReiserFS on Linux.

    But I don't know enough about WinFS OR Spotlight Or ReiserFS to know if this would be even remotely useful or is just nonsense ;)

  3. When will it be "safe" to use? by bad_outlook · · Score: 2, Interesting

    I've been waiting until it's deemed "safe" to use, but it seems it's going on 2 years now or "not ready yet". I know it's ready when it's ready, but is there a timetable for it? I don't have a fast enough spare box to test it out, and I want to dig the faster FS perf on an SATA harddrive. Keep going Hans!

    1. Re:When will it be "safe" to use? by uhoreg · · Score: 2, Interesting

      Many people (including myself) have been using Reiser4 for quite a while now without any problems. The developers have stopped being able to find bugs, as far as I've heard, although the occasional bug does pop up on the mailing list (and is fixed rather promptly by the developers). When Reiser4 gets included into the mainline kernel and the number of users increases by an order of magnitude, it will be likely that some new bugs will be found. I might not trust million-dollar, mission-critical data on it just yet, but for personal use, it seems to be stable enough.

      --

      To get something done, a committee should consist of no more than three persons, two of them absent.

    2. Re:When will it be "safe" to use? by Anonymous Coward · · Score: 3, Interesting

      It is very stable already - I use it as the root filesystem on my laptops (mostly because laoptop disks are sooo slow and reiser4 mitigates this considerably).

      I have not suffered any problems whatsoever in more than a year. I have had power-cuts, battery problems, and even a few kernel panics and so forth due to ACPI bugs, and reiser4 hasn't lost a single file or even needed a fsck.

      Not to mention that its fast as hell.

      I still do make weekly backups though, since I don't trust the disk to survive very long - but I trust reiser4 enough to use it as my root fs (only other fs is ext2 for /boot) on my main machine.

  4. For desktop use: UFS2 versus ReiserFS3. by CyricZ · · Score: 2, Interesting

    I recently switched a laptop from Linux with ReiserFS3 filesystems to FreeBSD 5.4 using UFS2 filesystems. The size of the filesystems were the same, and the usage pattern (program development, web browsing, etc.) the same.

    The UFS2 filesystems had the feel of being quicker than the ReiserFS3 filesystems. That said, I do not have any numerical data to back this up. However, untarring a large tarball consisting of many smallish files under FreeBSD felt quicker than doing the same under Linux.

    Would this difference be caused by the filesystems themselves, or would it most likely be a difference between the Linux and FreeBSD IO subsystems? Would ReiserFS4 be more comparable, if not better than, FreeBSD's UFS2 for workstation-style workloads?

    --
    Cyric Zndovzny at your service.
    1. Re:For desktop use: UFS2 versus ReiserFS3. by Anonymous Coward · · Score: 1, Interesting

      Small files are a tough problem. Of the mainstream Linux filesystems (ext2/3, xfs, jfs), JFS lacks many other features (quotas), xfs is fast on large files but slow on small files, and ext3 turns out to be really good at millions of small files. Reiser has the disadvantage of not being stable, and only comparable to ext3 in performance. That said, I still prefer XFS for the more mature quota system and large (4T+) filesystem capability.

  5. Huh ? by drsmithy · · Score: 3, Interesting
    Comparing Reiser4 to WinFS, Reiser says in the interview, "Reiser4 is a much more mature design, representing a 10 year effort"."

    Comparing ReiserFS and WinFS is a bit like comparing Qt and Explorer - nonsensical. They're different things, operating at different levels, to serve different purposes.

    Come on, how are the parties involved supposed to carry any credibility when making such a *basic* and *fundamental* misunderstanding - /WinFS is not a filesystem/. They also seem to misunderstand what Spotlight is - again comparing it as a filesystem, when it isn't.

  6. Did they ever fix the performance issue? by james_shoemaker · · Score: 3, Interesting

    Last time I used Reiser I had to reformat back to ext. The starving problem basically made the kernel freeze when flushing buffers during large streaming writes. Is the Large writes starve reads issue gone yet? When I say large I am referring to streaming 12 gig (hour of DV) in a continuous write.

    James

    1. Re:Did they ever fix the performance issue? by pe1chl · · Score: 3, Interesting

      The problem is not really related to large files.
      When you copy a big tree from one disk to another, where the destination is Reiserfs (source may be Reiserfs as well) it is going to be slow.
      There is something in Reiserfs that causes the system to keep too much filedata in memory during writes. At some point it even starts to swapout running programs to make room for buffers for the writing, instead of just writing them to disk and freeing for new operations.
      The result is the "freeze" problem: everything you touch happens to be swapped out and needs to be brought back in, and all system RAM is used for useless buffers.

      Try copying something like 20-30GB on a system with 1GB or less of RAM, that should show the problem.

  7. Filesystems in Userspace, Dammit! by RAMMS+EIN · · Score: 3, Interesting

    The thread you link to nicely illustrates the political manoevering necessary to get a filesystem accepted into the kernel. This is one good reason why filesystems should be implementable in userspace.

    There are so many wonderful things that can be done with filesystems once they can be added from userspace. How about transparently accessing files through SSH or FTP, from any application?

    There are various tricks that allow filesystems to be implemented in userspace, such as LUFS and FUSE. Other filesystems (especially the ones that are portable to other systems) pretend to be NFS.

    All of these suffer a performance penalty, but I wonder how much that really matters when you're interacting with disks or networks, which are very slow compared to the CPU and RAM anyway.

    Many things besides filesystems would benefit from being implementable in userspace, but filesystems are what I personally have thought about most.

    --
    Please correct me if I got my facts wrong.
    1. Re:Filesystems in Userspace, Dammit! by RAMMS+EIN · · Score: 3, Interesting

      ``I don't think a user space implementation should ever become the conventional approach to file system design on Linux in the near future though.''

      Indeed, because Linux does not make an efficient microkernel. But the benefits of microkernels are well known, and things like QNX prove that performance does not need to be a problem. I think it's very possible that the next big open source OS is going to have a great microkernel as its killer feature. DragonflyBSD, perhaps? Or maybe some new incarnation of MINIX?

      --
      Please correct me if I got my facts wrong.
  8. bring on the meta data by cerelib · · Score: 2, Interesting

    I really would like a metadata driven system. Instead of the traditional file dialog for saving or opening files it would be cool to just specify some metadata and have it thrown on a heap of files. I think this is kind of what winFS is trying to accomplish, but above the filesystem level. Hopefully that is in the future of every OS. And if not, or is some better idea comes along, then I guess some time in the future I will pick up a database implementation book and a file systems book, study up and work on it myself.

  9. 10 year maturity by LordMyren · · Score: 3, Interesting

    Normally you have to release something before it can mature. OTherwise its called development...

    Still waiting on that plugin system, thanks. Should be good though. No hurry, but if you could even begin to release some info on /how/ its structured, how devels will be able to use it, how we'll be architecting solutions with Reiser4 plugins, it'd be much appreciated.

    -Lord "I hope I havent missed anything in all these years waiting" Myren

  10. Re:Interface to metadata? by Bogtha · · Score: 4, Interesting

    Well, what I want to know is: How do I get to this metadata? Some extra tool?

    One of the driving concepts behind ReiserFS is that metadata is nothing special, and it should be presented in the same namespace as the files themselves. If you read the article, it talks about using 'cat' and other simple tools to manipulate the metadata. Think something like 'cat /home/foo/music/some.mp3/artist' to display the person who performed a song.

    Some right-click option that I have to select every time I create a file?

    It depends on the metadata. Think about file permissions. That's metadata. All the files you create are given defaults based on your umask, and you can go in and change them at any time.

    In order to expose some of this metadata to the end-user in a GUI, yes, there will probably need to be some new UI work done. It doesn't all just magically work, it has to be presented to the end-user in some way that will make sense to them. So what I would expect is that the filesystem and plugins will be finished and done, and able to be manipulated by programs and shell scripts, and then it will take further work to integrate this metadata support into GUIs and file managers in a way that's useful to non-power-users.

    --
    Bogtha Bogtha Bogtha
  11. rlocate is good for single user systems by Trigun · · Score: 2, Interesting

    but it is horrible for a large networked filestore. The heirarchies that the secretaries at work come up with are convoluted at best, and it takes a long weekend to even attempt to comprehend the logic of their naming convention. When they lose a file, or forget what it was named, when they last worked on it, but can tell you that it was an ISO file (which in itself is ironic), coupled with the fact that they often change the file extensions on their files to random numbers, or try to change it to .pdf to save it as a pdf file, metadata makes a lot of sense.

  12. Re:Interface to metadata? by RAMMS+EIN · · Score: 2, Interesting

    ``Well, what I want to know is: How do I get to this metadata? Some extra tool? Some right-click option that I have to select every time I create a file? Will all File dialog boxes have to be rewritten, and will I have to manually input all this info?''

    How does metadata get into the ID3 tags of MP3s and the comments in Ogg Vorbis files? Wouldn't it be nice if that info were available through a standard interface? Wouldn't it be nice if the same interface provided access to metadata about movies? Webpages? Images? Search for all movies longer than 2 hours, or search for images of 1024x768 resolution? BeOS has a pretty nice interface to metadata. These sorts of searches are now starting to crop up in Windows, too.

    Reiser4 is about the only file system that implements metadata properly and efficiently. This could be a killer feature for Linux, if only Reiser4 were accepted in the kernel and some software written to take advantage of the features. It shouldn't be too hard to put some functionality in GIMP, Nautilus, some command-line tools, etc.

    ``Once there's an application which can find all pictures of my dog, or songs with piano in them, and store THAT in the metadata, which I can search somehow, call me.''

    AI is soooo 1960s. ;-) Maybe we should revive LISP and use reiser4 for efficient storage of CLOS objects? It's an idea I've been toying with for a while...it's crazy enough that it might just work. In the meantime, I already have a simple filesystem for Scheme objects on paper...I just have to get enough time one day to implement it and see if it's usable in practice.

    --
    Please correct me if I got my facts wrong.
  13. Been using Reiser 3 for a long time by ericzundel · · Score: 2, Interesting
    We used Reiser 3 for a long time on our systems in with the 2.4 series kernels. It may not have been the "first" journaling filesystem for linux, but at the time we installed, it was the first production ready version. We were very thankful for it reducing the time to reboot and fsck on our (at the time) very large filesystems.

    Over the past several years, we had pretty good luck with using Reiser on root and data filesystems. Good luck in the sense that we never encountered something we couldn't recover from. However, we did have more than one instance of filesystem corruption that would crash the kernel (We used it on several of our development servers). The warnings on the 'rebuild tree' utility weren't very reassuring, but it always seemed to work. We also had instances of corrupt files by sticking random bits of data of other files at the end.

    I'm migrating our servers slowly over to ext3 as we upgrade them, mainly because it is more mainstream and I prefer my source code sunny side up as opposed to scrambled. I noticed that the same number of files seems to take up less room (10% or so?) on the disk overall with Reiser than with Ext3 (as reported by df).

  14. general FS question by nickos · · Score: 2, Interesting

    I've been thinking about starting up a file system project (as you do), and was wondering if anyone has thought of using something like the FUSE kernel module with a database (say MySQL or Berkeley DB) to create an easily indexible file system. The idea is to create a basic proof of concept using FUSE and if it gets any interest turn it into a proper (kernelspace) FS.

    What sort of problems can I expect to face?

  15. Does Reiser4 work in a 64bit environment on AMD64? by t35t0r · · Score: 2, Interesting

    The topic in channel #gentoo-amd64 on irc.freenode.net has said "Reiser4 is evil" for more than a year. Does anyone know if Reiser4 actually works in a x86_64 environment?

  16. IBM's JFS by jd · · Score: 2, Interesting
    I believe IBM's JFS (which, as its name implies, is a journalling filesystem!) was one of the first journalling filesystems for Linux - it beat SGI's XFS on being first out the door, although IBM took longer to get it stable. SGI were really quick to move from a mere code dump to a usable filesystem.


    Not really looked at GPFS, but if IBM's history is anything to go by (JFS, M:N threading, the DAISY code translator, etc) it'll be revolutionary, be an inspiration to a thousand projects, and get forgotten as it is overtaken.


    Sad, but true - IBM has done masses for Linux, in terms of proof-of-concpet, forcing the pace and introducing new idead. Unfortunately, they then drop the ball. It hasn't mattered much, as others have gone running with the ideas, but it would be nice if IBM saw a real return on their investment by keeping on until their technology is adopted.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  17. Re:Interface to metadata? by ArsonSmith · · Score: 5, Interesting

    Another thing I thought sounded cool was the ability to cat /home/foo/music/some.mp3/raw > /dev/dsp and the mp3 would just play by using a plugin that ran it through an mp3 library. This would allow application developers to just access file/raw rather than worrying about file types and conversions.

    If I'm writing an image viewing program I no longer have to worry about hooks to libjpg, libungif, libpng, libevery image file type available. Let the OS care about file types and let applications deal with raw data and focus on interface rather than file types.

    --
    Paying taxes to buy civilization is like paying a hooker to buy love.
  18. Re:Kernel vs User Mode for filesystem by hansreiser · · Score: 3, Interesting

    Well, that makes a lot more sense now, and surely the poster was just confused rather than malicious.

    Linus and I disagree on this point, a pity that.

  19. Re:Interface to metadata? by CoughDropAddict · · Score: 2, Interesting

    Well, noone stops you from opening and reading 'file/raw/bps', 'file/raw/endianness' etc. As long as we can agree on the common namespace for all audio files, I don't see why it won't work.

    OK, but that won't work for the "cat file.mp3/raw > /dev/dsp" case.

    The point of my criticism is that raw audio data isn't self-describing, so unlike text, you can't pipe it around without supplying some metadata. IMO a better solution than what you propose is to support an interface like file.mp3/wav, which is raw data, but has a WAV header to tell you how to interpret it.