Caching should be optional