Skip to content

Commit

Permalink
Updates ModeShape -> 4.3.0, and ISPN -> 7.2.0
Browse files Browse the repository at this point in the history
However, there is a bug in ISPN that will be addressed in:
- ISPN 7.2.3, and
- Mode 4.4.0
See: https://issues.jboss.org/browse/MODE-2471

This branch should wait until ModeShape 4.4.0

Related to: https://jira.duraspace.org/browse/FCREPO-1581
  • Loading branch information
Andrew Woods committed Jun 23, 2015
1 parent f13ca21 commit 6333db3
Show file tree
Hide file tree
Showing 9 changed files with 252 additions and 455 deletions.
@@ -1,145 +1,108 @@
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:infinispan:config:6.0 http://www.infinispan.org/schemas/infinispan-config-6.0.xsd"
xmlns="urn:infinispan:config:6.0">

<global>

<globalJmxStatistics enabled="true" allowDuplicateDomains="true"/>

<!-- Defines the global settings shared by all caches -->
<transport clusterName="modeshape-cluster">
<properties>
<property name="configurationFile" value="${fcrepo.ispn.jgroups.configuration:config/jgroups-fcrepo-tcp.xml}"/>
</properties>
</transport>
</global>

<default>
<!--
Defines the default behavior for all caches, including those created dynamically (e.g., when a
repository uses a cache that doesn't exist in this configuration).
-->
<clustering mode="distribution">
<sync/>
<l1 enabled="false" lifespan="0" onRehash="false"/>
<hash numOwners="${fcrepo.ispn.numOwners:2}"/>
<stateTransfer chunkSize="100" fetchInMemoryState="true"/>
</clustering>
</default>

<namedCache name="FedoraRepository">
<!--
Our Infinispan cache needs to be transactional. However, we'll also configure it to
use pessimistic locking, which is required whenever applications will be concurrently
updating nodes within the same process. If you're not sure, use pessimistic locking.
-->
<clustering mode="replication">
<sync/>
<stateTransfer chunkSize="100" fetchInMemoryState="true"/>
</clustering>

<locking concurrencyLevel="1000" lockAcquisitionTimeout="15000" useLockStriping="false" />

<deadlockDetection enabled="true" spinDuration="1000"/>


<eviction maxEntries="500" strategy="LIRS" threadPolicy="DEFAULT"/>

<transaction
transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
transactionMode="TRANSACTIONAL" lockingMode="PESSIMISTIC"/>
<!--
Define the cache loaders (i.e., cache stores). Passivation is false because we want *all*
data to be persisted, not just what doesn't fit into memory. Shared is false because there
are no other caches sharing this file store. We set preload to false for lazy loading;
may be improved by preloading and configuring eviction.
We can have multiple cache loaders, which get chained. But we'll define just one.
-->
<persistence passivation="false">
<singleFile shared="false"
preload="false"
fetchPersistentState="true"
purgeOnStartup="false"
location="${fcrepo.ispn.repo.cache:target/FedoraRepository/storage}"/>
</persistence>
</namedCache>

<namedCache name="FedoraRepositoryMetaData">
<!--
Our Infinispan cache needs to be transactional. However, we'll also configure it to
use pessimistic locking, which is required whenever applications will be concurrently
updating nodes within the same process. If you're not sure, use pessimistic locking.
-->
<clustering mode="replication">
<sync/>
<stateTransfer chunkSize="100" fetchInMemoryState="true"/>
</clustering>

<locking concurrencyLevel="1000" lockAcquisitionTimeout="15000" useLockStriping="false" />

<deadlockDetection enabled="true" spinDuration="1000"/>


<eviction maxEntries="500" strategy="LIRS" threadPolicy="DEFAULT"/>

<transaction
transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
transactionMode="TRANSACTIONAL" lockingMode="PESSIMISTIC"/>
<!--
Define the cache loaders (i.e., cache stores). Passivation is false because we want *all*
data to be persisted, not just what doesn't fit into memory. Shared is false because there
are no other caches sharing this file store. We set preload to false for lazy loading;
may be improved by preloading and configuring eviction.
We can have multiple cache loaders, which get chained. But we'll define just one.
-->
<persistence passivation="false">
<singleFile shared="false"
preload="false"
fetchPersistentState="true"
purgeOnStartup="false"
location="${fcrepo.ispn.cache:target/FedoraRepositoryMetaData/storage}"/>
</persistence>
</namedCache>

<namedCache name="FedoraRepositoryBinaryData">
<!--
Our Infinispan cache needs to be transactional. However, we'll also configure it to
use pessimistic locking, which is required whenever applications will be concurrently
updating nodes within the same process. If you're not sure, use pessimistic locking.
-->
<clustering mode="distribution">
<sync replTimeout="${fcrepo.ispn.replication.timeout:10000}" />
<l1 enabled="false" lifespan="0" onRehash="false"/>
<hash numOwners="${fcrepo.ispn.numOwners:2}" numSegments="40"/>
<stateTransfer chunkSize="100" fetchInMemoryState="true"/>
</clustering>

<locking concurrencyLevel="1000" lockAcquisitionTimeout="15000" useLockStriping="false" />

<deadlockDetection enabled="true" spinDuration="1000"/>


<eviction maxEntries="100" strategy="LIRS" threadPolicy="DEFAULT"/>

<transaction
transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
transactionMode="TRANSACTIONAL" lockingMode="PESSIMISTIC"/>
<!--
Define the cache loaders (i.e., cache stores). Passivation is false because we want *all*
data to be persisted, not just what doesn't fit into memory. Shared is false because there
are no other caches sharing this file store. We set preload to false for lazy loading;
may be improved by preloading and configuring eviction.
We can have multiple cache loaders, which get chained. But we'll define just one.
-->
<persistence passivation="false">
<singleFile shared="false"
preload="false"
fetchPersistentState="true"
purgeOnStartup="false"
location="${fcrepo.ispn.binary.cache:target/FedoraRepositoryBinaryData/storage}"/>
</persistence>
</namedCache>
xsi:schemaLocation="urn:infinispan:config:7.2 http://www.infinispan.org/schemas/infinispan-config-7.2.xsd"
xmlns="urn:infinispan:config:7.2">

<jgroups>
<stack-file name="configurationFile" path="${fcrepo.ispn.jgroups.configuration:config/jgroups-fcrepo-tcp.xml}" />
</jgroups>

<cache-container default-cache="modeshape-cluster">
<transport stack="configurationFile"/>
<jmx duplicate-domains="true"/>

<distributed-cache name="modeshape-cluster"
mode="SYNC"
l1-lifespan="0"
owners="${fcrepo.ispn.numOwners:2}">
<state-transfer chunk-size="100" />
</distributed-cache>

<replicated-cache name="FedoraRepository"
mode="SYNC"
deadlock-detection-spin="1000">

<locking concurrency-level="1000"
acquire-timeout="15000"
striping="false"/>

<transaction transaction-manager-lookup="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
mode="NON_XA"
locking="PESSIMISTIC"/>

<eviction max-entries="500"
strategy="LIRS"
thread-policy="DEFAULT"/>

<persistence passivation="false">
<file-store shared="false"
preload="false"
fetch-state="true"
purge="false"
path="${fcrepo.ispn.repo.cache:target/FedoraRepository/storage}"/>
</persistence>

<state-transfer chunk-size="100"/>
</replicated-cache>

<replicated-cache name="FedoraRepositoryMetaData"
mode="SYNC"
deadlock-detection-spin="1000">

<locking concurrency-level="1000"
acquire-timeout="15000"
striping="false"/>

<transaction transaction-manager-lookup="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
mode="NON_XA"
locking="PESSIMISTIC"/>

<eviction max-entries="500"
strategy="LIRS"
thread-policy="DEFAULT"/>

<persistence passivation="false">
<file-store shared="false"
preload="false"
fetch-state="true"
purge="false"
path="${fcrepo.ispn.repo.cache:target/FedoraRepositoryMetaData/storage}"/>
</persistence>

<state-transfer chunk-size="100"/>
</replicated-cache>

<distributed-cache name="FedoraRepositoryBinaryData"
owners="${fcrepo.ispn.numOwners:2}"
mode="SYNC"
deadlock-detection-spin="1000"
remote-timeout="${fcrepo.ispn.replication.timeout:10000}"
l1-lifespan="0"
segments="40">

<locking concurrency-level="1000"
acquire-timeout="15000"
striping="false"/>


<transaction transaction-manager-lookup="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
mode="NON_XA"
locking="PESSIMISTIC"/>

<eviction max-entries="100"
strategy="LIRS"
thread-policy="DEFAULT"/>

<persistence passivation="false">
<file-store shared="false"
preload="false"
fetch-state="true"
purge="false"
path="${fcrepo.ispn.repo.cache:target/FedoraRepositoryBinaryData/storage}"/>
</persistence>

<state-transfer chunk-size="100" await-initial-transfer="true"/>
</distributed-cache>

</cache-container>

</infinispan>
@@ -1,39 +1,36 @@
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:infinispan:config:6.0 http://www.infinispan.org/schemas/infinispan-config-6.0.xsd"
xmlns="urn:infinispan:config:6.0">
xsi:schemaLocation="urn:infinispan:config:7.2 http://www.infinispan.org/schemas/infinispan-config-7.2.xsd"
xmlns="urn:infinispan:config:7.2">

<global>
<globalJmxStatistics enabled="true" allowDuplicateDomains="true"/>
</global>
<cache-container default-cache="FedoraRepository">

<default>
</default>
<jmx duplicate-domains="true"/>

<local-cache name="FedoraRepository" statistics="true">

<namedCache name="FedoraRepository">
<transaction transaction-manager-lookup="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
mode="NON_XA"
locking="PESSIMISTIC"/>

<eviction maxEntries="500" strategy="LIRS" threadPolicy="DEFAULT"/>
<eviction max-entries="500" strategy="LIRS" thread-policy="DEFAULT"/>

<transaction
transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
transactionMode="TRANSACTIONAL" lockingMode="PESSIMISTIC"/>
<!--
Define the cache loaders (i.e., cache stores). Passivation is false because we want *all*
data to be persisted, not just what doesn't fit into memory. Shared is false because there
are no other caches sharing this file store. We set preload to false for lazy loading;
may be improved by preloading and configuring eviction.
<!--
Define the cache loaders (i.e., cache stores). Passivation is false because we want *all*
data to be persisted, not just what doesn't fit into memory. Shared is false because there
are no other caches sharing this file store. We set preload to false for lazy loading;
may be improved by preloading and configuring eviction.
We can have multiple cache loaders, which get chained. But we'll define just one.
-->
We can have multiple cache loaders, which get chained. But we'll define just one.
-->
<persistence passivation="false">
<file-store shared="false"
preload="false"
fetch-state="false"
purge="false"
path="${fcrepo.ispn.repo.cache:target/FedoraRepository/storage}"/>

<persistence passivation="false">
<singleFile shared="false"
preload="false"
fetchPersistentState="true"
purgeOnStartup="false"
location="${fcrepo.ispn.repo.cache:target/FedoraRepository/storage}" />
</persistence>

</namedCache>
</persistence>
</local-cache>
</cache-container>

</infinispan>
@@ -1,34 +1,28 @@
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:infinispan:config:6.0"
xmlns:store="urn:infinispan:config:store:leveldb:6.0"
xsi:schemaLocation="urn:infinispan:config:6.0 http://www.infinispan.org/schemas/infinispan-config-6.0.xsd urn:infinispan:config:store:leveldb:6.0 http://infinispan.org/schemas/infinispan-cachestore-leveldb-config-6.0.xsd">
<global>
<globalJmxStatistics enabled="false" allowDuplicateDomains="true"/>
</global>
xmlns="urn:infinispan:config:7.2"
xmlns:store="urn:infinispan:config:store:leveldb:7.2"
xsi:schemaLocation="urn:infinispan:config:7.2 http://www.infinispan.org/schemas/infinispan-config-7.2.xsd urn:infinispan:config:store:leveldb:7.2 http://infinispan.org/schemas/infinispan-cachestore-leveldb-config-7.2.xsd">

<default>
<expiration wakeUpInterval="-1" />
<unsafe unreliableReturnValues="true" />
</default>
<cache-container default-cache="FedoraRepository" statistics="false">
<jmx duplicate-domains="true"/>

<namedCache name="FedoraRepository">
<local-cache name="FedoraRepository" unreliable-return-values="true">
<transaction transaction-manager-lookup="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
mode="NON_XA"
locking="PESSIMISTIC"/>

<eviction maxEntries="500" strategy="LIRS" threadPolicy="PIGGYBACK"/>
<eviction max-entries="500" strategy="LIRS" thread-policy="PIGGYBACK"/>

<transaction
transactionManagerLookupClass="org.infinispan.transaction.lookup.GenericTransactionManagerLookup"
transactionMode="TRANSACTIONAL"
lockingMode="PESSIMISTIC"/>
<expiration interval="-1"/>

<!-- Define the cache loaders (i.e., cache stores). Passivation is false
because we want *all* data to be persisted, not just what doesn't fit
into memory. -->
<persistence passivation="false">
<store:leveldbStore
location="${fcrepo.ispn.repo.cache:target}/data"
expiredLocation="${fcrepo.ispn.repo.cache:target}/expired"/>
</persistence>
<persistence passivation="false">
<store:leveldb-store path="${fcrepo.ispn.repo.cache:target}/data">
<store:expiration path="${fcrepo.ispn.repo.cache:target}/expired"/>
<store:implementation type="JAVA"/>
</store:leveldb-store>
</persistence>

</namedCache>
</local-cache>
</cache-container>

</infinispan>

0 comments on commit 6333db3

Please sign in to comment.