[EFAULT] Failed to get group quota for tankX/dataset: [cannot get used/quota for tankX/dataset: unsupported version or feature ]

mrleerkotte

Cadet
Joined
Dec 29, 2022
Messages
2
Hello everyone,

Recently I have migrated my system from CORE to SCALE, in doing so I backed up several datasets that were on a GELI encrypted pool (tank2) to a new ZFS native encrypted pool (tank1). These cloned datasets were stored unencrypted on the new pool (tank1). After upgrading to SCALE, upgrading my ZFS pool (tank1) and recreating tank2 I replicated the datasets back with encryption enabled. This all seems to work without a hitch and the data is accessible.

Now where I run in to the error is when I navigate to the replicated dataset in the WebUI I get the following error: [EFAULT] Failed to get user quota for tank2/iso: [cannot get used/quota for tank2/iso: unsupported version or feature ]

Code:
Error: concurrent.futures.process._RemoteTraceback: """ Traceback (most recent call last):  File "/usr/lib/python3.9/concurrent/futures/process.py", line 243, in _process_worker    r = call_item.fn(*call_item.args, **call_item.kwargs)  File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 115, in main_worker    res = MIDDLEWARE._run(*call_args)  File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 46, in _run    return self._call(name, serviceobj, methodobj, args, job=job)  File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 40, in _call    return methodobj(*params)  File "/usr/lib/python3/dist-packages/middlewared/worker.py", line 40, in _call    return methodobj(*params)  File "/usr/lib/python3/dist-packages/middlewared/plugins/zfs.py", line 702, in get_quota    raise CallError( middlewared.service_exception.CallError: [EFAULT] Failed to get user quota for tank2/iso: [cannot get used/quota for tank2/iso: unsupported version or feature ] """ The above exception was the direct cause of the following exception: Traceback (most recent call last):  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 181, in call_method    result = await self.middleware._call(message['method'], serviceobj, methodobj, params, app=self)  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1255, in _call    return await methodobj(*prepared_call.args)  File "/usr/lib/python3/dist-packages/middlewared/schema.py", line 1284, in nf    return await func(*args, **kwargs)  File "/usr/lib/python3/dist-packages/middlewared/plugins/pool.py", line 4010, in get_quota    quota_list = await self.middleware.call(  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1306, in call    return await self._call(  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1263, in _call    return await self._call_worker(name, *prepared_call.args)  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1269, in _call_worker    return await self.run_in_proc(main_worker, name, args, job)  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1184, in run_in_proc    return await self.run_in_executor(self.__procpool, method, *args, **kwargs)  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1169, in run_in_executor    return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs)) middlewared.service_exception.CallError: [EFAULT] Failed to get user quota for tank2/iso: [cannot get used/quota for tank2/iso: unsupported version or feature ]


I tried seeing if the pool was upgraded and it is:

Code:
root@freenas[~]# zpool upgrade tank2   
This system supports ZFS pool feature flags.

Pool 'tank2' already has all supported and requested features enabled.
root@freenas[~]# 


I checked if the userobj_accounting feature was active and it is:

Code:
root@freenas[~]#  zpool get all tank2 | grep userobj
tank2  feature@userobj_accounting     active                         local
root@freenas[~]# 


I double checked and it only happens on the datasets I replicated back to the new pool. Any new dataset I create on the same pool works as intended.

Has anybody run in to this before or has any clues as to what might be causing this?
 

rockybulwinkle

Dabbler
Joined
Aug 2, 2021
Messages
25
I ran into this same problem restoring a backup from a TrueNAS Core server to a Scale server. I upgraded my Scale server's pool. I see the same userobj flag enabled.

While restoring the backup, I too switched to ZFS native encryptrion (from previously no encryption). I did this by:

Replicating the dataset locally on the Core backup server to an encryption root, replicated that new encryption root to a USB drive, and transfered by sneakernet to my Scale server.

I have not yet found a solution to this issue.
 

mrleerkotte

Cadet
Joined
Dec 29, 2022
Messages
2
It seemed my datasets were unknowingly read-only which caused this behavior. This is not very evident in the new SCALE interface.

Switching it to read-write seems to solve the issue.

My apologies. I hope this will help other people having the same issue.
 

Myst1986

Cadet
Joined
Jan 11, 2023
Messages
1
Hello. Sorry for my english.
I have a problem whith copy some specific file in SMB. Error access denie. Example one file 1.iso copy successfully copy, but another "2.iso" copy failed whith access denied.
I resolv this problem delete atribute of file read only.
 
Top