added `create_cache_key` callback option