cache now supports timeout