
ZFS on Linux v0.7.0 released - cvwright
http://list.zfsonlinux.org/pipermail/zfs-announce/2017-July/000015.html
======
vmp
I use ZoL for my home-server (5x3TB RAIDZ) and couldn't be happier, never had
an issue too. The features really spoiled me compared to other
filesystems/volume-managers. The only issue that irks me is that I can't
resize a pool after it was created, can't add new disks, can't remove one
(without risking parity).

Recently I tried running a simple BTRFS SSD Mirror for only a single KVM
virtual machine, I thought compression would be neat since they are just two
cheap 120GB SSDs and I wanted to have a spare if one of them gave up the
ghost.

At first everything was great but after I ran a btrfs scrub, and it found
~4000 uncorrectable errors, my VM was broken beyond repair and had to be
restored from backup. The SSDs SMART data was fine, there weren't any loose
cables, everything worked great, no reported (ECC) memory errors... I have no
proof but it seems that BTRFS just decided to destroy itself.

I have since moved my SSDs to a ZoL mirror and (after running scrubs every two
days for two weeks) had no further corruption, silent or otherwise. To me,
this means that btrfs just isn't stable enough for production use - while ZoL
is.

~~~
gregmac
> The only issue that irks me is that I can't resize a pool after it was
> created, can't add new disks, can't remove one (without risking parity).

This is what eliminates it from home use for me.

It means to expand the pool the only way is to copy everything off (so you
need enough spare storage to hold your entire pool), rebuild, then copy it
back. The alternative is don't expand, and just add additional pools, but that
starts losing benefits quickly (not having to think about where there's free
space when adding something, not having to look in multiple locations to find
something).

Can anyone who has been using ZFS long-term at home comment? How do you add
more space?

~~~
bestham
I have run ZFS at home since 2011 and migrated to larger drives one time: from
6x3TB to 6x4TB. The only downside is that the slabs are smaller compared to a
native 6x4TB array.

~~~
tscs37
That's not the problem here.

The problem is having a 6x3TB pool and turning it into a 7x3TB pool, which is
arguably much much cheaper than buying 6x4TB.

------
gigatexal
Wow, just wow. These perf improvements are great. ASIC accelerated filesystems
is just crazy

### Performance

* ARC Buffer Data (ABD) - Allocates ARC data buffers using scatter lists of pages instead of virtual memory. This approach minimizes fragmentation on the system allowing for a more efficient use of memory. The reduced demand for virtual memory also improves stability and performance on 32-bit architectures.

* Compressed ARC - Cached file data is compressed by default in memory and uncompressed on demand. This allows for an larger effective cache which improves overall performance.

* Vectorized RAIDZ - Hardware optimized RAIDZ which reduces CPU usage. Supported SIMD instructions: sse2, ssse3, avx2, avx512f, and avx512bw, neon, neonx2

* Vectorized checksums - Hardware optimized Fletcher-4 checksums which reduce CPU usage. Supported SIMD instructions: sse2, ssse3, avx2, avx512f, neon

* GZIP compression offloading - Hardware optimized GZIP compression offloading with QAT accelerator.

* Metadata performance - Overall improved metadata performance. Optimizations include a multi-threaded allocator, batched quota updates, improved prefetching, and streamlined call paths.

* Faster RAIDZ resilver - When resilvering RAIDZ intelligently skips sections of the device which don't need to be rebuilt.

~~~
gbrown_
> ASIC accelerated filesystems is just crazy

What?

~~~
anoother
I guess this refers specifically to the following bullets:

* Vectorized RAIDZ - Hardware optimized RAIDZ which reduces CPU usage. Supported SIMD instructions: sse2, ssse3, avx2, avx512f, and avx512bw, neon, neonx2

* Vectorized checksums - Hardware optimized Fletcher-4 checksums which reduce CPU usage. Supported SIMD instructions: sse2, ssse3, avx2, avx512f, neon

* GZIP compression offloading - Hardware optimized GZIP compression offloading with QAT accelerator.

All use vector and/or SIMD instructions on the CPU, thoughh QuickAssist (QAT
above) is available on dedicated add-in card also.

~~~
gbrown_
Yeah I don't equate SIMD instructions to being ASIC's.

~~~
lorenzhs
Yeah an ASIC is an _Application-specific integrated circuit_. SIMD
instructions are not application-specific.

~~~
gigatexal
Thanks for correcting me. I was wrong. But it is nice to see acceleration in
the FS space using SIMD intrinsics on the chips we already own.

------
chungy
Big fan of ZFS and while there was an appearance of a lull while ZoL was stuck
in 0.6.x for so long, this is a very welcome update :)

Warning to all that use ZFS to host the /boot file system, however: GRUB
doesn't presently support all the features added to this release. Be careful
about the features you enable!

~~~
simcop2387
This is why I still suggest keeping it on ext of some method and then just
backing it up to zfs. Though now I'm wondering if you could put a raid1 on a
zdev that matches the real disk and get benefits that way.....

