[infinispan-commits] Infinispan SVN: r1607 - in trunk/lucene-directory/src: test/java/org/infinispan/lucene/locking and 1 other directory.
infinispan-commits at lists.jboss.org
infinispan-commits at lists.jboss.org
Sun Mar 14 15:07:23 EDT 2010
Author: sannegrinovero
Date: 2010-03-14 15:07:23 -0400 (Sun, 14 Mar 2010)
New Revision: 1607
Added:
trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/TransactionalLockManagerFunctionalTest.java
Modified:
trunk/lucene-directory/src/main/java/org/infinispan/lucene/locking/TransactionalLockFactory.java
trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/LockManagerFunctionalTest.java
Log:
[ISPN-372] (Create a plain Lucene LockFactory not using a TransactionManager) adding smoke test to check both implementations
Modified: trunk/lucene-directory/src/main/java/org/infinispan/lucene/locking/TransactionalLockFactory.java
===================================================================
--- trunk/lucene-directory/src/main/java/org/infinispan/lucene/locking/TransactionalLockFactory.java 2010-03-14 18:56:42 UTC (rev 1606)
+++ trunk/lucene-directory/src/main/java/org/infinispan/lucene/locking/TransactionalLockFactory.java 2010-03-14 19:07:23 UTC (rev 1607)
@@ -56,7 +56,7 @@
public class TransactionalLockFactory extends LockFactory {
private static final Log log = LogFactory.getLog(TransactionalLockFactory.class);
- static final String DEF_LOCK_NAME = IndexWriter.WRITE_LOCK_NAME;
+ private static final String DEF_LOCK_NAME = IndexWriter.WRITE_LOCK_NAME;
private final Cache<CacheKey, Object> cache;
private final String indexName;
Modified: trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/LockManagerFunctionalTest.java
===================================================================
--- trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/LockManagerFunctionalTest.java 2010-03-14 18:56:42 UTC (rev 1606)
+++ trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/LockManagerFunctionalTest.java 2010-03-14 19:07:23 UTC (rev 1607)
@@ -23,6 +23,10 @@
import java.io.IOException;
+import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.store.Lock;
+import org.apache.lucene.store.LockFactory;
+import org.infinispan.Cache;
import org.infinispan.config.Configuration;
import org.infinispan.lucene.CacheTestSupport;
import org.infinispan.test.MultipleCacheManagersTest;
@@ -42,15 +46,14 @@
createClusteredCaches(2, "lucene", replSync);
}
- @SuppressWarnings("unchecked")
public void testLuceneIndexLocking() throws IOException {
final String commonIndexName = "myIndex";
- TransactionalLockFactory lockManagerA = new TransactionalLockFactory(cache(0, "lucene"), commonIndexName);
- TransactionalLockFactory lockManagerB = new TransactionalLockFactory(cache(1, "lucene"), commonIndexName);
- TransactionalLockFactory isolatedLockManager = new TransactionalLockFactory(cache(0, "lucene"), "anotherIndex");
- TransactionalSharedLuceneLock luceneLockA = lockManagerA.makeLock(TransactionalLockFactory.DEF_LOCK_NAME);
- TransactionalSharedLuceneLock luceneLockB = lockManagerB.makeLock(TransactionalLockFactory.DEF_LOCK_NAME);
- TransactionalSharedLuceneLock anotherLock = isolatedLockManager.makeLock(TransactionalLockFactory.DEF_LOCK_NAME);
+ LockFactory lockManagerA = makeLockFactory(cache(0,"lucene"), commonIndexName);
+ LockFactory lockManagerB = makeLockFactory(cache(1, "lucene"), commonIndexName);
+ LockFactory isolatedLockManager = makeLockFactory(cache(0, "lucene"), "anotherIndex");
+ Lock luceneLockA = lockManagerA.makeLock(IndexWriter.WRITE_LOCK_NAME);
+ Lock luceneLockB = lockManagerB.makeLock(IndexWriter.WRITE_LOCK_NAME);
+ Lock anotherLock = isolatedLockManager.makeLock(IndexWriter.WRITE_LOCK_NAME);
assert luceneLockA.obtain();
assert luceneLockB.isLocked();
@@ -60,8 +63,12 @@
luceneLockA.release();
assert ! luceneLockB.isLocked();
assert luceneLockB.obtain();
- lockManagerA.clearLock(TransactionalLockFactory.DEF_LOCK_NAME);
+ lockManagerA.clearLock(IndexWriter.WRITE_LOCK_NAME);
assert ! luceneLockB.isLocked();
}
+ protected LockFactory makeLockFactory(Cache cache, String commonIndexName) {
+ return new BaseLockFactory(cache, commonIndexName);
+ }
+
}
Added: trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/TransactionalLockManagerFunctionalTest.java
===================================================================
--- trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/TransactionalLockManagerFunctionalTest.java (rev 0)
+++ trunk/lucene-directory/src/test/java/org/infinispan/lucene/locking/TransactionalLockManagerFunctionalTest.java 2010-03-14 19:07:23 UTC (rev 1607)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.infinispan.lucene.locking;
+
+import org.apache.lucene.store.LockFactory;
+import org.infinispan.Cache;
+import org.testng.annotations.Test;
+
+/**
+ * TransactionalLockManagerFunctionalTest.
+ *
+ * @author Sanne Grinovero
+ * @since 4.0
+ */
+ at Test(groups = "functional", testName = "lucene.locking.TransactionalLockManagerFunctionalTest", enabled = true)
+public class TransactionalLockManagerFunctionalTest extends LockManagerFunctionalTest {
+
+ protected LockFactory makeLockFactory(Cache cache, String commonIndexName) {
+ return new TransactionalLockFactory(cache, commonIndexName);
+ }
+
+}
More information about the infinispan-commits
mailing list