From owner-freebsd-current@FreeBSD.ORG Tue Jul 13 03:14:05 2010 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6C6A71065674 for ; Tue, 13 Jul 2010 03:14:05 +0000 (UTC) (envelope-from grarpamp@gmail.com) Received: from mail-vw0-f54.google.com (mail-vw0-f54.google.com [209.85.212.54]) by mx1.freebsd.org (Postfix) with ESMTP id 23FFE8FC1E for ; Tue, 13 Jul 2010 03:14:04 +0000 (UTC) Received: by vws6 with SMTP id 6so248155vws.13 for ; Mon, 12 Jul 2010 20:14:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=/ZFCiEoJsHrYH0OMmNrcT9KNI02luGcnEq/ddSOfyck=; b=gDexsEKq0k5YepD7vhd25b5OW//1PILDxOdKrVZp1Bgtp6geep6BpuxcuAtcpHY3J4 nEBJSG0F8cBSRCfQAjVoNPCA2j7hh7rS4wTbOHpg2VRzXj7U8h0x2wBrFY7dSub02XTR 8URiBqqmDunr2fH+KSm5fWth/ddFW5Ie7Cn70= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=q1KwrCNQI3mi1+3KJXuQ/zzpGLYW7sbpvmbm1+7jyxGr5F636cWNn5zPxizLfGuJLn kt1J4V3bumGU+molJtRQkzAqZGQXeTlvAIRe15/PPoZErGxOZOyLU79daRVOyXv6LSJx rhY0jqKorcYhmOKz+5yrXMFZayUobXioYHIPc= MIME-Version: 1.0 Received: by 10.220.121.233 with SMTP id i41mr7427339vcr.143.1278990844207; Mon, 12 Jul 2010 20:14:04 -0700 (PDT) Received: by 10.220.203.204 with HTTP; Mon, 12 Jul 2010 20:14:04 -0700 (PDT) Date: Mon, 12 Jul 2010 23:14:04 -0400 Message-ID: From: grarpamp To: freebsd-current@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 X-Mailman-Approved-At: Tue, 13 Jul 2010 11:18:45 +0000 Subject: Re: [CFT] ZFS v15 patch (version 3) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jul 2010 03:14:05 -0000 Wanted to say thank you for those working on keeping ZFS up to date :-) Are all the non-FreeBSD specific fixes being made by the FreeBSD team being punted back up to the [Open]Solaris folks so that they may include them in their native ZFS... and thus trickle back down to FreeBSD, thereby minimizing the overall FreeBSD porting/review changeset? Here is the ZFS site's list of the major version differences for reference. Note that I think upwards resize and maybe one other commonly requested item are actually present in one of these versions but didn't make it into the log below, it's probably on zfs-discuss though. [zpool v15, zfs v4] seems to be a good spot... till ZFS-crypto ;-) Thanks! http://hub.opensolaris.org/bin/view/Community+Group+zfs/n [zpool] http://hub.opensolaris.org/bin/view/Community+Group+zfs/n-1 [zfs] ======================================== ZFS File System Version 5 This version includes support for the following feature: * System attributes This feature is available in: * Nevada, build 137 The related change requests are: * 6716117 ZFS needs native system attribute infrastructure * 6516171 zpl symlinks should have their own object type ======================================== ZFS File System Version 4 This version includes support for the following features: * userused@... and groupused@... properties * userquota@... and groupquota@... properties These features are available in: * Solaris Express Community Edition, build 114 The related bug and PSARC case for version 4 changes are: * 6501037 want user/group quotas on ZFS * PSARC 2009/204 ZFS user/group quotas & space accounting ======================================== ZFS File System Version 3 This version includes support for the following features: * Support for sharing ZFS file systems over CIFS * Case insensitivity support * System attribute support * Integrated anti-virus support These features integrated into the following release: * Solaris Express Community Edition, build 77 These features were integrated with the following bug fixes: * 6617183 CIFS Service PSARC 2006/715 * 6546893 Solaris system attribute support * 6417428 Case-insensitive file system name lookup to support CIFS * 6417435 DOS attributes and additional timestamps to support for CIFS * 6417442 File system quarantined and modified attributes to support an integrated Anti-Virus service ======================================== ZFS File System Version 2 This version includes support for the following features: * Enhanced directory entries. In particular, directory entries now store the object type, (for example, file, directory, named pipe, and so on) in addition to the object number. * Upgrading ZFS file systems to provide future ZFS file system enhancements to existing file systems. These features were integrated with the following bug fixes: * 6572637 store object type in directory entries * PSARC/2007/328 zfs upgrade These features are available in: * Solaris Express Community Edition, build 69 ======================================== File System Version 1 This page describes the features that are available with version 1 of the ZFS file system on-disk format (not the pool version). Because this is the initial ZFS on-disk format that integrated on 10/31/05, see the list of initial features in the ZFS Admin Guide. The first official releases supporting this version are: * Solaris Express Community Edition, build 36 * Solaris 10 6/06 release ======================================== ======================================== ZFS Pool Version 24 This version includes support for system attributes. Pool version 24 is available in this release: * Nevada, build 137 The change records for the version 24 change are: * 6716117 ZFS needs native system attribute infrastructure * 6516171 zpl symlinks should have their own object type ======================================== ZFS Pool Version 23 This version includes support for the slim ZIL. Pool version 23 is available in this release: * OpenSolaris, build 135 The change record for the version 23 change is: * 6595532 ZIL is too talkative ======================================== ZFS Pool Version 22 This version includes support for zfs receive properties. Pool version 22 is available in this release: * Solaris Express Community Edition, build 128 The PSARC case for the version 22 change is: * PSARC/2009/510 ZFS Received Properties ======================================== ZFS Pool Version 21 This version includes support for ZFS deduplication properties. Pool version 21 is available in this release: * Solaris Express Community Edition, build 128 The PSARC case for the version 21 change is: * PSARC/2009/571 ZFS Deduplication Properties ======================================== ZFS Pool Version 20 This version includes the zle compression algorithm that is needed to support the ZFS deduplication properties in ZFS pool version 21. Both pool versions are available in this release: * Solaris Express Community Edition, build 128 The PSARC case for the version 20 change is: * PSARC/2009/571 ZFS Deduplication Properties ======================================== ZFS Pool Version 19 This version includes support for the following feature: * ZFS log device removal This feature is available in: * Solaris Express Community Edition, build 125 The related change record for the version 19 change is: * 6574286 removing a slog doesn't work ======================================== ZFS Pool Version 18 This version includes support for the following feature: * ZFS snapshot holds This feature is available in: * Solaris Express Community Edition, build 121 The related change record for the version 18 change is: * 6803121 want user-settable refcounts on snapshots ======================================== ZFS Pool Version 17 This version includes support for the following feature: * triple-parity RAID-Z This feature is available in: * Solaris Express Community Edition, build 120 The related change record for the version 17 change is: * 6854612 triple-parity RAID-Z ======================================== ZFS Pool Version 16 This version includes support for the following feature: * stmf property support This feature is available in: * Solaris Express Community Edition, build 116 The related bug for the version 16 change is: * 6736004 zvols need an additional property for comstar support ======================================== ZFS Pool Version 15 This version includes support for the following features: * userused@... and groupused@... properties * userquota@... and groupquota@... properties These features are available in: * Solaris Express Community Edition, build 114 The related bug and PSARC case for version 15 changes are: * 6501037 want user/group quotas on ZFS * PSARC 2009/204 ZFS user/group quotas & space accounting ======================================== ZFS Pool Version 14 This version includes support for the following feature: * passthrough-x aclinherit property support This feature is available in: * Solaris Express Community Edition, build 103 The related bug and PSARC case for the version 14 change are: * 6765166 Need to provide mechanism to optionally inherit ACE_EXECUTE * PSARC 2008/659 New ZFS "passthrough-x" ACL inheritance rules ======================================== ZFS Pool Version 13 This version includes support for the following features: * usedbysnapshots property * usedbychildren property * usedbyrefreservation property * usedbydataset property These features are available in: * Solaris Express Community Edition, build 98 The related bug and PSARC case for version 13 change is: * 6730799 want snapused property * PSARC 2008/518 ZFS space accounting enhancements ======================================== ZFS Pool Version 12 This version includes support for the following feature: * Properties for Snapshots This feature is available in: * Solaris Express Community Edition, build 96 The related bug for the version 12 change is: * 6701797 want user properties on snapshots ======================================== ZFS Pool Version 11 This version includes support for the following feature: * Improved zpool scrub / resilver performance This feature is available in: * Solaris Express Community Edition, build 94 The related bug for the version 11 change is: * 6343667 scrub/resilver has to start over when a snapshot is taken * (Note, this bug is fixed when using build 94 even with older pool versions. However, upgrading the pool can improve scrub performance when there are many filesystems, snapshots, and clones.) ======================================== ZFS Pool Version 10 This version includes support for the following feature: * Devices can be added to a storage pool as "cache devices." These devices provide an additional layer of caching between main memory and disk. Using cache devices provides the greatest performance improvement for random read-workloads of mostly static content. This feature is available in the Solaris Express Community Edition, build 78. The Solaris 10 10/08 release includes ZFS pool version 10, but support for cache devices is not included in this Solaris release. The related bug for the version 10 change is: * 6536054 second tier ("external") ARC ======================================== ZFS Pool Version 9 This version includes support for the following features: * In addition to the existing ZFS quota and reservation features, this release includes dataset quotas and reservations that do not include descendent datasets, such as snapshots and clones, in the space consumption. ("zfs set refquota" and "zfs set refreservation".) * A reservation is automatically set when a non-sparse ZFS volume is created that matches the size of the volume. This release provides an immediate reservation feature so that you set a reservation on a non-sparse volume with enough space to take snapshots and modify the contents of the volume. * CIFS server support These features are available in Solaris Express Community Edition, build 77. The related bugs for version 9 changes are: * 6431277 want filesystem-only quotas * 6483677 need immediate reservation * 6617183 CIFS Service PSARC 2006/715 ======================================== ZFS Pool Version 8 This version now supports the ability to delegate zfs(1M) administrative tasks to ordinary users. This feature is available in: * Solaris Express Community Edition, build 69 * Solaris 10 10/08 release The related bug for the version 8 change is: * 6349470 investigate non-root restore/backup ======================================== ZFS Pool Version 7 This version includes support for the following feature: The ZFS Intent Log (ZIL) satisfies the need of some applications to know the data they changed is on stable storage on return from a system call. The Intent Log holds records of those system calls and they are replayed if the system power fails or panics if they have not been committed to the main pool. When the Intent Log is allocated from the main pool, it allocates blocks that chain through the pool. This version adds the capability to specify a separate Intent Log device or devices. This feature is available in: * Solaris Express Community Edition, build 68 * Solaris 10 10/08 release The related bug for the version 7 change is: * 6339640 Make ZIL use NVRAM when available. ======================================== ZFS Pool Version 6 This version includes support for the following feature: * 'bootfs' pool property This feature is available in: * Solaris Express Community Edition, build 62 * Solaris 10 10/08 release The related bugs for version 6 changes are as follows: * 4929890 ZFS Boot support for the x86 platform * 6479807 pools need properties ======================================== ZFS Pool Version 5 This version includes support for the following feature: * gzip compression for ZFS datasets This feature is available in: * Solaris Express Community Edition, build 62 * Solaris 10 10/08 release The related bug for the version 5 changes is: * 6536606 gzip compression for ZFS ======================================== ZFS Pool Version 4 This version includes support for the following feature: * zpool history This feature is available in: * Solaris Express Community Edition, build 62 * Solaris 10 8/07 release The related bugs for version 4 changes are as follows: * 6529406 zpool history needs to bump the on-disk version * 6343741 want to store a command history on disk ======================================== ZFS Pool Version 3 This version includes support for the following features: * Hot spares * Double-parity RAID-Z (raidz2) * Improved RAID-Z accounting These features are available in: * Solaris Express Community Edition, build 42 * Solaris 10 11/06 release, (build 3) The related bugs for version 3 changes are as follows: * 6405966 Hot Spare support in ZFS * 6417978 double parity RAID-Z a.k.a. RAID6 * 6288488 du reports misleading size on RAID-Z ======================================== ZFS Pool Version 2 This version includes support for "Ditto Blocks", or replicated metadata. Due to the tree-like structure of the ZFS on-disk format, an uncorrectable error in a leaf block may be relatively benign, while an uncorrectable error in pool metadata can result in an unopenable pool. This feature introduces automatic replication of metadata (up to 3 copies of each block) independent of any underlying pool-wide redundancy. For example, on a pool with a single mirror, the most critical metadata will appear three times on each side of the mirror, for a total of six copies. This ensures that while user data may be lost due to corruption, all data in the pool will be discoverable and the pool will still be usable. This will be expanded in the future to allow user data replication on a per-dataset basis. This feature was integrated on 4/10/06 with the following bug fix: 6410698 ZFS metadata needs to be more highly replicated (ditto blocks) This feature is available in: * Solaris Express Community Edition, build 38 * Solaris 10 10/06 release (build 09) ======================================== ZFS Pool Version 1 This is the initial ZFS on-disk format as integrated on 10/31/05. During the next six months of internal use, there were a few on-disk format changes that did not result in a version number change, but resulted in a flag day since earlier versions could not read the newer changes. The first official releases supporting this version are: * Solaris Express Community Edition, build 36 * Solaris 10 6/06 release Earlier releases may not support this version, despite being formatted with the same on-disk number. This is due to: 6389368 fat zap should use 16k blocks (with backwards compatability) 6390677 version number checking makes upgrades challenging ========================================