So here I go again. Hoping to have a relaxing time after Christmas and run into something else that boils my blood
.
I have a new Qnap NAS server that I am installing/initializing. For those of you who don't know what it is, it is a server with storage that sits on your home network and you can access it from both inside your own and increasingly outside.
At first I marveled by the level of polish in the installation software. It is all cloud based with no software to download or install. Simply gave it the code on the box and it started doing its thing with the common first step of updating its firmware and then proceeding to configure the disk array. The former is a clever answer to a manufacturing problem of how to keep the new manufactured devices updated software. You don't have to care about that anymore. You just make sure the box can wake up and fetch its new software. Hence the reason every device these days has a forced firmware update on first power on.
I bought four 6 Terabyte drives for the unit. Yes, 6 Tbyte
. Life is good. Three will be the primary storage and the other is a "parity" drive that allows one drive to fail and the system still going. Rebuilding with new replacement drive can be lengthy but I wanted maximum storage in this new Qnap T-431 server. So I bought the largest drive I could which was 6 Tbyte. Usage will be for video recording and security cameras.
Anyway, back to my rant. Everything went smoothly and rather quickly. Then came time to configuring the "RAID 5" disk array and it put up a progress bar. The bar jumped to 30%, sat there for a few seconds and them immediately jumped to 99%. Then it sat there, and sat there. It is still stuck at 99% some 10 minutes later. Just checked and it is still at 99%.
Why are these progress bars so unreliable? The answer is that they are mostly fake. What the bar is attempting to do is predict the future. If it says 50%, then it means just as much time is left to finish the rest of the task. The way computers work though, this is an impossible problem. The operating system together with the hardware decide how fast or slow things get done. An app can't determine that time. So what is commonly done is to simply give a percentage of number of steps taken. Let's say you want to copy 100 files. The progress bar simply indicates the *number* of files copied. If all the files are small, the progress bar runs like mad. If it then gets to one huge file at the end, it will get stuck at that one step and keep saying "95%" or whatever the file count says.
There can be more sophistication here. The app could measure the actual throughput of the system and attempt to predict the remaining time better. This is complex but it is better than nothing.
Unfortunately there is another reason you can get the "99%" stuck progress bar. Namely, if the system hangs. For some reason, it is always the last step or so that causes system crashes and hangs. Say you are updating the firmware. The last step is rebooting the box after all the firmware is loaded. Should there be a bug in that firmware update, the box will reboot and crash and not respond. The remote software that is running on your PC or cloud in my case, will sit there stupidly saying "99%" complete.
Either
give me progress bar that has some resemblance to reality or nothing. I mean how hard is it to know how long a reboot is supposed to take, double that time and then properly tell me the device is "bricked" (dead and can't be brought back to previous step before dying).
In my case, it is stuck in Formatting. Anyone who has ever touched disk server let alone programmed a NAS, should know that formatting four 6 Tbyte drives is going to take an eternity. Why on earth pretend that is only going to take the last 1% of the time to finish the initial install and configuration? They have tested these drives in the factory so they should know the exact time it takes to format these drives (I bought a drive that was certified to work with the NAS).
"Software can be hard" to write. But this stuff is not that hard. It really isn't.
Just checked and it is still sitting there at 99%. Grrrrrr.... Hoping it is not hung or I will create another rant post here.