Some values are masked representing missing data. These values are not imported at all into the database but when calculating how many values to import they are still taken into account, as this calculation doesn't actually loop over all values but just multiplies dimension lengths. This results in an import that finishes before the progress bar reaches 100%.
As it might take too long to loop over all values just to check whether they are masked or not, this might actually not get fixed at all. I'm still on the fence over this. I also kinda like being able to see (roughly) how many values where masked.