Clicking expand pool causes raid downgrade

Fern

Cadet
Joined
Feb 25, 2024
Messages
4
I wasn't going to expand the zfs array. I'm just experimenting and clicking around.

SystemInfo
Truenas: TrueNAS-SCALE-24.04-BETA.1
CPU: i3-8100
RAM: 32G

ZFS ARRAY
4*6T RAID-Z2 with SLOG SSD

ISSUES
When I clicked the expand next to the pool (I didn't know what expand meant)
[EFAULT] Command partprobe /dev/sdf failed (code 1): Error: Partition(s) 1 on /dev/sdf have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes.

This happened and I saw my RAID-Z2 has become RAID-Z1 with one un-assigned disk pops up. But ZFS Health didn't tell me anything wrong. After I rebooted the system the ZFS Health started to tell me my array had been downgraded. After that, I clicked that again and the same problem popped up. But this time my LOG drive became un-assigned.

After all that my data on that pool wasn't lost. But can I repair it back to RAID-Z2?
 

Fern

Cadet
Joined
Feb 25, 2024
Messages
4
Damn, I just realize that I wasn't doing raid-z2 at the start!!!!

I just raidz1 from start to end! But the drive offline issues persist!
 

Fern

Cadet
Joined
Feb 25, 2024
Messages
4
I recreate the pool and click that button again and I have more depth info about this
Error: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/middlewared/job.py", line 462, in run await self.future File "/usr/lib/python3/dist-packages/middlewared/job.py", line 500, in __run_body rv = await self.method(*([self] + args)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 187, in nf return await func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 47, in nf res = await f(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/plugins/pool_/expand.py", line 60, in expand await self._resize_disk(part_data) File "/usr/lib/python3/dist-packages/middlewared/plugins/pool_/expand.py", line 83, in _resize_disk await run('partprobe', os.path.join('/dev', part_data['disk'])) File "/usr/lib/python3/dist-packages/middlewared/utils/__init__.py", line 80, in run cp.check_returncode() File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode raise CalledProcessError(self.returncode, self.args, self.stdout, subprocess.CalledProcessError: Command '('partprobe', '/dev/sda')' returned non-zero exit status 1. During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/middlewared/job.py", line 466, in run raise handled middlewared.service_exception.CallError: [EFAULT] Command partprobe /dev/sda failed (code 1): Error: Partition(s) 1 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes.
 

Fern

Cadet
Joined
Feb 25, 2024
Messages
4
Sorry for the format
Code:
 Error: Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 462, in run
    await self.future
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 500, in __run_body
    rv = await self.method(*([self] + args))
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 187, in nf
    return await func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 47, in nf
    res = await f(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/plugins/pool_/expand.py", line 60, in expand
    await self._resize_disk(part_data)
  File "/usr/lib/python3/dist-packages/middlewared/plugins/pool_/expand.py", line 83, in _resize_disk
    await run('partprobe', os.path.join('/dev', part_data['disk']))
  File "/usr/lib/python3/dist-packages/middlewared/utils/__init__.py", line 80, in run
    cp.check_returncode()
  File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode
    raise CalledProcessError(self.returncode, self.args, self.stdout,
subprocess.CalledProcessError: Command '('partprobe', '/dev/sda')' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 466, in run
    raise handled
middlewared.service_exception.CallError: [EFAULT] Command partprobe /dev/sda failed (code 1):
Error: Partition(s) 1 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes.
 

Davvo

MVP
Joined
Jul 12, 2022
Messages
3,222
Top