Zfs: feature@userobj_accounting

Created on 11 Apr 2017  Â·  5Comments  Â·  Source: openzfs/zfs

Hi guys,

I have 2 zpools (2 x 2TB HDD each) that i share between my Mac OS X(openzfsonosx) system and Linux(zfsonlinux) and so far have worked perfectly fine but recently this feature got active feature@userobj_accounting and now i can only mount the volumes on OS X as readonly. Is there any way to fix this?

Note that i don't remember seeing any warning that this feature is linux exclusive neither i remember enabling it manually, so i have no idea why is active to begin with

zpool get all ImportantData
NAME PROPERTY VALUE SOURCE
ImportantData size 1.81T -
ImportantData capacity 96% -
ImportantData altroot - default
ImportantData health ONLINE -
ImportantData guid 2990178400385225961 -
ImportantData version - default
ImportantData bootfs - default
ImportantData delegation on default
ImportantData autoreplace off default
ImportantData cachefile - default
ImportantData failmode wait default
ImportantData listsnapshots off default
ImportantData autoexpand off default
ImportantData dedupditto 0 default
ImportantData dedupratio 1.00x -
ImportantData free 60.5G -
ImportantData allocated 1.75T -
ImportantData readonly off -
ImportantData ashift 12 local
ImportantData comment - default
ImportantData expandsize - -
ImportantData freeing 0 -
ImportantData fragmentation 60% -
ImportantData leaked 0 -
ImportantData feature@async_destroy enabled local
ImportantData feature@empty_bpobj enabled local
ImportantData feature@lz4_compress active local
ImportantData feature@spacemap_histogram active local
ImportantData feature@enabled_txg active local
ImportantData feature@hole_birth active local
ImportantData feature@extensible_dataset active local
ImportantData feature@embedded_data active local
ImportantData feature@bookmarks enabled local
ImportantData feature@filesystem_limits enabled local
ImportantData feature@large_blocks enabled local
ImportantData feature@large_dnode enabled local
ImportantData feature@sha512 enabled local
ImportantData feature@skein enabled local
ImportantData feature@edonr enabled local
ImportantData feature@userobj_accounting active local

ZFSonlinux is the regular Archlinux DKMS git installation from AUR and i have the same issue with zen and regular kernel.

My mac uses ZFSonOSX 1.6.1(latest) with Mac OS X Sierra 10.12.4

Ty very much for your time

All 5 comments

@jrch2k10 for existing pools new features __will not__ get automatically enabled. However I see from the output you've posted that the large_dnode feature is also enabled which is specific to Linux. Is there any chance that you ran zpool upgrade under Linux which would enable these new features? Also be aware that any new pools will always enable all supported features by default.

Unfortunately there's no really easy way to disable this feature. One way would be to send/recv the datasets to a new pool where it's disabled. Alternately,, in this case you could patch zhack so it can disable this specific feature with commit 83025286175d1ee1c29b842531070f3250a172ba. This isn't a strictly a safe thing to do with all features, but in the case of feature@userobj_accounting it will only cost you a small amount of space.

That kinda sucks, I guess I did run pool upgrade but I wasn't aware it automagically enable features, my bad I guess(maybe include a fat warning message for future features for clueless people?)

I guess ill move the volumes to another set of disks and only do zpool operations on OS X/illumos from now on

ty for your time

Sorry! I'm not sure what more could have been done. The zpool status message prompting users that new features are available by running zpool upgrade includes a pretty clear warning.

$ zpool status
  pool: tank
 state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
    still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
    the pool may no longer be accessible by software that does not support
    the features. See zpool-features(5) for details.
$ man zpool-features
...
DESCRIPTION
       ZFS  pool  on-disk  format  versions are specified via "features" which
       replace the old on-disk format numbers (the last supported on-disk for‐
       mat  number  is 28). To enable a feature on a pool use the upgrade sub‐
       command of the zpool(8) command, or set the feature@feature_name  prop‐
       erty to enabled.

       The  pool  format  does not affect file system version compatibility or
       the ability to send file systems between pools.

       Since most features can be enabled  independently  of  each  other  the
       on-disk  format  of  the  pool  is specified by the set of all features
       marked as active on the pool. If the pool was created by another  soft‐
       ware version this set may include unsupported features.

yeah, I know. I only blame myself for this

I guess since it never happened to me before my brain went "Meh this should be for downgrades to previous on disk format versions" instead of "Oh shit, oh shit check extension X it is supported on OS X and Illumos first before making a booboo".

My idea of a warning is maybe something like this

"ImportantData feature@userobj_accounting active local BEWARE ONLY SUPPORTED ON ZFS ON LINUX VERSION X+ AND ETC.ETC.", I guess this way if you are unfamiliar about the extensions compatibility list between OSes (or ZoL releases) it make it easier to stop, I guess

At least now I will be aware on other systems of checking all extensions listed before do any zpool operation

ZFS features are documented and working as intended, closing.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Lalufu picture Lalufu  Â·  70Comments

Tualua picture Tualua  Â·  54Comments

vbrik picture vbrik  Â·  108Comments

mabod picture mabod  Â·  53Comments

ltz3317 picture ltz3317  Â·  82Comments