In some cases,readStateFromDistCache can not throw the correct exception...

... because exceptions may be swallowed.