database caching added