RESOLVED - Revert Array to previous configuration and rebuild parity


14 posts in this topic Last Reply

Recommended Posts

Edit:

My issue has been resolved.  Read below to understand the problem.  I have never used the new config option before.  This is a simple thing to do but my data was not protected (read below) and once I made the choice to do this the array is unprotected until parity can be rebuilt. Here's exactly what I did, in case anyone else has a similar situation.

 

When using the "new config" you are assuming that the data on all of your disks is intact and you have no disk errors.  You will not have parity protection after selecting this.  Your array needs to be off-line to do this.  

 

(1)  The server was off.  Power up server.  If you dont have a list or screenshot of your current array configuration/disk assignments GET ONE NOW.  I had 3 disks in my case which were not part of the array.  

(2) Note configuration of array, in this case, disk 7 is red-balled.  Old disk 7 present.

(3) Go to the  Tools menu, locate "new config" and click

(4) Preserved or dont preserve as appropriate for your need

(5) Return to the main menu.  Your array will have no disks associated with it.

(6)  Assign your parity drive - safety first.  This drive will be completely over-written.  Dont make a mistake here.

(7)  One by one, assign each drive to a position in your new array.  As long as you have each data drive assigned when you are finished, it makes no difference which data drive goes where.  You can add or remove drives from your new config as you please - that's the point of this.

(8)  When you have all of your devices assigned, double check everything.  Make sure you have all the devices you wanted from your screenshot in the new array.

(9)  Spin up your array.  A parity build will begin immediately.  I allowed this to complete before doing anything.  

 

I posted my current diagnostics below if anyone is interested.

 

Thank you JorgeB for helping me out and for your patience.

 

 

=====

the plan:

OK I think i know what to do, but am concerned about exactly how to do this.  Please look this over and let me know if the following steps will not overwrite any of my data disks.

 

I have 11 disks plus a single parity disk.  one of those disks was a 4 tb drive (disk 7), and my last parity check was fine.  I shut down my array, and changed the disk in the slot containing the 4 tb disk to a "new" 8 tb disk (new disk 7).  I then rebooted and unraid began to rebuild to the new disk.  This disk (new disk 7) was red-balled due to crc errors.  

 

The Plan:  i would like to return the 4 tb disk to slot 7 and make unraid build parity anew.  I have a new parity drive precleared and ready to use so i will make that disk parity at the same time, since parity is no longer valid unless i replace the 8 tb disk with a new 8 tb disk.

 

Task list:

-1   power on the server (currently off)

-2  change disk 7 from the 8 tb back to the existing 4 tb disk.

-3 change my parity disk assignment to my new 10 tb parity disk

-4  go to the tools menu and select "new config"

-5  start the array and i think i have to click a button on the main page saying something like "trust my array"

-6 wait for the new parity to build using the existing data

 

Is this all correct?  my data drives, after replacing the new disk 7 with the old disk 7, are all intact and i just want to rebuild my parity drive.

 

thanks for the help.

 

==========

Original post below:

==========

 

Hi all, I believe I know what to do next, but i would like some critical feedback.  

 

I am in the process of upgrading my 13 disc array from 8 tb parity to 10 tb parity.  I also have a 4 tb drive I want to replace with an 8 tb drive.  i have a hot 8 tb and 6tb drive outside of my array awaiting service.  Both were previously in the array.  I purchased my 10 tb drive to be used as parity, shut down my array after a parity check, rebooted and precleared the 10 tb drive.  Then i waited for my monthly parity check to complete as a conservative measure.  There were no issues with my array, all was running smoothly.  

 

I decided to swap the 4 tb drive for the 8 as a first step, planning to then swap parity.  I turned off the array, went to the slot containing the 4 tb drive, and changed that position to the 8 tb drive.  I then started the array again, and allowed it to begin to rebuild the "new" 8 tb drive.

 

within a minute or two, i noticed that the drive was throwing CRC errors.  there were 60 some, then 150, 220, 290, 350, etc.  I paused the rebuild, checked the cables, and un-paused.  more CRC errors.  after about 600 CRC errors the array disabled the drive.  Slightly panicked, i shut down the array to think.

 

I believe my best course of action at the moment is to put the 4 tb drive back into my array, parking the 8.  At the same time, i can swap my parity drive and just allow the array to rebuild parity, since I am confident the data is good.  

 

After this has completed, i can preclear the drive throwing CRC errors and see if i can determine if it's good.  I can also swap my existing parity drive into the position i want it, replacing my 4 tb drive.  I'd do this after the new 10 tb parity has been built.  

 

i ordered a fresh 8 tb drive this morning too, so I am ready with that as well.

 

Any thoughts on this situation?  Comments on my strategy?  

 

thank you,

 

kf

 

P.S.  the array is about 10 yr old, i can post specs later tonight.  No known issues.  

 

edit: found a recent post about my array if interested:  

 

 

Edited by kimifelipe
edit title to obtain the correct feedback.
Link to post
9 hours ago, kimifelipe said:

Any thoughts on this situation?

UDMA CRC errors are almost always the result of a bad SATA cable or port.  Very rarely do they indicate a problem with the drive.

 

I have a drive on which over 1100 CRC errors occurred fairly quickly and resulted in the drive being disabled by unRAID.  I switched to a different cable/port on my HBA and rebuilt the drive onto itself.  The drive was actually fine. 

 

CRC errors do not reset.  They are stored with the drive, but, as long as they do no increase, you are good.  The drive still shows the 1100 CRC errots.

 

