add cache on task