I am looking into the caching code, and I can't see any locking
to prevent multiple sessions from concurrently accessing the query cache.
The L2 entity cache does have locking through the cache concurrency
strategy, but not the query cache.
Any insight would be greatly appreciated,
Aaron
Something like:
lock (QueryCache)
{
SessionFactoryImpl.getQueryCache(Region).Put(...)
}
lock (QueryCache)
{
SessionFactoryImpl.getQueryCache(Region).Get(..)
}
The read write concurrency strategy has two hard locks, on global
lock, and one per key lock.
Thanks,
Aaron