Try a different cable and or SATA port and try again to replace the drive.

Link to post

Thank you for the comments, guys.  I plan to investigate the drive itself later.  Right now, my problem is that i have a red-balled disk in my array.

 

I am thinking i will put the 4 tb drive back in place, with the new 10 tb parity drive, use the "trust my array" button, and build my new parity drive.  Then i will replace the 4 with my new 8 that's on its way using the normal process.

 

Any thoughts on this strategy?  What would you do?

 

P.S.  I do not have diagnostics from the array when this occurred - I wasnt thinking.  The array was up long enough only to start the parity rebuild.  Here are the diagnostics from the shutdown immediately previous to this event.  This was just before shutting down in order to add the new 10 tb drive.  After adding that drive, i restarted my array and precleared that drive.  A few days after that, my monthly parity check completed normally.  After that, i did the disk swap mentioned above.

repository-syslog-20210205-2207.zip

Edited by kimifelipe
Link to post
29 minutes ago, kimifelipe said:

Here are the diagnostics from the shutdown immediately previous to this event.

That's just the syslog, but if all disks look fine this seems like a good way to go:

30 minutes ago, kimifelipe said:

I am thinking i will put the 4 tb drive back in place, with the new 10 tb parity drive, use the "trust my array" button, and build my new parity drive.

You still need to do a new config, then sync the new parity.

Link to post

OK I think i know what to do, but am concerned about exactly how to do this.  Please look this over and let me know if the following steps will not overwrite any of my data disks.

 

I have 11 disks plus a single parity disk.  one of those disks was a 4 tb drive (disk 7), and my last parity check was fine.  I shut down my array, and changed the disk in the slot containing the 4 tb disk to a "new" 8 tb disk (new disk 7).  I then rebooted and unraid began to rebuild to the new disk.  This disk (new disk 7) was red-balled due to crc errors.  

 

The Plan:  i would like to return the 4 tb disk to slot 7 and make unraid build parity anew.  I have a new parity drive precleared and ready to use so i will make that disk parity at the same time, since parity is no longer valid unless i replace the 8 tb disk with a new 8 tb disk.

 

Task list:

-1   power on the server (currently off)

-2  change disk 7 from the 8 tb back to the existing 4 tb disk.

-3 change my parity disk assignment to my new 10 tb parity disk

-4  go to the tools menu and select "new config"

-5  start the array and i think i have to click a button on the main page saying something like "trust my array"

-6 wait for the new parity to build using the existing data

 

Is this all correct?  my data drives, after replacing the new disk 7 with the old disk 7, are all intact and i just want to rebuild my parity drive.

 

thanks for the help.

Link to post
  • PeteAron changed the title to Revert Array to previous configuration and rebuild parity - pls review my plan

Has anyone done something like this?  My array is down almost four days now, I am not sure of what is exactly the right way to do this, I am desperate for advice, please, can anyone comment on my procedure?

Link to post
9 hours ago, kimifelipe said:

5  start the array and i think i have to click a button on the main page saying something like "trust my array"

There's no such button, you just do a new config, keep all assignments, changes the ones you want and start the array to begin the parity sync.

Link to post

Hi @kimifelipe

Hi all

 

Maybe I did not understand very well but, it does not seem safe to me to change the parity disk if you are already having problems with one data drive. Especially with only one parity disk and not knowing for sure that the issue is caused by the new data drive and not by something else like a cable, backplane, HBA adapter, or motherboard issue.

 

What if you put back you old drive and it becomes corrupt because of a faulty hardware ? I guess you would be happy to not have removed your parity drive in such event.

 

So unless I misunderstand the situation, I would recommend to:

 

1. check your cables and put the old data drive back in the array

2. check parity and make sure you have a valid parity

3. backup all your data (if not done already)

4. test the new data drive, outside of the array, with something like the preclear plugin and an advanced SMART test

5. if the tests are successful, then retry replacing the old data drive and rebuild the data from the parity

6. use your server and stress the new data drive for a couple of weeks to check that no new error occur on that data drive / slot (may seem unnecessary to many but I would personally do that if I only had only 1 parity drive)

7. when you are confident that the server is stable, upgrade the parity disk

 

Best,

OP

 

Edited by Opawesome
Link to post

Thanks for the comments, Opa, you make a good point.  I will recheck parity before swapping.

 

My concern remains swapping back the original disk 7.  It has been replaced in the array by a new, larger disk.  My concern is that while i have used easily 30 disks in my array during its lifetime, i have never done this before - swapping back a smaller drive.

 

I want to be certain I am using the right procedure.  As Jorge points out, there is no such button.  And since my array is powered off, i can't hunt for the right language.

 

So to be clear, Jorge, i power up the array, change the disk 7 assignment, then go to tools and select "new config", then return to the main page and start the array?

 

The thing is, even though i know my data is good, Unraid is going to think parity is invalid, since a disk has been replaced with a smaller disk.  Of course i will do a parity check with "write corrections to parity" but what exactly is Unraid's expected behavior after i use new config?

 

So unfortunately even though i am an experienced user i am in need of a step by step process.  I appreciate your help and your patience.

Link to post
Just now, kimifelipe said:

So to be clear, Jorge, i power up the array, change the disk 7 assignment, then go to tools and select "new config", then return to the main page and start the array?

No, first new config, then change the disks you want.

Link to post
  • PeteAron changed the title to RESOLVED - Revert Array to previous configuration and rebuild parity

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.