Why do you think  we shouldn't throw an exception when total_downloaded is not the same with required_length? I think it is obviously there are something wrong happened.