This blog is about the Google Summer of Code project "ZFS filesystem for FUSE/Linux"

Saturday, September 13, 2008

zfs-fuse 0.5.0 released

Hi,

After resyncing the ZFS code in zfs-fuse to OpenSolaris build 98, I have (finally!) decided to make a new release.

I know that going from 0.4.0_beta1 to 0.5.0 is not the most logical thing to do.

However, if you consider that 0.4.0_beta1 was released more than 18 months ago and if you consider all the improvements that have been made since then, it makes a little more sense :-)

(By the way, if you still running 0.4.0_beta1... please, please, please upgrade *now* - serious bugs have been fixed).

This release brings us up-to-date with ZFS pool version 13 (try "zpool upgrade -v").You can read about any zfs-fuse specific fixes or enhancements in the CHANGES file, although I'm sure I missed a few things.

One thing to mention is that there's no development going on in zfs-fuse in terms of missing features (the ones in the STATUS file). At the moment you can only expect bug fixes and ZFS code updates.

For those of you who have not been following zfs-fuse development closely, please be assured that if you are using IDE, SATA or SCSI disks, you no longer need to disable the write caches of your devices (thanks to Eric Anopolsky).

However, that is only true if you use raw disks or partitions as your vdevs -- if you use LVM, EVMS or other devices (such as loop devices), the disks' write caches still should be manually disabled to avoid potential problems.

If you want peace of mind you can check your syslog right after zfs-fuse starts to do any I/O - zfs-fuse will notify you if it can't flush the write cache.

Congratulations! Fantastic work. And, great to know the project is still alive. I have high hopes of chucking ext3 entirely some day soon.

Since it appears from the STATUS file that new features aren't coming until 0.6.0, does your statement that you're not working on missing features mean there's no progress towards 0.6.0 currently foreseen?

Hmmm... hey wizeman.. I'm doing my engineering final year.. For my project, i've choosen to write a file system.. it would be "VERY" helpful if u help me out.. as i said i'm new to linux programming. so don't know exatly where to start.. please contact me --

raja.fire@gmail.com.

for now, i'm leaning linux kernel and file system basics... also, i'm going through the CODE of your ZFS-FUSE first version...

Wizeman,great work on getting ZFS work under linux. I would love to see a kernel space implementation so would the linux community. I had been thinking on writing an entirely new FS with similar features before I researched the existing ones and found ZFS. More or less that is what I wanted. Thanx for your contribution.

If it's failing to compile and you're getting the "warn_unused_result" error then just edit "src/SConstruct", search for any "-Werror" flags and remove them.

"-Werror" turns warnings into fatal errors. The "warn_ununsed_result" shows up in newer versions of gcc/libc and is relatively harmless. Of course the true fix would be to change the ZFS-FUSE code to not ignore the results of whatever calls are showing warnings.

This is really piece of great work! Few questions: Is it ready to store valuable data? Are You planning to continue with this project? And finally most important: Are pools and logical volumes compatible with sun's original? Thanks in advance.

Too bad there are not enough news about this project (september 2008, now jully 2009, almost 1 year).

I have been reading about it in a french linux magazine, and after playing a little with it it's just great !

Now the big question is : is it reliable enough to put important data on it ? Maybe I should just wait until btrfs to be ready instead ?

Anyway congratulations for your amazing work !(did you know that mac os x is still using version 8 pools, and so it can't import pools created by zfs-fuse since it uses version 13 !!! What a shame, normally zfs support was supposed to be close to perfection on mac os x...).

I am using ZFS actively in FreeBSD (both 7.2 and 8.0) and one feature I really like is zfs send/recv. With zfs-fuse, this is however, quite problematic, because zfs control interface (which is used for all zfs commands, including send and recv) seems to be single-threaded. So it is impossible to do simultaneous send/recv/set/get for a zfs-fuse instance.