cache with updates