Thursday, September 27, 2012

The anti-Btrfs FUD must stop...

If you read the Whackypedia entry on "Butter FS" (Btrfs), you see:

"Btrfs (B-tree file system, variously pronounced "Butter F S", "Butterfuss", "Better F S",[1] or "B-tree F S"[2]) is a GPL-licensed copy-on-write file system for Linux. Development began at Oracle Corporation in 2007. It is still in heavy development and marked as unstable"

ewww... SCARY!

But then there´s another view:
LinuxCon Japan 2012 | Presentations
"On The Way to a Healthy Btrfs Towards Enterprise"
by  Liu Bo, Fujitsu

Let me quote:
"Btrfs has been on full development for about 5 years and it does make lots of progress on both features and performance, but why does everybody keep tagging it with ""experimental""? And why do people
still think of it as a vulnerable one for production use? As a goal of production use, we have been strengthening several features, making improvements on performance and keeping fixing bugs to make btrfs
stable, for instance, ""snapshot aware defrag"", ""extent buffer cache"", ""rbtree lock contention"", etc. This talk will cover the above"

From its web "Liu Bo has been working on Linux kernel development since late 2010 as a Fujitsu engineer. He has been working on filesystem field and he's now focusing on btrfs development".

RHEL 7 to get Btrfs support

"RHEL 7 will support ext4, XFS, and Btrfs (boot and data)"

Then you have SuSE:

"With SUSE Linux Enterprise 11 SP2, the btrfs file system joins ext3, reiserfs, xfs and ocfs2 as *commercially supported file systems*. Each file system offers disctinct advantages. While the installation
default is ext3, we recommend xfs when maximizing data performance is desired, and *btrfs as a root file system when snapshotting and rollback capabilities are required. Btrfs is supported as a root file
system (i.e. the file system for the operating system) across all architectures of SUSE Linux Enterprise 11 SP2*. "

"OL6.3 that boots up uek (2.6.39-200.24.1) as install kernel and uses btrfs as the default filesystem for installation. So latest and greatest direct access to btrfs, a modern well-tested, current kernel,
freely available. "

So, again, why does people insist in calling Btrfs "experimental" and "unstable"?. Do you think SUSE and Oracle both ship an unstable FS as a comercially supported feature??.

Sheesh, I´ve lost data with IBM´s "supposedly ´GA´" version of JFS for OS/2 once...

Back to Btrfs... it´s in the mainline Linux Kernel since February so with the adoption by RHEL 7, it´ll become mainstream sooner rather than later...

Here is a good video to get you interested on Btrfs and why it matters...

Just my $0.02...


Anonymous said...

It might not be 'unstable' or 'experimental' but right now it lacks good recovery tools so if it does break your screwed. In my experience it dealt with degradation well, bad sectors can cause it to do things like refusing to mount the entire partition (although that might have been fixed by now and there are probably ways to recover). A repair fsck was only just released. It's also lacking some of the nicer features such as RAID5/6 (soon), data dedupe, encryption (possible to do on the block level).

Nerd Progre said...

anonymous: that didn´t prevent IBM from shipping JFS as part of OS/2 Warp Server for e-business (around Y2K).

Four years later, there were people still asking for an undelete utility...


Nerd Progre said...

"bad sectors can cause it to do things like refusing to mount the entire partition"
oh that sucks
"(although that might have been fixed by now and there are probably ways to recover)"

Oh,so you contradict yourself in the same sentence!!

"A repair fsck was only just released"

So you end up by saying that your whole argument against BTRFS is now invalid!

Way to go!


Nerd Progre said...

"Feature set of Linux 3.9 has been established: RAID 5 and 6 in Btrfs"

gehidore said...

I've been using btrfs since November of 2012 for a production laptop, as it's my only machine I do put a lot of faith in the filesystem. My system is a whole disk partition with subvolumes for /home and / which I then snapshot every hour keeping the last 24 hours on rotation. I then rsync the last hour snapshot to a secondary btrfs drive in the same machine every 8 hours and then snapshot that copy to the same disk keeping 7 days worth of thrice daily snapshots.

I've recently added in an ext3 nas drive, as that's all I can hook up to my pesky router, once beagle bone black is in my hands I will again be using btrfs even for my network storage.

RE: Lack of recovery.

Since November I've had 3 filesystem 'failures' the first was caused by a known bug with kernel based suspend to disk.

Using mount flag recovery I was able to rsync all my data from the drive.

The second was a a Kingston SSD that suffered from a liquid attack which also fried the computer. I was still able to mount with -o recovery and save all but about 10G of non critical data.

The third was also a known bug with the 3.9 series kernel which causes an issue under certain load levels. Ironically I didn't pay attention to the mailing lists and this bug didn't effect me until I had just finished an update to 3.10 and before reboot and a big rsync on the device.

This was fixed with btrfs-zero-log and I'm currently posting this from that system.

I've used many different filesystems and never had this much success with recovery ever