Skip to Main Content
Customer Feedback

We love feedback from you on our products and the problems in your daily work that you would like us to solve. Please describe the challenge you're encountering and your desired outcome. Be as detailed as possible.

For technical issues or bugs please head to Support or our Developer Community. You can assign up to 20 votes in total. Thank you for your feedback.

Status explanation: 'Future Consideration' = Continuing to collect further feedback, not planned at this time. 'Investigating' = Prioritized for deeper customer and feasibility investigations ahead of planning development.

Created by Guest
Created on Jan 29, 2021

IBestBetRepository cache fails when there is a large number of best bets

I am working on a solution with a large number of Best Bets. Over 800 in fact. It appears that, somewhere along the line, we passed a threshold in which IBestBetRepository stops using caching. That is, either best bets fail to be inserted into cache, or they fail to be retrieved from cache. I don't know which.

We have code that queries best bets via IBestBetRepository.IList(). We noticed that calls to this method were taking up to 45 seconds to return. This happens every time. We query it once: 45 seconds. We query it immediately again: 45 seconds. Again: 45 seconds. And so on. Clearly, no caching is taking place. After deleting the best bets down to <200 (from >800), the response times significantly improved.

We mitigated this issue by adding our own IBestBetRepository intercept/decorator which manages the list of best bets in ISynchronizedObjectInstanceCache itself. So our solution is working great. But, to be a good citizen, I wanted to report this issue to Episerver for internal troubleshooting. Thanks!

  • Guest
    Reply
    |
    May 29, 2022

    Since Find 13.4.4 the best best repository use ISynchronizedObjectInstanceCache correctly and you should see faster best best retrieval.