[exo-jcr-commits] exo-jcr SVN: r2963 - in jcr/branches/1.14-ISPN/exo.jcr.component.core/src: main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan and 4 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Aug 20 09:07:54 EDT 2010


Author: tolusha
Date: 2010-08-20 09:07:54 -0400 (Fri, 20 Aug 2010)
New Revision: 2963

Added:
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-config.xml
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-lock.xml
Modified:
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/BufferedISPNCache.java
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/ISPNCacheWorkspaceStorageCache.java
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/infinispan/InfinispanCacheFactory.java
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/xa/TestUserTransaction.java
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-infinispan-lock.xml
   jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-jcr-config.xml
Log:
EXOJCR-830: fix failed test, code cleanup

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/lock/infinispan/ISPNCacheableLockManagerImpl.java	2010-08-20 13:07:54 UTC (rev 2963)
@@ -57,7 +57,6 @@
 /**
  * @author <a href="anatoliy.bazko at exoplatform.org">Anatoliy Bazko</a>
  * @version $Id: InfinispanLockManagerImpl.java 111 2010-11-11 11:11:11Z tolusha $
- *
  */
 @Managed
 @NameTemplate(@Property(key = "service", value = "lockmanager"))

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/BufferedISPNCache.java
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/BufferedISPNCache.java	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/BufferedISPNCache.java	2010-08-20 13:07:54 UTC (rev 2963)
@@ -39,8 +39,7 @@
 import java.util.concurrent.TimeUnit;
 
 /**
- * Decorator over the JBossCache that stores changes in buffer, then sorts and applies to
- * JBossCache.
+ * Decorator over the Infinispan Cache that stores changes in buffer, then sorts and applies it.
  * 
  * @author <a href="mailto:Sergey.Kabashnyuk at exoplatform.org">Sergey Kabashnyuk</a>
  * @version $Id$
@@ -58,10 +57,6 @@
 
    private ThreadLocal<Boolean> local = new ThreadLocal<Boolean>();
 
-   private final boolean useExpiration;
-
-   private final long expirationTimeOut;
-
    protected static final Log LOG = ExoLogger.getLogger("exo.jcr.component.core.BufferedISPNCache");
 
    public static enum ChangesType {
@@ -83,12 +78,8 @@
 
       protected final boolean localMode;
 
-      protected final boolean useExpiration;
-
-      protected final long timeOut;
-
       public ChangesContainer(CacheKey key, ChangesType changesType, Cache<Serializable, Object> cache,
-         int historicalIndex, boolean localMode, boolean useExpiration, long timeOut)
+         int historicalIndex, boolean localMode)
       {
          super();
          this.key = key;
@@ -96,8 +87,6 @@
          this.cache = cache;
          this.historicalIndex = historicalIndex;
          this.localMode = localMode;
-         this.useExpiration = useExpiration;
-         this.timeOut = timeOut;
       }
 
       /**
@@ -162,13 +151,6 @@
          }
       }
 
-      public final void putExpiration(CacheKey key)
-      {
-         //         setCacheLocalMode();
-         //         // TODO
-         //         cache.put(efqn, ExpirationAlgorithmConfig.EXPIRATION_KEY, new Long(System.currentTimeMillis() + timeOut));
-      }
-
       public abstract void apply();
    }
 
@@ -180,9 +162,9 @@
       private final Object value;
 
       public PutObjectContainer(CacheKey key, Object value, Cache<Serializable, Object> cache, int historicalIndex,
-         boolean local, boolean useExpiration, long timeOut)
+         boolean local)
       {
-         super(key, ChangesType.PUT, cache, historicalIndex, local, useExpiration, timeOut);
+         super(key, ChangesType.PUT, cache, historicalIndex, local);
 
          this.value = value;
       }
@@ -192,11 +174,6 @@
       {
          setCacheLocalMode();
          cache.put(key, value);
-
-         if (useExpiration)
-         {
-            putExpiration(key);
-         }
       }
    }
 
@@ -209,9 +186,9 @@
       private final Object value;
 
       public AddToListContainer(CacheKey key, Object value, Cache<Serializable, Object> cache, int historicalIndex,
-         boolean local, boolean useExpiration, long timeOut)
+         boolean local)
       {
-         super(key, ChangesType.PUT, cache, historicalIndex, local, useExpiration, timeOut);
+         super(key, ChangesType.PUT, cache, historicalIndex, local);
          this.value = value;
       }
 
@@ -235,11 +212,6 @@
             }
             newSet.add(value);
 
-            if (useExpiration)
-            {
-               putExpiration(key);
-            }
-
             setCacheLocalMode();
             cache.put(key, newSet);
          }
@@ -260,9 +232,9 @@
       private final Object value;
 
       public RemoveFromListContainer(CacheKey key, Object value, Cache<Serializable, Object> cache,
-         int historicalIndex, boolean local, boolean useExpiration, long timeOut)
+         int historicalIndex, boolean local)
       {
-         super(key, ChangesType.REMOVE, cache, historicalIndex, local, useExpiration, timeOut);
+         super(key, ChangesType.REMOVE, cache, historicalIndex, local);
          this.value = value;
       }
 
@@ -283,11 +255,6 @@
             Set<Object> newSet = new HashSet<Object>((Set<Object>)existingObject);
             newSet.remove(value);
 
-            if (useExpiration)
-            {
-               putExpiration(key);
-            }
-
             setCacheLocalMode();
             cache.put(key, newSet);
          }
@@ -299,10 +266,9 @@
     */
    public static class RemoveObjectContainer extends ChangesContainer
    {
-      public RemoveObjectContainer(CacheKey key, Cache<Serializable, Object> cache, int historicalIndex, boolean local,
-         boolean useExpiration, long timeOut)
+      public RemoveObjectContainer(CacheKey key, Cache<Serializable, Object> cache, int historicalIndex, boolean local)
       {
-         super(key, ChangesType.REMOVE, cache, historicalIndex, local, useExpiration, timeOut);
+         super(key, ChangesType.REMOVE, cache, historicalIndex, local);
       }
 
       @Override
@@ -313,12 +279,10 @@
       }
    }
 
-   public BufferedISPNCache(Cache<Serializable, Object> parentCache, boolean useExpiration, long expirationTimeOut)
+   public BufferedISPNCache(Cache<Serializable, Object> parentCache)
    {
       super();
       this.parentCache = parentCache;
-      this.useExpiration = useExpiration;
-      this.expirationTimeOut = expirationTimeOut;
    }
 
    /**
@@ -802,7 +766,7 @@
    {
       CompressedISPNChangesBuffer changesContainer = getChangesBufferSafe();
       changesContainer.add(new PutObjectContainer(key, value, parentCache, changesContainer.getHistoryIndex(), local
-         .get(), useExpiration, expirationTimeOut));
+         .get()));
 
       return parentCache.get(key);
    }
@@ -813,7 +777,7 @@
    @Override
    public Object put(Serializable key, Object value)
    {
-      return parentCache.put(key, value);
+      throw new UnsupportedOperationException("Unexpected method call use put(CacheKey key, Object value)");
    }
 
    /**
@@ -833,7 +797,7 @@
    {
       CompressedISPNChangesBuffer changesContainer = getChangesBufferSafe();
       changesContainer.add(new RemoveObjectContainer((CacheKey)key, parentCache, changesContainer.getHistoryIndex(),
-         local.get(), useExpiration, expirationTimeOut));
+         local.get()));
       return parentCache.get(key);
    }
 
@@ -997,7 +961,7 @@
    {
       CompressedISPNChangesBuffer changesContainer = getChangesBufferSafe();
       changesContainer.add(new AddToListContainer(key, value, parentCache, changesContainer.getHistoryIndex(), local
-         .get(), useExpiration, expirationTimeOut));
+         .get()));
    }
 
    /**
@@ -1014,7 +978,7 @@
       Object prevObject = getObjectFromChangesContainer(changesContainer, key);
 
       changesContainer.add(new PutObjectContainer(key, value, parentCache, changesContainer.getHistoryIndex(), local
-         .get(), useExpiration, expirationTimeOut));
+         .get()));
 
       if (prevObject != null)
       {
@@ -1051,7 +1015,7 @@
    {
       CompressedISPNChangesBuffer changesContainer = getChangesBufferSafe();
       changesContainer.add(new RemoveFromListContainer(key, value, parentCache, changesContainer.getHistoryIndex(),
-         local.get(), useExpiration, expirationTimeOut));
+         local.get()));
    }
 
    public Object getFromBuffer(CacheKey key)

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/ISPNCacheWorkspaceStorageCache.java
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/ISPNCacheWorkspaceStorageCache.java	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/infinispan/ISPNCacheWorkspaceStorageCache.java	2010-08-20 13:07:54 UTC (rev 2963)
@@ -58,11 +58,12 @@
  * 
  * Cache based on Infinispan.<p/>
  *
- * TODO: structure
- *
  * <ul>
  * <li>cache transparent: or item cached or not, we should not generate "not found" Exceptions </li>
  * 
+ * This cache implementation stores items by UUID and parent UUID with QPathEntry.
+ * Except this cache stores list of children UUID.
+ * 
  * <p/>
  * Current state notes (subject of change):
  * <ul>
@@ -212,27 +213,7 @@
       // create parent JBossCache instance
       Cache<Serializable, Object> parentCache = factory.createCache(wsConfig.getCache());
 
-      //      // get all eviction configurations
-      //      List<EvictionRegionConfig> evictionConfigurations =
-      //         parentCache.getConfiguration().getEvictionConfig().getEvictionRegionConfigs();
-      //      // append and default eviction configuration, since it is not present in region configurations
-      //      evictionConfigurations.add(parentCache.getConfiguration().getEvictionConfig().getDefaultEvictionRegionConfig());
-      //
-      //      boolean useExpiration = false;
-      //      // looking over all eviction configurations till the end or till some expiration algorithm subclass not found.
-      //      for (EvictionRegionConfig evictionRegionConfig : evictionConfigurations)
-      //      {
-      //         if (evictionRegionConfig.getEvictionAlgorithmConfig() instanceof ExpirationAlgorithmConfig)
-      //         {
-      //            // force set expiration key to default value in all Expiration configurations (if any)
-      //            ((ExpirationAlgorithmConfig)evictionRegionConfig.getEvictionAlgorithmConfig())
-      //               .setExpirationKeyName(ExpirationAlgorithmConfig.EXPIRATION_KEY);
-      //            useExpiration = true;
-      //         }
-      //      }
-
-      // if expiration is used, set appropriate factory with with timeout set via configuration (or default one 15minutes)
-      this.cache = new BufferedISPNCache(parentCache, false, -1);
+      this.cache = new BufferedISPNCache(parentCache);
    }
 
    /**
@@ -443,17 +424,6 @@
    public void addChildPropertiesList(NodeData parent, List<PropertyData> childProperties)
    {
       // TODO not implemented, will force read from DB
-      //      try
-      //      {
-      //         cache.beginTransaction();
-      //         cache.setLocal(true);
-      //
-      //      }
-      //      finally
-      //      {
-      //         cache.setLocal(false);
-      //         cache.commitTransaction();
-      //      }
    }
 
    /**
@@ -793,7 +763,7 @@
                      TransientNodeData newNode =
                         new TransientNodeData(newPath, prevNode.getIdentifier(), prevNode.getPersistedVersion(),
                            prevNode.getPrimaryTypeName(), prevNode.getMixinTypeNames(), prevNode.getOrderNumber(),
-                           prevNode.getParentIdentifier(), inheritACL ? acl : prevNode.getACL()); // TODO check ACL
+                           prevNode.getParentIdentifier(), inheritACL ? acl : prevNode.getACL());
 
                      // update this node
                      if (key instanceof CacheId)

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/infinispan/InfinispanCacheFactory.java
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/infinispan/InfinispanCacheFactory.java	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/infinispan/InfinispanCacheFactory.java	2010-08-20 13:07:54 UTC (rev 2963)
@@ -38,10 +38,6 @@
  * Path to Infinispan configuration or template and cache name should be 
  * provided as "infinispan-configuration" and "infinispan-cache-name" properties 
  * in parameterEntry instance respectively. 
- * <br>
- * If parameterEntry has "jgroups-multiplexer-stack" (=true) and 
- * "jgroups-configuration" parameters then Multiplexing stack is enabled
- * in Infinispan (this is highly recommended by RH specialists).
  * 
  * @author <a href="mailto:nikolazius at gmail.com">Nikolay Zamosenchuk</a>
  * @version $Id$
@@ -54,12 +50,8 @@
 
    public static final String JGROUPS_CONFIG = "jgroups-configuration";
 
-   public static final String JGROUPS_MUX_ENABLED = "jgroups-multiplexer-stack";
-
    private final TemplateConfigurationHelper configurationHelper;
 
-   private ConfigurationManager configurationManager;
-
    private final Log log = ExoLogger.getLogger("exo.jcr.component.core.InfinispanCacheFactory");
 
    /**
@@ -70,7 +62,6 @@
     */
    public InfinispanCacheFactory(ConfigurationManager configurationManager)
    {
-      this.configurationManager = configurationManager;
       this.configurationHelper = TemplateConfigurationHelper.createJBossCacheHelper(configurationManager);
    }
 
