Skip to content

Commit

Permalink
fix cluster locks test
Browse files Browse the repository at this point in the history
  • Loading branch information
martinfurmanski committed Mar 31, 2017
1 parent b08148b commit fb7d355
Showing 1 changed file with 19 additions and 5 deletions.
Expand Up @@ -26,6 +26,8 @@
import org.junit.rules.RuleChain; import org.junit.rules.RuleChain;


import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
import java.util.concurrent.atomic.AtomicInteger;

import org.neo4j.graphdb.Label; import org.neo4j.graphdb.Label;
import org.neo4j.graphdb.Node; import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Transaction; import org.neo4j.graphdb.Transaction;
Expand Down Expand Up @@ -87,8 +89,9 @@ public void lockCleanupOnModeSwitch() throws Throwable
} }


@Test @Test
public void locksFailingOnSlavesMustHaveDescriptiveMessage() throws Throwable public void oneOrTheOtherShouldDeadlock() throws Throwable
{ {
AtomicInteger deadlockCount = new AtomicInteger();
HighlyAvailableGraphDatabase master = cluster.getMaster(); HighlyAvailableGraphDatabase master = cluster.getMaster();
Node masterA = createNodeOnMaster( testLabel, master ); Node masterA = createNodeOnMaster( testLabel, master );
Node masterB = createNodeOnMaster( testLabel, master ); Node masterB = createNodeOnMaster( testLabel, master );
Expand All @@ -111,15 +114,26 @@ public void locksFailingOnSlavesMustHaveDescriptiveMessage() throws Throwable
latch.countDown(); latch.countDown();
tx.acquireWriteLock( masterB ); tx.acquireWriteLock( masterB );
} }
catch ( DeadlockDetectedException e )
{
deadlockCount.incrementAndGet();
}
}); });
masterTx.setDaemon( true );
masterTx.start(); masterTx.start();
latch.await(); latch.await();


// This should deadlock try
expectedException.expect( DeadlockDetectedException.class ); {
transaction.acquireWriteLock( slaveA ); transaction.acquireWriteLock( slaveA );
}
catch ( DeadlockDetectedException e )
{
deadlockCount.incrementAndGet();
}
masterTx.join();
} }

assertEquals( 1, deadlockCount.get() );
} }


@Test @Test
Expand Down

0 comments on commit fb7d355

Please sign in to comment.