joker_927 Posted April 12, 2024 Posted April 12, 2024 (edited) I recently purchased a new drive that was much larger than my array drives, to use as a parity drive. I pre-cleared the drive and it has the pre-clear signature. I then removed my old parity drive and added the new large parity drive. I expected Unraid to build the parity up to the size of my largest array drive and then be done. After all, the entire drive was filled with zeros. Instead Unraid built the required parity portion of the drive and now is writing zeros to the rest of the drive. This is adding ~10 hours to the operation and it's redundant work. Was there anything I could have done to avoid this? Am I wrong, and there is a valid reason for Unraid to continue to re-zero the rest of the drive? Will monthly parity-checks take a lot longer because the parity drive is much larger than the array drives? v6.12.8 Edited April 12, 2024 by joker_927 Quote
jcofer555 Posted April 13, 2024 Posted April 13, 2024 that's how the parity building process works. i'm not sure there is any way to avoid it. for why it has to be like that i don't know i just know that's how it is yes parity checks will take longer the bigger the parity drives are. it doesn't matter how much bigger they are than your data drives it's just based on the drive size of your parity drives. the size of the data drives do play a small part of how fast the parity building/checks go as the data drives are involved in the process but if say your parity is 10tb drive and your data drives are 4tb, 6tb, and 8tb, then all 3 drives will be involved until parity has checked up to 4tb then only 2 of the drives involved until the 6tb mark and then only the 1 drive until the 8tb mark and then only parity itself until it's done at 10tb Quote
Gragorg Posted April 13, 2024 Posted April 13, 2024 Currently my parity is by far my largest drive and I agree it should skip the portion after the largest data drive. However there is no way to skip. Would be a good new feature thou. Quote
JonathanM Posted April 13, 2024 Posted April 13, 2024 16 hours ago, Gragorg said: I agree it should skip the portion after the largest data drive. If that were implemented, it would require a change in the drive addition and replacement code, because it would no longer be a given that the full capacity of the parity drive is indeed zeroes. I don't see that kind of code rewrite happening, mainly because what is there now works, and mucking around with such important code that is currently working would require a VERY strong reason, given the amount of work needed to test for edge cases and general bugs that could be introduced. 1 Quote
JonathanM Posted April 13, 2024 Posted April 13, 2024 I just thought of a another VERY good reason I want the parity drive to be read all the way to the end. Hidden errors. Unless you run a complete SMART test, that portion of the parity drive beyond the last data drive is NEVER read or written during normal use. The last thing I want is for there to be a bad sector lurking in the last bit of the parity drive, just waiting for me to add a data drive and start exercising it. At least with a parity check that portion of the drive is read regularly. Count me as 1 vote to keep the current behaviour, for the above reason alone. Quote
Vr2Io Posted April 13, 2024 Posted April 13, 2024 21 hours ago, joker_927 said: Am I wrong, and there is a valid reason for Unraid to continue to re-zero the rest of the drive? Unraid can't confirm does the drive already zeroed even it have signatures. So designer will keep zeroing to the end ..... But you can decide to stop or not. Quote
Recommended Posts
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.