On Thu, Dec 6, 2018 at 11:17 AM Matthew Ahrens <[email protected]> wrote:
> Add new options to "zpool create", "zpool upgrade", and "zpool set":
>  - zpool create -o features=portable-20XX (yearly values)
>  - zpool create -o features=portable
>  - zpool upgrade -o features=portable-20XX
>  - zpool upgrade -o features=portable
>  - zpool set feature@portable=20XX
>  - zpool set feature@portable=enabled
>
> "-o features=portable-2016" means features that were supported by all tier-1 
> platforms at the beginning of 2016.  This definition will not change over 
> time.  Specifically, on January 1, 2016, the following all supported the 
> features:
>  - a numbered release of FreeBSD (specifically FreeBSD 10.2 for portable-2016)
>  - a numbered release of ZFSonLinux (specifically ZoL 0.6.5.3 for 
> portable-2016)
>  - the code in illumos-gate as of 1 year prior (specifically Jan 1 2015 for 
> portable-2016).
>
> Similar yearly portable values will be created at the beginning of each year.

This seems like a good balance between evolving over time, and being
simple enough for users to reason about in practice.  It's one train
that just rolls forward with the passage of time, which I think is
always a pretty easy concept to understand relatively quickly --
without needing to fold in the complexity of the changing landscape of
all of the different operating systems and release versions that come
and go around us.

> For now, I would be most comfortable with the default behavior of "zpool 
> create" remaining the same.  If we find something that we think works well 
> then I'd consider making "zpool create" imply "-o features=portable" by 
> default, and "zpool upgrade <pool>|-a" imply "-o features=portable" by 
> default.

Leaving the default posture as-is (even if only for now) seems fine to me too.

On Fri, 7 Dec 2018 at 10:49, Jason King via openzfs-developer
<[email protected]> wrote:
> Are there any concerns this might become a bit unwieldy over time?  I’m 
> undecided on this myself, but thought it’d be worth raising the question.
>
> Just as a data point, had this existed when ZFS was first publicly released 
> (Nov 2005 is the date I can find), that would mean 13 ‘portable-XXX’ values, 
> plus ‘portable’ (though a number of values might be equivalent) today.

I don't think that's too big a deal -- once they're defined, they
presumably won't keep changing.  It'll be like the ever-increasing
list of DTrace versions, etc.


Cheers.

-- 
Joshua M. Clulow
Engineer @ Joyent
http://blog.sysmgr.org

------------------------------------------
openzfs: openzfs-developer
Permalink: 
https://openzfs.topicbox.com/groups/developer/T562a2f6ecf883736-Me43381e9200bc9b62b95619b
Delivery options: https://openzfs.topicbox.com/groups/developer/subscription

Reply via email to