updated product and index and added caching