@@ -79,9 +70,6 @@
    * Path to Infinispan configuration or template should be provided as 
    * "infinispan-configuration" property in parameterEntry instance. 
    * <br>
-   * If parameterEntry has "jgroups-multiplexer-stack" (=true) and 
-   * "jgroups-configuration" parameters then Multiplexing stack is enabled
-   * in Infinispan (this is highly recommended by RH specialists)
    * 
    * @param parameterEntry
    * @return
@@ -89,7 +77,7 @@
    */
    public Cache<K, V> createCache(MappedParametrizedObjectEntry parameterEntry) throws RepositoryConfigurationException
    {
-      // get Infinispan configuration file path and cache name
+      // get Infinispan configuration file path
       final String configurationPath = parameterEntry.getParameterValue(INFINISPAN_CONFIG);
       log.info("Infinispan Cache configuration used: " + configurationPath);
 
@@ -125,48 +113,6 @@
       };
       Cache<K, V> cache = AccessController.doPrivileged(action);
 
-      // JGroups multiplexer configuration if enabled
-      //      if (parameterEntry.getParameterBoolean(JGROUPS_MUX_ENABLED, false))
-      //      {
-      //         try
-      //         {
-      //            // Get path to JGroups configuration
-      //            String jgroupsConfigurationFilePath = parameterEntry.getParameterValue(JGROUPS_CONFIG);
-      //            if (jgroupsConfigurationFilePath != null)
-      //            {
-      //               // Create and inject multiplexer factory
-      //               JChannelFactory muxFactory = new JChannelFactory();
-      //               muxFactory.setMultiplexerConfig(configurationManager.getResource(jgroupsConfigurationFilePath));
-      //               cache.getConfiguration().getRuntimeConfig().setMuxChannelFactory(muxFactory);
-      //               log.info("Multiplexer stack successfully enabled for the cache.");
-      //            }
-      //         }
-      //         catch (Exception e)
-      //         {
-      //            // exception occurred setting mux factory
-      //            e.printStackTrace();
-      //            throw new RepositoryConfigurationException("Error setting multiplexer configuration.", e);
-      //         }
-      //      }
-      //      else
-      //      {
-      //         // Multiplexer is not enabled. If jGroups configuration preset it is applied
-      //         String jgroupsConfigurationFilePath = parameterEntry.getParameterValue(JGROUPS_CONFIG, null);
-      //         if (jgroupsConfigurationFilePath != null)
-      //         {
-      //            try
-      //            {
-      //               cache.getConfiguration().setJgroupsConfigFile(
-      //                  configurationManager.getResource(jgroupsConfigurationFilePath));
-      //               log.info("Custom JGroups configuration set:"
-      //                  + configurationManager.getResource(jgroupsConfigurationFilePath));
-      //            }
-      //            catch (Exception e)
-      //            {
-      //               throw new RepositoryConfigurationException("Error setting JGroups configuration.", e);
-      //            }
-      //         }
-      //      }
       return cache;
    }
 }

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/xa/TestUserTransaction.java
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/xa/TestUserTransaction.java	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/api/xa/TestUserTransaction.java	2010-08-20 13:07:54 UTC (rev 2963)
@@ -44,6 +44,7 @@
 
    private TransactionService txService;
 
