On Tue, Aug 12, 2014 at 1:21 PM, Tim Williams <[email protected]> wrote:
> We have a bug where you disable the table and it doesn't show as > disabled - I suspect the other way is problematic too but don't know > for sure. Looking into this brings up a few questions: > > 1) Based on the usage, I'm not so sure the tableDescriptor even needs > to be cached, so instead of fixing, perhaps the easy route of just > don't cache it should be taken? > Perhaps, we will need to review all calls to get the tableDesc. > > 2) If we do keep the cache, I think we should move to a proper cache > (e.g. Guava LoadingCache or somesuch) that has proper > evictions/invalidation. Anyone have strong feelings on that? > The evictions will have to occur with ZooKeeper changes/updates not based on timeouts as long as we stick with that restriction we could use any lib to implement. > > 3) It feels weird/wrong to have useCache in the calling method - it > seems like that should be an internal decision not one of the caller. > Thoughts on this? > The issue is that at certain times the cache is OK to use even if it's a second or two out of sync with ZK. Other times we have to know the correct answer, and basically make a ZK call. The whole point of the cache is to remove ZK calls because of the performance impacts both on Blur and the extra load on ZK. Aaron > > Thanks, > --tim >
