[infinispan-dev] SingleJoinTest#testTransactional failure

Vladimir Blagojevic vblagoje at redhat.com
Tue Nov 30 09:30:25 EST 2010


On 10-11-30 10:49 AM, Vladimir Blagojevic wrote:
> I like your solution. It seems to be less disruptive to ongoing
> transactions then the other two solutions.
>
> How would you safely detect that K is locked by another tx and thus skip
> locking?
I do *not* think I can do the following in LockingInterceptor:

public Object visitInvalidateCommand(InvocationContext ctx, 
InvalidateCommand command) throws Throwable {
       try {
          if (command.getKeys() != null) {
             for (Object key : command.getKeys()) {
                if(!lockManager.isLocked(key))
                    entryFactory.wrapEntryForWriting(ctx, key, false, 
true, false, false, false);
             }
          }
          return invokeNextInterceptor(ctx, command);
       } catch (Throwable te) {
          return cleanLocksAndRethrow(ctx, te);
       }
       finally {
          doAfterCall(ctx);
       }
    }


More information about the infinispan-dev mailing list