When lazy deserialization is on, lock timeouts show MarshalledValue and not actual key
--------------------------------------------------------------------------------------
Key: ISPN-278
URL:
https://jira.jboss.org/jira/browse/ISPN-278
Project: Infinispan
Issue Type: Bug
Components: Locking and Concurrency
Affects Versions: 4.0.0.CR2
Reporter: Galder Zamarreno
Assignee: Galder Zamarreno
Fix For: 4.0.0.GA
Whenever EntryFactoryImpl can't acquire a lock, it throws:
Object owner = lockManager.getOwner(key);
throw new TimeoutException("Unable to acquire lock after [" +
Util.prettyPrintTime(getLockAcquisitionTimeout(ctx)) + "] on key [" + key +
"] for requestor [" +
ctx.getLockOwner() + "]! Lock held by [" + owner +
"]");
However, when lazy deserialization is enabled, the key is shown in its MarshalledValue
form which is useless to the user.
The easy fix is to add:
if (key instanceof MarshalledValue) {
key = ((MarshalledValue) key).get();
}
However, this is not pretty and the first time we're having to do something similar.
We had to do the same in EventImpl for ISPN-242.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira