package org.infinispan.api.tree; import org.infinispan.configuration.cache.ConfigurationBuilder; import org.infinispan.test.TestingUtil; import org.infinispan.transaction.LockingMode; import org.infinispan.util.concurrent.IsolationLevel; import org.testng.annotations.Test; /** * Exercises and tests the new move() api using pessimistic locking. * * @author anistor@redhat.com */ @Test(groups = "functional", testName = "api.tree.NodeMoveAPIPessimisticTest") public class NodeMoveAPIPessimisticTest extends BaseNodeMoveAPITest { @Override protected ConfigurationBuilder createConfigurationBuilder() { ConfigurationBuilder cb = new ConfigurationBuilder(); cb.invocationBatching().enable() .locking().lockAcquisitionTimeout(TestingUtil.shortTimeoutMillis()) .isolationLevel(IsolationLevel.REPEATABLE_READ) .transaction().lockingMode(LockingMode.PESSIMISTIC); return cb; } @Test(enabled = false, description = "The test does not work on pessimistic RR caches, " + "because moveCtoB reads in the root node into context. Then, the move operation does not check " + "if the entry was not changed after lock (no pessimistic WSC) and the move can be executed.") @Override public void testConcurrentMoveSameNode() throws Exception { } }