cache file and cache fetching should be two different steps