SSD drive raw drive capacity changed after pool(SLOG) creation

lil0r

Cadet
Joined
Nov 17, 2022
Messages
6
[Mod: Post edited for correct terminology - there is no such thing as a ZIL SSD -JG]

Dear community,

I have a very strange experience and need your help:

After the creation of a Truenas storage pool, the capacity of my SLOG SSD is fixed to 50Gb.
I have had this with two SSDs one 240 GB (INTEL SSDSC2CW240A3) and one 1TB (Transcend SSD230S).

to recreate, I create a new pool with 3 HDD Data, 1 SSD L2ARC, 1 SSD SLOG.
The SLOG SSD comes back after a reboot as a 50GB device, it is recognized in the BIOS as a 50GB devices, in different computers on SATA port as well as USB-to-SATA adapters.

I have tried TrueNAS disk wipe, Intel firmware diagnostic, but I am a bit speechless to what command could change the capacity of drive like that?

What command is executed in the attachment of a SLOG device?
Any pointers welcome!

I originally was hit by the SandForce sleep bug - I have now 4 dead SSDs, 2 that are reduced to 50GB, I am now obviously hesitant to experiment too much...


MB: ASRockRack X570D4U
1668701048333.png


ec75a134-9085-47aa-87b8-e6a17de40296.jpeg
 
Last edited by a moderator:

jgreco

Resident Grinch
Joined
May 29, 2011
Messages
18,680
I have had this with two SSDs one 240 GB (INTEL SSDSC2CW240A3) and one 1TB (Transcend SSD230S).

I don't believe that either of these SSD's are acceptable as SLOG devices; I seem to recall the Intel 520's are SandForce based, and the Transcend is a consumer SSD for bulk storage. You need an SSD with power loss protection for SLOG, or you might as well not have the SLOG at all. It's like driving around without your seatbelt on an errant belief that your airbags will save you in a crash.
 

lil0r

Cadet
Joined
Nov 17, 2022
Messages
6
I don't believe that either of these SSD's are acceptable as SLOG devices; I seem to recall the Intel 520's are SandForce based, and the Transcend is a consumer SSD for bulk storage. You need an SSD with power loss protection for SLOG, or you might as well not have the SLOG at all. It's like driving around without your seatbelt on an errant belief that your airbags will save you in a crash.
Yes agree, this is a pre-prod test system and I have a DC-S3710-SSD laying around. However, I am reluctant to put these in...
 

ChrisRJ

Wizard
Joined
Oct 23, 2020
Messages
1,919
Are we talking about TEST or Pre-PROD? These are (at least in my world) two very different types of systems.

What do you want to achieve with the system?
 

HoneyBadger

actually does care
Administrator
Moderator
iXsystems
Joined
Feb 6, 2014
Messages
5,112
What version of TrueNAS are you running?

It's possible that the middleware is including a call to set the host protected area on the SSD, which causes it to limit its reported size.

Good news is it's fully reversable. Have you tried removing the SLOG device via the detach operation in the GUI?

If this doesn't do it, then:

1. Remove the LOG device from the pool
2. Perform a full power cycle of your system (shutdown and power on) or if the device has hotswap capabilities, hotplug it
3. From a shell, issue the disk_resize /dev/daX command as described in the docs under "SLOG Overprovisioning"

 
Last edited:

MrGuvernment

Patron
Joined
Jun 15, 2017
Messages
268
Yes agree, this is a pre-prod test system and I have a DC-S3710-SSD laying around. However, I am reluctant to put these in...
Curious why the hesitation?
 

Davvo

MVP
Joined
Jul 12, 2022
Messages
3,222

lil0r

Cadet
Joined
Nov 17, 2022
Messages
6
What version of TrueNAS are you running?

It's possible that the middleware is including a call to set the host protected area on the SSD, which causes it to limit its reported size.

Good news is it's fully reversable. Have you tried removing the SLOG device via the detach operation in the GUI?

If this doesn't do it, then:

1. Remove the LOG device from the pool
2. Perform a full power cycle of your system (shutdown and power on) or if the device has hotswap capabilities, hotplug it
3. From a shell, issue the disk_resize /dev/daX command as described in the docs under "SLOG Overprovisioning"

Thanks man, you are a lifesaver, I could recover all disks.
I did remove the disks via the GUI. My presumption is that due to that the resizing is only possible once per power cycle and I was testing, the resize could not be executed after removal. That left me with the 50GB drive.


1668713242442.png
1668713216775.png
 

lil0r

Cadet
Joined
Nov 17, 2022
Messages
6
You mean the 2010 one? I had to google this.
yep, that bug existed for quite some time. Intel never patched it and I ended up with a bunch of 530s. I ended up using them for a while for various things. In my new x570d4 the ended up dying one by one, since there was apparently a powersaving function turned on.
There is actually a process to recover and reflash the drive https://computerlounge.it/how-to-unbrick-sandforce-ssd/. It is a hilarious process and I decided not worth the effort.
 

HoneyBadger

actually does care
Administrator
Moderator
iXsystems
Joined
Feb 6, 2014
Messages
5,112
My presumption is that due to that the resizing is only possible once per power cycle and I was testing, the resize could not be executed after removal. That left me with the 50GB drive.

I would guess that's correct; although that might be a case where an alert dialog would be helpful information, and maybe a workflow that will perform that "auto-size" on an unassigned disk.

The "once per power cycle" thing though is mostly unavoidable though.
 

lil0r

Cadet
Joined
Nov 17, 2022
Messages
6
Just to add to the confusion: if you add SLOG to an existing pool, there is no disk_resize being done.
Just confirmed and manually underprovisioned the DC SSDs.
 

HoneyBadger

actually does care
Administrator
Moderator
iXsystems
Joined
Feb 6, 2014
Messages
5,112
Just to add to the confusion: if you add SLOG to an existing pool, there is no disk_resize being done.
Just confirmed and manually underprovisioned the DC SSDs.
Interesting. I can't imagine that being the intended workflow, as there's no technical reason why underprovisioning would fail in that scenario (unless it was the "once per power cycle" problem coming up silently) - if you're able to submit a bug/Jira ticket for that, it can be investigated further.
 
Top