On 26/10/12 07:48, Niklas Laxström wrote:
It tries to acquire the lock until MGS_WAIT_TIMEOUT
has passed, which
is 10 seconds. The lock is there to prevent multiple threads building
the cache concurrently. For reasons unknown to me, there is another
lock inside ->lock() ->unlock() which again fails and disables message
cache.
-Niklas
However, XCache must be working for it to wait the WAIT_TIMEOUT. If
there wasn't a key, the mMemc->add would have been successful
(XCacheBagOStuff::set always returns true).
Maybe Johannes has XCache installed and working, but it doesn't have
enough space to store the message cache, so it is always a miss, and his
threads are constantly racing to rebuild it.