------
XorNot
Nice - zfs allow is now working. That's big news since it means users can
snapshot.

------
Koshkin
With both Linux and FreeBSD being open source, I am curious what is it that
prevents ZFS from being a first-class, stable component in Linux right now,
just as it already is in FreeBSD.

~~~
willlll
Maybe it's fixed with this version, but we've seen kernel pauses on the order
of minutes under high memory / OOM situations, with ZoL trying to get memory.

~~~
dpedu
What was your setup like? I've encountered similar - the cause ended up being
a mix of xattrs (I don't use them so I just disabled the feature) and needing
to tune zfs to be less aggressive handling my consumer-grade disks.

~~~
nasduia
Can you expand on what you did to tune things?

------
flyinghamster
It's a crying shame that DKMS is so horribly broken on RHEL/CentOS/SL. Nothing
like having it blithely make weak-updates symlinks to the ZFS and SPL modules
that were compiled for your oldest still-installed kernel, only for those
symlinks to end up pointing nowhere after that old kernel gets deleted. Oops!
Your zpools now won't import until you clean up the mess. Been there, done
that too many times.

~~~
ewwhite
Yeah, I have to play the game of deleting the zfs and spl packages, deleting
weak-modules and reinstalling on the new kernel. It's expected, but silly.

------
nwmcsween
Has ZoL made a unified page cache yet? This is a major reason I won't use it.

~~~
sargun
No. You are still reliant on the Arc which is kept on a slab outside of
Linux's traditional page cache.

------
anorwell
Encryption didn't make it in? That's too bad!

~~~
lathiat
Yeah I've been watching the pull request eagerly but not quite there :(

[https://github.com/zfsonlinux/zfs/pull/5769](https://github.com/zfsonlinux/zfs/pull/5769)

Judging by the comments from today though it sounds like it will be merged
very shortly after this release. So that's good news :D

I'm also wanting to look at this "OPAL" native drive encryption stuff, which
requires among other things a UEFI plugin and some other bits. That would be a
useful solution also though much more versatile here in ZFS for example doing
per-user stuff, and also encrypted send without decrypting

Lots of good changes in 0.7 otherwise!

~~~
lmm
Wait, has encryption hit open-source ZFS at all? Can I use it on FreeBSD?

~~~
wspeirs
Don't know if you can use it on FreeBSD yet, but tcaputi added it to Linux
here:
[https://github.com/zfsonlinux/zfs/pull/5769](https://github.com/zfsonlinux/zfs/pull/5769)
Matt Ahrens approved the changes, and hopefully it'll get rolled in ZoL soon.

Full disclosure, I work with Tom at Datto.

------
nwrk
Thank you and congrats on release - beer time

(running release candidate on laptop via Arch without issues and current
stable on many servers)

------
unixhero
Wow. What a massive release.

------
43224gg252
For as much propaganda as I see about ZFS, I've never once encountered it in
the wild.

Most of the companies here I've never even heard of and the ones I have heard
of aren't companies I would take into account when choosing a file system.

[http://open-zfs.org/wiki/Companies](http://open-zfs.org/wiki/Companies)

In all my years I've never encountered or needed this file system, and every
time it's mentioned it sounds like it's more trouble to run it than its worth.

~~~
a012
Are you talking about ZFS on linux or just ZFS itself? It's pretty wild to say
"it's more trouble to run it than its worth" just about ZFS when you run it on
FreeBSD or Solaris.

------
thinkingkong
Part of the challenge with ZFS is its amazing and (almost) nobody uses it. It
creates a weird chicken-and-egg scenario with regards to familiarity in
production. If Google can get away without using it then why do you need to
have it? The reality is: you don't. It's another incredible technical
achievement that was amazing for its time, but the world of containers, speed
of systems, and abstraction of physical machines have made it more or less a
moot point for everyone other than SAN administrators or hardcore COW
optimization junkies.

~~~
linksnapzz
" If Google can get away without using it then why do you need to have it?"

I think that comment has to go on the Best of 'Shit HN Says' corkboard ere
long. I mean, when I am faced w/ a technical challenge at work, or at
home...why would my first thought NOT be 'What would Google do in this
situation?'

~~~
supremesaboteur
I assume the thinking goes like this :

ZFS was designed for enterprises. Enterprise software has requirements of high
stability, scale etc. Google is probably on the extreme end of these problems.
So if Google considered and rejected ZFS it probably means it was not very
good.

What probably really happened was that Google was already too invested in
Google File System and therefore did not give other file systems a fair chance

~~~
mjevans
Google's big enough that it, most likely, has something that the public ceph
project is a pale imitation of.

Actually, they're big enough that something between what ceph can do and what
backblaze does is probably their /archive/ backend.

They probably have all of the fast stuff on 'disposable' temporary copies in
RAM or SSDs.

