February 5, 201511 yr One of my 1.5Tb drives was giving me some concern so I have replaced it with a 3Tb drive which I have just preceleared. However the slot is showing a red ball and wrong drive. I have put the old drive back in selected "no device", shut down, swapped the drives, restarted and selected the new drive in its place. I am now showing a red ball next to the new drive and it states "Wrong" Should I just tick "Yes I want to do this" and select "Start will bring the array on-line, start Data-Rebuild, and then expand the file system."?
February 5, 201511 yr Author Thanks for that, it seems to have started rebuilding. One question, why would it be writing to the parity disk?
February 5, 201511 yr There will be a few writes to keep parity in sync as there is housekeeping done on the other drives, plus the array is up and usable while the rebuild is running, so any writes to other drives will cause writes to the parity drive.
February 5, 201511 yr There should be very few writes to parity during a rebuild ... in many cases there won't be any. Do you have other activity on the server during the rebuild? [Dockers, add-ons, etc., or some other system writing data to the system?
February 5, 201511 yr Author No but it does occur to me that as the new data disk is larger than the original disk (3Tb vs 1.5Tb) will the parity disk be written too when "mapping" the extra 1.5Tb? Actually I do not think that can be right as it has finished now and it seems to have gone OK and only wrote to the parity disk 11371 times. As far as I am aware there is nothing writing to the array.
February 5, 201511 yr No but it does occur to me that as the new data disk is larger than the original disk (3Tb vs 1.5Tb) will the parity disk be written too when "mapping" the extra 1.5Tb? I would expect any writes to non-zero sectors beyond 1.5TB would also cause writes to the parity disk otherwise I do not see how parity can be maintained.
February 5, 201511 yr No but it does occur to me that as the new data disk is larger than the original disk (3Tb vs 1.5Tb) will the parity disk be written too when "mapping" the extra 1.5Tb? I would expect any writes to non-zero sectors beyond 1.5TB would also cause writes to the parity disk otherwise I do not see how parity can be maintained. I've "upsized" many disks but don't recall looking very closely at this. I would think that instead of updating parity it would update the "extra" space on the new disk (to zero). On the other hand, any writes to any disk in the array including the new disk whether in the "extra" space or not would update parity. Maybe I'm missing the point.
February 5, 201511 yr I've "upsized" many disks but don't recall looking very closely at this. I would think that instead of updating parity it would update the "extra" space on the new disk (to zero). I would think it would do this too but I swear the last time I watched this in the unMenu/MyMain performance tab both the upgraded disk and the parity showed activity.
February 5, 201511 yr ... I would expect any writes to non-zero sectors beyond 1.5TB would also cause writes to the parity disk otherwise I do not see how parity can be maintained. Sectors beyond the original size of the disk are zeroed -- so no writes are required to the parity disk.
February 5, 201511 yr ... I would expect any writes to non-zero sectors beyond 1.5TB would also cause writes to the parity disk otherwise I do not see how parity can be maintained. Sectors beyond the original size of the disk are zeroed -- so no writes are required to the parity disk. I will be able to confirm or deny that tomorrow (hopefully if things work out correctly timing wise). I am upgrading a 3TB disk to 6TB tonight. The 6TB parity drive should have finished checking after my parity rebuild this morning. All other disks are 3 and 4 TB. So after 4TB should only see the data drive with access in unMenu/MyMain performance tab in the morning before I leave for work - if timing works out that way.
February 6, 201511 yr ... I would expect any writes to non-zero sectors beyond 1.5TB would also cause writes to the parity disk otherwise I do not see how parity can be maintained. Sectors beyond the original size of the disk are zeroed -- so no writes are required to the parity disk. I will be able to confirm or deny that tomorrow (hopefully if things work out correctly timing wise). I am upgrading a 3TB disk to 6TB tonight. The 6TB parity drive should have finished checking after my parity rebuild this morning. All other disks are 3 and 4 TB. So after 4TB should only see the data drive with access in unMenu/MyMain performance tab in the morning before I leave for work - if timing works out that way. OK. Looks like the Parity IS read past the point of the size of original drive but no writes should ever be needed on a rebuild except on the drive being rebuilt. See attached graphic of rebuild of 3TB drive on a 6TB.
February 6, 201511 yr It reads parity (which is zero) to "reconstruct" the data for the expansion. Agree but the new area of the rebuilt drive is just zeroed isn't it. So in theory it should only need to zero out the expanded drive. Must be non zero values being written that are derived from the parity drive after 3TB in my case.
February 7, 201511 yr It reads parity (which is zero) to "reconstruct" the data for the expansion. Agree but the new area of the rebuilt drive is just zeroed isn't it. So in theory it should only need to zero out the expanded drive. Must be non zero values being written that are derived from the parity drive after 3TB in my case. The special case of no other drives as large as parity is probably not handled any differently than other cases. All drives that still have bits are read and XORed to produce the bit for reconstruction.
February 7, 201511 yr ... Must be non zero values being written that are derived from the parity drive after 3TB in my case. No, I don't think that's the case. I think the system is just following the "normal" algorithm for reconstruction, even though there's nothing to reconstruct. The new drive is simply having zeroes written to all of the space after its original size -- I'm sure this continues all the way through the end of the 6TB ... and I suspect parity continues to be read during this time, even though there's no need to do so. But there should not be any writes to the parity drive due to the reconstruction at any point.
February 7, 201511 yr ... Must be non zero values being written that are derived from the parity drive after 3TB in my case. No, I don't think that's the case. I think the system is just following the "normal" algorithm for reconstruction, even though there's nothing to reconstruct. The new drive is simply having zeroes written to all of the space after its original size -- I'm sure this continues all the way through the end of the 6TB ... and I suspect parity continues to be read during this time, even though there's no need to do so. But there should not be any writes to the parity drive due to the reconstruction at any point. Actually I think there are file system structures being written to the area greater than the original drive. When the drive is originally expanded it is written to the simulated drive so that info get XOR'd to the parity drive. Then when the rebuild step actually reaches > 3TB it is XOR'd from the parity drive to the replacement drive. May not be much data - as in 99.9999999% of the data is just zeros but I would think some sectors will contain file system structures - in my case ReiserFS. If that isn't true then the parity spinning is wasted since nothing is needed after the 3TB drive size was reached and spinning of the 4TB drives would add even more spinning that wasn't needed between 3TB and 4TB of the 6TB size. I would think that unRAID would be coded to not do the unneeded drive spinning since it DOES spin down my 3TB drive that still remains in the system when the reconstruction reaches > 3TB.
February 7, 201511 yr I don't think so -- I'm fairly certain the only thing written to the drive after the original size of the drive is exceed is zeroes (with a caveat I'll note in a minute). Note that the # of writes to the parity drive doesn't change in your 2 graphics -- indicating that although the parity drive is still being read, it is NOT being written. If there was anything other-than-zeroes being written to the new drive at that point, there would also be writes to the parity drive to ensure parity was up-to-date. The caveat is: I DO know that Tom expands the size of the partition on the new drive at the end of this process. That will require a few writes to the drive to do that expansion ... I do not know where on the drive these writes occur -- but I suspect they're not done until the end of the process. So my expectation would be that if you kept refreshing the display and watching the # of writes to parity, it would remain static after the 3TB point (in this case) UNTIL the very end of the process, at which point there would be a few more writes as the file system was expanded.
February 10, 201511 yr I don't think so -- I'm fairly certain the only thing written to the drive after the original size of the drive is exceed is zeroes (with a caveat I'll note in a minute). Note that the # of writes to the parity drive doesn't change in your 2 graphics -- indicating that although the parity drive is still being read, it is NOT being written. If there was anything other-than-zeroes being written to the new drive at that point, there would also be writes to the parity drive to ensure parity was up-to-date. The caveat is: I DO know that Tom expands the size of the partition on the new drive at the end of this process. That will require a few writes to the drive to do that expansion ... I do not know where on the drive these writes occur -- but I suspect they're not done until the end of the process. So my expectation would be that if you kept refreshing the display and watching the # of writes to parity, it would remain static after the 3TB point (in this case) UNTIL the very end of the process, at which point there would be a few more writes as the file system was expanded. Why would ANY writes happen to the parity drive while rebuilding a drive? You are already down a drive so except for external writes it should be reads from all existing drives and writes to the drive being rebuilt. I would think it would only be maintaining parity (writes to parity) if external writes happen to the array like saving a file to the array while rebuilding - something I try to avoid. The only way an external write happens on my array is a possible metadata update but I never start a file copy to the array while rebuilding. So I wouldn't expect any writes to the parity drive at all. Except for expansion of the file system. As to when that happens - I don't know it could be at the end. But that leads me to another question. Why does it take so long for the rebuild to start since in my case all the drives were still spinning from boot up? My though was it was expanding the file system during that time. The wait seemed longer at the beginning with bigger drives and a bigger change in size but that could just be the watched pot syndrome I guess.
February 10, 201511 yr Agree -- I wouldn't expect ANY writes to parity as a result of a rebuild except for those required when the file system is expanded. I noted that earlier. I think any writes that are seen during this process are due to other array activity -- which may not be apparent, since many folks have add-ons/Dockers, or even the Mover process if there's a cache drive in play.
Archived
This topic is now archived and is closed to further replies.