private boolean remoteVsRemoteDld(Object key, InvocationContext ctx, long lockTimeout, long start, long now, DeadlockDetectingGlobalTransaction lockOwnerTx) throws InterruptedException {
TxInvocationContext remoteTxContext = (TxInvocationContext) ctx;
Address origin = remoteTxContext.getGlobalTransaction().getAddress();
DeadlockDetectingGlobalTransaction remoteGlobalTransaction = (DeadlockDetectingGlobalTransaction) ctx.getLockOwner();
boolean thisShouldInterrupt = remoteGlobalTransaction.thisWillInterrupt(lockOwnerTx);
if (trace) log.trace("Should I interrupt other transaction ? " + thisShouldInterrupt);
boolean isDeadLock = (configuration.getCacheMode().isReplicated() || lockOwnerTx.isReplicatingTo(origin)) && !lockOwnerTx.isRemote();
if (thisShouldInterrupt && isDeadLock) {
lockOwnerTx.interruptProcessingThread();
if (exposeJmxStats) {