Jump to content

how to fix pending sectors for XFS disk and also for parity disk?


JustinChase

Recommended Posts

I have one disk that shows pending sector in the smart report, and the parity disk shows several.

 

I should mention I'm not very knowledgeable about reading/interpreting SMART reports, so I could be barking up the wrong tree here.

 

My SMART reports are attached.

 

I just want to make sure I fix any/all known issues on my disks.

 

Any suggestions on how to proceed?

smart-disk4.txt

smart-parity.txt

Link to comment

With a single disk the solution is here: http://lime-technology.com/wiki/index.php/Troubleshooting#Resolving_a_Pending_Sector

 

Since 2 disks have pending sectors the problem is harder. Do you have backups of the data on disk4? Can you copy the contents of disk4 to another location?

 

Yeah, I was lucky enough to have been able to copy everything off of disk4, it's now empty.

 

I'll review that link now.

 

thanks.

Link to comment

Given these numbers,

 

Data

5 Reallocated_Sector_Ct  0x0033  200  200  140    Pre-fail  Always      -      0

196 Reallocated_Event_Count 0x0032  200  200  000    Old_age  Always      -      0

197 Current_Pending_Sector  0x0032  200  200  000    Old_age  Always      -      1

198 Offline_Uncorrectable  0x0030  200  200  000    Old_age  Offline      -      1

 

Parity

  5 Reallocated_Sector_Ct  0x0033  100  100  010    Pre-fail  Always      -      40

187 Reported_Uncorrect      0x0032  093  093  000    Old_age  Always      -      7

197 Current_Pending_Sector  0x0012  100  100  000    Old_age  Always      -      24

198 Offline_Uncorrectable  0x0010  100  100  000    Old_age  Offline      -      24

 

I would replace the parity drive if possible.

The pending sector on disk 4, can possibly be recovered by ddrescue or reallocated by a preclear.

 

or, at the very least, do a pre-clear on the parity disks and rebuild it.

 

BOTH drives with pending sectors can prevent a successful rebuild.

This is why I've been lobbying for the drive icon to turn yellow when these values reach some configurable thresholds.

 

I speak from experience, pending sectors are deadly to a rebuild. You may or may not get past them.

Link to comment

I have a new 4TB drive that I just put in the array to replace another failing drive, but it's already been assigned.  I don't know of any way to remove that drive from the array, then use if for parity.

 

I could to a 'new config' without that drive, but that would cause parity to need to be rebuilt, which seems a less than ideal solution.

 

I don't want to go buy another 4TB drive to replace parity at this point.

 

I suppose I could just stop the array, do a preclear on the parity drive, then add it back and let it rebuild.

 

I do have a new 3TB drive ready to add to the array, which I bought to replace the failing disk4.  I would have purchased a 4TB, but Best Buy didn't have any in stock, and I didn't want to wait for delivery.

 

I'm certainly not thrilled with how things are going lately in my array :(

 

any suggestions on how to proceed?

Link to comment

I have a new 4TB drive that I just put in the array to replace another failing drive, but it's already been assigned.  I don't know of any way to remove that drive from the array, then use if for parity.

 

I could to a 'new config' without that drive, but that would cause parity to need to be rebuilt, which seems a less than ideal solution.

 

I don't want to go buy another 4TB drive to replace parity at this point.

 

What's your data and peace of mind worth?

197 Current_Pending_Sector  0x0012  100  100  000    Old_age  Always      -      24

 

The pending sectors need to be rectified. Either by reassignment or retiring the drive.

To force reassignment, you can rebuild parity from scratch. Not check it, rebuild it, then test again.

I would do a smart long test first.

 

However, preclear sort of does this. It reads the drives, writes 0's to the drive.

You can even do multiple passes.

Keep in mind, if the pending sectors drop to 0 and the reallocated sectors do not go up, that means some questionable sectors were put back in service. This means, it could happen again.

 

if it were my drive,

 

smart -t long (wait it out).

preclear (wait it out)

 

check smart again.

make a determination at that point to rebuild or retire.

Link to comment

Okay.  My thinking is that I'd prefer to use the new 4TB drive that I just put into the array, which is still empty, to replace the current parity drive.  it's new, and doesn't have any problems that I'm aware of.

 

Then, once that new drive is the parity, then I'll try to 'fix' the current parity, with a preclear or 3, and if it all looks good after that, I'll put it into the array as a data drive.

 

My problem is how do I actually do that?  I can't just 'remove' the new 4TB drive, because unRAID will see it missing, red-ball it, and want me to put it back.  If I do a new config, I suppose I could put the new 4TB in as the parity at that point, and let it rebuild onto the new 4TB drive, and while that's happening, do a preclear on the old parity drive in another machine.

 

Since disk4 is also empty, I guess I could just remove both of them, and do the new config without either of them, and preclear them both in the other machine, no?

 

Does that sound like a reasonable approach?  Are there any 'gotchas' in that plan I should be aware of?

Link to comment

The new config sounds good.

Since you would have to rebuild parity anyway, then do the new config with drives you are confident in.

 

There's a part of me thinking that you can unassign a drive and then reboot.

However I have not had good luck with that on unRAID 5, yet it's been a long time.

I think I ended up having to do a new config.

 

Just capture the drive layout before you do anything.

 

Gotchas... People tend to make a mistake and assign a data drive to the parity slot.

So if you do a new config. Assign all data drives and leave parity unassigned.

Check that all your data drives mount and have the data you expect in the places you expect it.

Then assign parity last.

Link to comment

I agree, I think the new config is the way to go...

 

I would probably hold off on the preclear until the new parity is built.  I found if you overload the IO, it causes issues.  If you have another PC you could boot up with unRaid, you could preclear on another machine, or wait until the parity is built, and then preclear the other drives if you only have the one machine...

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...