-Daedalus Posted March 9, 2022 Share Posted March 9, 2022 I have a mix of 4, 8, and 10TB data drives. I have two 18TB parity drives. Every month, 8TB of parity is needlessly checked. Is it possible to have parity finish at the 10TB mark? Quote Link to comment
itimpi Posted March 9, 2022 Share Posted March 9, 2022 This is done because it is also important that all of the parity drive beyond the size of the largest drive is all zeroes so that when you later add a larger data parity is correctly managed without having to write anything new to the parity drive. I guess in theory it could be handled differently when adding larger drives by clearing the additional parity space before adding the larger drive but that would add complication to that process. I think there is probably an assumption made that if you are using parity drives larger than the biggest drive you will soon be adding data drives of a similar size so zeroing that additional space up front keeps it simple. Quote Link to comment
-Daedalus Posted March 9, 2022 Author Share Posted March 9, 2022 And I totally understand that, but I'd be curious to see how many people are in my situation. Most people (I'd guess) expand their storage relatively infrequently, and given SATA ports are finite, I go for the biggest, reasonably priced €/TB drive to expand, and usually more than one at once. This usually means I'm replacing parity first, and putting the previous parity drives in the array. In this case, even replacing two smaller drives, I came away with 12TB more storage, and the ability to add 18TB disks in future, instead of 10TB ones. This isn't huge on the priority list, obviously. I just thought I'd flag it, given that something like 40% of the check (3 days, with parity tuning) is wasted every month. Quote Link to comment
bonienl Posted March 9, 2022 Share Posted March 9, 2022 When you add a larger data disk at some stage, the integrity of the parity disk must be valid for the added data size. Checking the parity disk in its total ensures this is the case. Quote Link to comment
-Daedalus Posted March 9, 2022 Author Share Posted March 9, 2022 Agreed. An implication of my feature request would be that the remainder of the parity would have to be checked at some point before the new disk is added. But I think on balance a bunch of parity reads one time - when a bigger data drive is added - is better than a bunch of parity reads at every parity check when you're not running big disks. As I say, just food for thought. Quote Link to comment
itimpi Posted March 9, 2022 Share Posted March 9, 2022 This would invalidate one of the benefits of using preclear when adding new disks in that you only have to stop the array for a minute or so as when you add a precleared disk as Unraid can assume that there is no update required to the parity disks. If Unraid could not assume that the parity beyond the largest drive was guaranteed to be all zeroes assumption would break if the disk was larger than any of the current array disks as then Unraid would have to write new parity information. Quote Link to comment
bonienl Posted March 9, 2022 Share Posted March 9, 2022 It would also give an issue when you replace an existing disk with a larger disk and a data rebuild is done. The rebuild relies on valid parity from start to finish. Quote Link to comment
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.