Jump to content

Initial Setup, Parity Check, and Preclear


HighNoon

Recommended Posts

Just finished building my first ever unRAID server (104TB raw, 88TB usable) and the parity check took about 24 hours but is now complete. I've been reading some initial setup guides and seems like running preclear on all drives is a good idea but I'm not sure how to do that at this point. How do I unassign all drives from my array so that I can run preclear on them? I assume the parity check will have to be re-run if I run preclear on all of my drives?

 

Thanks in advance.

Link to comment
39 minutes ago, HighNoon said:

How do I unassign all drives from my array so that I can run preclear on them?

Tools -> New config

 

39 minutes ago, HighNoon said:

I assume the parity check will have to be re-run if I run preclear on all of my drives?

If you preclear all drives, including parity drives, you can check the "parity is already valid" box before starting the array to avoid a new parity sync.

Link to comment
6 hours ago, johnnie.black said:

Tools -> New config

 

If you preclear all drives, including parity drives, you can check the "parity is already valid" box before starting the array to avoid a new parity sync.

Note that the OP seems to have two dual-parity (8+8 TB).

Link to comment

Just checking... but if you've already run a parity check, that indicates to me that you've got data on your server. If you start pre-clearing drives, you'll be deleting data from each drive that you pre-clear.

 

Hoping I'm misreading your intentions, but I wanted to throw that out there, just in case.

Link to comment

Thanks for all the replies so far. I did decide to run 1 preclear cycle on all 13 HDDs simultaneously. Depending on how long that takes I may do more but I doubt it.

 

Good news about not having to do the parity check after preclear. Thanks for the tip.

 

FreeMan I do not have any data on my server yet. Parity check ran automatically after starting the array so even if I wanted to add data first I could not have. Thanks for the warning though.

Link to comment
  • 2 weeks later...
On ‎1‎/‎1‎/‎2018 at 3:00 AM, johnnie.black said:

Tools -> New config

 

If you preclear all drives, including parity drives, you can check the "parity is already valid" box before starting the array to avoid a new parity sync.

 

Johnnie,

 

Just saw this.    I don't think this is accurate.   A parity sync has already been done with the current content of the drives.  If you then pre-clear all of the drives, they will now have all zeroes (likely different than what they initially contained) ... so the parity will NOT be valid for this changed content.     Pre-clearing the drives lets them be quickly added to an existing array without impacting parity;  but pre-clearing a drive that's already in the array will change the content of the drive -- invalidating parity.    [As an aside, I'm not sure that pre-clear will LET you do a pre-clear on an array drive, so this may all be moot.]

 

Link to comment
3 minutes ago, garycase said:

 

Johnnie,

 

Just saw this.    I don't think this is accurate.   A parity sync has already been done with the current content of the drives.  If you then pre-clear all of the drives, they will now have all zeroes (likely different than what they initially contained) ... so the parity will NOT be valid for this changed content.     Pre-clearing the drives lets them be quickly added to an existing array without impacting parity;  but pre-clearing a drive that's already in the array will change the content of the drive -- invalidating parity.    [As an aside, I'm not sure that pre-clear will LET you do a pre-clear on an array drive, so this may all be moot.]

 

 

If you preclear all the drives, including the parity drive(s), parity will be valid since it's all zeros on all disks, including parity(s) that will be all zeros also.

Link to comment

Well, first of all, that won't be true for the parity #2 (since it's a different parity computation than the simple even parity for parity #1).

 

Second, the drives aren't ALL zeroes after a pre-clear => they have a special "pre-clear signature" that is cleared by UnRAID when you add a pre-cleared drive to an array.   I suppose that IF you had an even number of drives (including parity) that would still work for parity #1, since even those bits that are a "1" would still add up correctly; but if you had an odd # of drives parity #1 would also be incorrect.

 

Link to comment
24 minutes ago, garycase said:

Well, first of all, that won't be true for the parity #2 (since it's a different parity computation than the simple even parity for parity #1).

It's a different computation but it's still zero if data disks are zero.

 

25 minutes ago, garycase said:

Second, the drives aren't ALL zeroes after a pre-clear => they have a special "pre-clear signature" that is cleared by UnRAID when you add a pre-cleared drive to an array. 

The preclear signature is in the MBR, before the partition starts, it's also removed once the disk is added to an array, but even if it wasn't parity only checks the partition, MBR is ignored.

Link to comment
2 hours ago, johnnie.black said:

It's a different computation but it's still zero if data disks are zero.

 

The preclear signature is in the MBR, before the partition starts, it's also removed once the disk is added to an array, but even if it wasn't parity only checks the partition, MBR is ignored.

The pre-clear signature being in the MBR explains why the original even parity ("Parity 1") works with all pre-cleared disks; but I don't see how Parity 2 can be valid with this approach.

 

In any event, simply re-running the parity sync is certainly the safest approach anytime you modify disks in the array.

Link to comment
1 hour ago, garycase said:

but I don't see how Parity 2 can be valid with this approach.

 

3 hours ago, johnnie.black said:

It's a different computation but it's still zero if data disks are zero.

 

In fact you could even swap the parity disks around, and this is the only time you could that, and both would remain valid, since both are all zeros.

Link to comment
6 hours ago, garycase said:

The pre-clear signature being in the MBR explains why the original even parity ("Parity 1") works with all pre-cleared disks; but I don't see how Parity 2 can be valid with this approach.

 

In any event, simply re-running the parity sync is certainly the safest approach anytime you modify disks in the array.

I also had to go back to the old university math and refresh myself, since it was a very long time since last I looked at the Q-parity.

 

But see Kai Petzke's answer in the below link (currently the last answer). It shows how the q-parity function is unity for zero.

https://cs.stackexchange.com/questions/2554/is-the-2nd-parity-bit-in-raid-6-a-simple-calculation

Link to comment

Archived

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

×
×
  • Create New...