+   @Override
    public void setUp() throws Exception
    {
       super.setUp();
@@ -115,7 +116,7 @@
       ut.begin();
       log.info("after begin");
       // we need to create the session within the transaction to ensure that it will be enlisted
-      Session session = (SessionImpl)repository.login(credentials, "ws");
+      Session session = repository.login(credentials, "ws");
       session.getRootNode().addNode("txcommit");
       session.save();
       assertNotNull(session.getItem("/txcommit"));
@@ -143,7 +144,7 @@
 
       ut.begin();
       // we need to create the session within the transaction to ensure that it will be enlisted
-      Session session = (SessionImpl)repository.login(credentials, "ws");
+      Session session = repository.login(credentials, "ws");
       session.getRootNode().addNode("txrollback");
       session.save();
       assertNotNull(session.getItem("/txrollback"));
@@ -233,10 +234,10 @@
 
       Session s2 =
          repository.login(new SimpleCredentials("admin", "admin".toCharArray()), session.getWorkspace().getName());
-      
+
       Node tx1 = s1.getRootNode().getNode("pretx").addNode("tx1");
       s1.save();
-      
+
       Node tx2 = s2.getRootNode().getNode("pretx").addNode("tx2");
       s2.save();
 
@@ -251,13 +252,19 @@
       catch (Exception e)
       {
          // ok
-         assertNotNull(((XASession) s1).getCommitException());
+         assertNotNull(((XASession)s1).getCommitException());
       }
 
-      try {
+      s1.logout();
+      s2.logout();
+
+      try
+      {
          session.getItem("/pretx/tx1");
          fail("PathNotFoundException should be thrown");
-      } catch(PathNotFoundException e) {
+      }
+      catch (PathNotFoundException e)
+      {
          // ok
       }
    }

Added: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-config.xml
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-config.xml	                        (rev 0)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-config.xml	2010-08-20 13:07:54 UTC (rev 2963)
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2009 eXo Platform SAS.
+
+    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.
+
+-->
+<infinispan
+      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+      xsi:schemaLocation="urn:infinispan:config:4.0 http://www.infinispan.org/schemas/infinispan-config-4.0.xsd" 
+      xmlns="urn:infinispan:config:4.0">
+
+    <global>
+      <evictionScheduledExecutor factory="org.infinispan.executors.DefaultScheduledExecutorFactory">
+        <properties>
+          <property name="threadNamePrefix" value="EvictionThread"/>
+        </properties>
+      </evictionScheduledExecutor>
+
+      <globalJmxStatistics jmxDomain="infinispan" enabled="true" allowDuplicateDomains="true"/>
+
+      <transport transportClass="org.infinispan.remoting.transport.jgroups.JGroupsTransport" clusterName="${infinispan-cluster-name}" distributedSyncTimeout="20000">
+        <properties>
+          <property name="configurationFile" value="${jgroups-configuration}"/>
+        </properties>
+      </transport>
+    </global>
+
+    <default>
+      <locking isolationLevel="READ_COMMITTED" lockAcquisitionTimeout="20000" writeSkewCheck="false" concurrencyLevel="500"/>
+      <transaction transactionManagerLookupClass="org.infinispan.transaction.lookup.JBossStandaloneJTAManagerLookup" syncRollbackPhase="false" syncCommitPhase="false"/>
+      <jmxStatistics enabled="true"/>
+      <deadlockDetection enabled="true" spinDuration="100"/>
+      <eviction strategy="LRU" wakeUpInterval="5000" threadPolicy="DEFAULT" maxEntries="5000"/>
+   </default>
+</infinispan>

Added: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-lock.xml
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-lock.xml	                        (rev 0)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/cluster/test-infinispan-lock.xml	2010-08-20 13:07:54 UTC (rev 2963)
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Copyright (C) 2009 eXo Platform SAS.
+
+    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.
+
+-->
+<infinispan
+      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+      xsi:schemaLocation="urn:infinispan:config:4.0 http://www.infinispan.org/schemas/infinispan-config-4.0.xsd" 
+      xmlns="urn:infinispan:config:4.0">
+
+    <global>
+      <globalJmxStatistics jmxDomain="infinispan" enabled="true" allowDuplicateDomains="true"/>
+
+      <transport transportClass="org.infinispan.remoting.transport.jgroups.JGroupsTransport" clusterName="${infinispan-cluster-name}" distributedSyncTimeout="20000">
+        <properties>
+          <property name="configurationFile" value="${jgroups-configuration}"/>
+        </properties>
+      </transport>
+    </global>
+
+    <default>
+      <locking isolationLevel="READ_COMMITTED" lockAcquisitionTimeout="20000" writeSkewCheck="false" concurrencyLevel="500"/>
+      <transaction transactionManagerLookupClass="org.infinispan.transaction.lookup.JBossStandaloneJTAManagerLookup" syncRollbackPhase="false" syncCommitPhase="false"/>
+      <jmxStatistics enabled="true"/>
+      <deadlockDetection enabled="true" spinDuration="100"/>
+
+      <loaders passivation="false" shared="true" preload="true">
+        <loader class="org.infinispan.loaders.jdbc.stringbased.JdbcStringBasedCacheStore" fetchPersistentState="false" ignoreModifications="false" purgeOnStartup="false">
+          <properties>
+             <property name="stringsTableNamePrefix" value="${infinispan-cl-cache.jdbc.table.name}"/>
+             <property name="idColumnName" value="${infinispan-cl-cache.jdbc.id.column}"/>
+             <property name="dataColumnName" value="${infinispan-cl-cache.jdbc.data.column}"/>
+             <property name="timestampColumnName" value="${infinispan-cl-cache.jdbc.timestamp.column}"/>
+             <property name="idColumnType" value="${infinispan-cl-cache.jdbc.id.type}"/>
+             <property name="dataColumnType" value="${infinispan-cl-cache.jdbc.data.type}"/>
+             <property name="timestampColumnType" value="${infinispan-cl-cache.jdbc.timestamp.type}"/>
+             <property name="dropTableOnExit" value="${infinispan-cl-cache.jdbc.table.drop}"/>
+             <property name="createTableOnStart" value="${infinispan-cl-cache.jdbc.table.create}"/>
+             <property name="connectionFactoryClass" value="${infinispan-cl-cache.jdbc.connectionFactory}"/>
+             <property name="datasourceJndiLocation" value="${infinispan-cl-cache.jdbc.datasource}"/>
+          </properties>
+          <async enabled="false"/>
+        </loader>
+      </loaders>
+   </default>
+
+</infinispan>

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-infinispan-lock.xml
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-infinispan-lock.xml	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-infinispan-lock.xml	2010-08-20 13:07:54 UTC (rev 2963)
@@ -26,6 +26,12 @@
 
     <global>
       <globalJmxStatistics jmxDomain="infinispan" enabled="true" allowDuplicateDomains="true"/>
+
+      <transport transportClass="org.infinispan.remoting.transport.jgroups.JGroupsTransport" clusterName="${infinispan-cluster-name}" distributedSyncTimeout="20000">
+        <properties>
+          <property name="configurationFile" value="${jgroups-configuration}"/>
+        </properties>
+      </transport>
     </global>
 
     <default>

Modified: jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-jcr-config.xml
===================================================================
--- jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-jcr-config.xml	2010-08-20 13:02:43 UTC (rev 2962)
+++ jcr/branches/1.14-ISPN/exo.jcr.component.core/src/test/resources/conf/standalone/test-jcr-config.xml	2010-08-20 13:07:54 UTC (rev 2963)
@@ -59,23 +59,14 @@
                      <property name="root-nodetype" value="nt:unstructured" />
                   </properties>
                </initializer>
-               <!-- initializer class="org.exoplatform.services.jcr.impl.core.RestoreWorkspaceInitializer">
-                  <properties>
-                     <property name="restore-path" value="./sv_export_root.xml" />
-                     <property name="restore-path" value="./src/test/resources/import-export/restore_db1_ws1.xml" />
-                  </properties>
-               </initializer -->
                <cache enabled="true" class="org.exoplatform.services.jcr.impl.dataflow.persistent.infinispan.ISPNCacheWorkspaceStorageCache">
                   <properties>
-                     <property name="infinispan-configuration" value="conf/standalone/test-infinispan-config.xml" />
+                     <property name="infinispan-configuration" value="conf/standalone/test-infinispan-config.xml" />
                   </properties>
                </cache>
                <query-handler class="org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex">
                   <properties>
                      <property name="index-dir" value="target/temp/index/db1/ws" />
-                     <!-- property name="changesfilter-class" value="org.exoplatform.services.jcr.impl.core.query.jbosscache.JbossCacheIndexChangesFilter" />
-                     <property name="jbosscache-configuration" value="conf/standalone/test-jbosscache-config.xml" /-->
-                     
                    </properties>
                </query-handler>
                <lock-manager class="org.exoplatform.services.jcr.impl.core.lock.infinispan.ISPNCacheableLockManagerImpl">



More information about the exo-jcr-commits mailing list