SUSE has been an ardent supporter of the ReiserFS file system for more than half a decade. After the company's acquisition by Novell, that relationship continued. But of late SUSE saw several problems with ReiserFS. Mahoney in his email identifies several technical problems, as well as problems related to maintenance. The problem grew out of proportion ever since Hans Reiser, the main developer of the file system, relegated ReiserFS v3 to maintenance mode and would vehemently resist any proposals for change except for bug fixes.
Reiser has been pushing people to use ReiserFS v4 for several years now, but his call for including it in the Linux kernel fell on deaf ears. As a result, the only developers at SUSE working with ReiserFS v3 were Chris Mason, Jan Kara (internally), and Mahoney. A rotating member of Hans's team at his company, Namesys, also worked on the code. Mason has left Novell and moved to Oracle, and, as noted, Mahoney has expressed his desire to leave ReiserFS behind. "All of us have projects we're very much more interested in than working with ReiserFS," he says. "ReiserFS v3 is a dead end."
Technically, the road to adopting ReiserFS v4 wasn't a smooth one either. "Reiser4 is not an incremental update and requires a reformat, which is unreasonable for most people. I view Reiser4 as an interesting research file system, but that's about as far as it goes. I've been unimpressed with its stability so far. I don't know how advanced the recovery tools are yet, but I suspect that the complexity of the format and the ability to essentially define the format on the fly with plugins will make a useful fsck extremely difficult," Mahoney says.
The obvious choice then for replacing an "aging file system," Mahoney thinks, "is to switch to a proven one with a clear upgrade path. That file system is ext3." Since a majority of distributions use ext3 as their default file system, it has a much larger developer community to squash bugs than ReiserFS 3, where most fixes originate from either Mason or Mahoney.
Mahoney is impressed by ext3's recovery and debugging tools and explains that it has a clear upgrade path. "There is quite a bit of interest in the community in improving ext3, and ext4 is already under development. Like the upgrade path from ext2 to ext3, the path to ext4 is clearly defined. Existing file systems can be updated easily, and new files will be able to take advantage of the new features," Mahoney says.
But many were surprised by the timing of Novell's move. Coincidentally, the day Mahoney posted the proposal, Reiser's house was searched by the police in connection to the disappearance of his wife. Mahoney claims his proposal was posted several hours before the news concerning Reiser broke and the timing was purely coincidental.
On October 10, Reiser was arrested, based on circumstantial evidence linking him to his wife's disappearance.
Kevan Barney, senior manager of public relations for Linux and open source at Novell today insisted that Novell's plans were "certainly formulated well before this week's legal developments." Barney says the decision was made in accordance to the demand of their customers. "In response to customer demand, in the next versions of openSUSE (10.2) and SUSE Linux Enterprise (likely called version 11), Novell will be changing the default file system from ReiserFS 3 to ext3."
While this might seem like the end of the road for ReiserFS, Barney says that Novell will continue to support and improve ReiserFS v3. Word has also come from several individuals associated to Namesys, Hans's company, that work on the filesystem will continue.
Things will become clearer as the dust settles. Novell is expected to make additional information available about the filesystem changes to developers and users shortly. It remains to be seen whether Slackware, the only other major Linux distribution using ReiserFS as its default filesystem, will follow in Novell's footsteps. Also under the microscope is Linspire, which has been actively sponsoring ReiserFS development. Emails to both Slackware and Linspire failed to get a response.
Note: Comments are owned by the poster. We are not responsible for their content.
Going from R3 to R4 would require a reformat. To avoid that, they're going from R3 to ext3, which<nobr> <wbr></nobr>... requires a reformat if you're already using R3.
I thought one of Mahoney's comments was less than candid - to the point of being dishonest:
Ext3's performance in some situations may not be on par with Reiser3,
Yeah, right. Like a factor of 10 worse on file creation, and nearly twice as slow on file deletion. I really hate waiting for my computer. Why do so many developers seem to think performance is unimportant?
First, as a poster said earlier, it's only a change in the default for new installations. Nobody is being deprived of R3.
That said, leaving R3 for another filesystem is guaranteed to require a re-format. But what about the next filesystem upgrade after that? How about ext3 to ext4? We already have the ext4 developers' word that it will be a clean, non-destructive upgrade, just as ext2-to-ext3 was. Will R5 require a re-format to upgrade from R4? We don't know yet. Given the re-format required for R3-to-R4, it would be unwise to expect a non-destructive upgrade from R4 to R5.
Now, for those "performance" figures...
Seriously, what program or user creates 16,000 empty files all at once? A program may create 5, 10, 20, or even 100 temporary files, but those are usually held in<nobr> <wbr></nobr>/tmp, mounted as a tmpfs so that it uses no actual disk access other than swapping. Even if they aren't, (1) filesystem caching will help the performance, but (2) are you really going to notice if The GIMP takes an extra half-second to launch?
Actually, odds are that launching The GIMP on an ext3-based SuSE system will be faster. For now, at least, ext3 on SuSE means it's a new system, with little to no filesystem fragmentation.
The big exception to this is unpacking large source tarballs, like the Linux kernel (25,225 files in my Slackware source tarball). Even then, is your kernel build so urgent that 15 seconds more to unpack is a matter of life or death? And how many times a day are you unpacking source tarballs, anyway? 5, 10, 20, 100?
(I'm ignoring the build process. It's CPU-bound, no matter the filesystem.)
Don't blindly quote benchmarks. Think instead about SuSE's target audience, and real-world usage.
I'm a ReiserFS user as well, and dislike the switch of 'default' to ext3. The only reason I see the switch to ext3 is that it is much more widely supported than reiserfs, and has an upgrade path. I only wonder what kind of filesystem Reiser 3/4 would be if 1/10th the support and work that has been expended on ext3 was spent instead on reiserfs's.
I lay most of this at the feet of Mr. Reiser. His attitude towards improving 3.6 and providing a clean upgrade path from 3.6 is probably as much a cause of this as anything. He has also ruffled quite a few feathers with Reiser4, in particular with the kernel developers. I suspect any fair minded person would conclude he is being treated like a red-headed stepchild by those same developers. That same person would also find that a good bit of blame should be laid on his doorstep as well. I find it particularly galling that ext4 has been accepted to the development kernel, while Hans has been fighting for over a year to get Reiser4 into the kernel. I know it's inevitable, but I hate to see the spectre of politics and buddy networks raising their ugly head in what should be a purely technical consideration. Hans is brilliant, but like many brilliant people his drive for technical excellence seems to be seen as arrogance.
Two points.
Posted by: Anonymous Coward on October 18, 2006 12:34 AMBut, why use ext3? Why don't they use Novell's NSS(Novell Storage Services)? It's fast, reliable, allows block level access for backups etc, has built in deleted file recovery, and lots more.
#