Class LockingConfiguration

  • All Implemented Interfaces:

    public class LockingConfiguration
    extends Object
    implements org.infinispan.commons.configuration.attributes.Matchable<LockingConfiguration>
    Defines the local, in-VM locking and concurrency characteristics of the cache.
    • Field Detail


        public static final org.infinispan.commons.configuration.attributes.AttributeDefinition<Integer> CONCURRENCY_LEVEL

        public static final org.infinispan.commons.configuration.attributes.AttributeDefinition<IsolationLevel> ISOLATION_LEVEL

        public static final org.infinispan.commons.configuration.attributes.AttributeDefinition<Long> LOCK_ACQUISITION_TIMEOUT

        public static final org.infinispan.commons.configuration.attributes.AttributeDefinition<Boolean> USE_LOCK_STRIPING

        public static final org.infinispan.commons.configuration.attributes.AttributeDefinition<Boolean> WRITE_SKEW_CHECK
    • Method Detail

      • concurrencyLevel

        public int concurrencyLevel()
        Concurrency level for lock containers. Adjust this value according to the number of concurrent threads interacting with Infinispan. Similar to the concurrencyLevel tuning parameter seen in the JDK's ConcurrentHashMap.
      • supportsConcurrentUpdates

        public boolean supportsConcurrentUpdates()
        this option is always true and cannot be modified since version 5.3
        This option applies to non-transactional caches only (both clustered and local): if set to true(default value) the cache keeps data consistent in the case of concurrent updates. For clustered caches this comes at the cost of an additional RPC, so if you don't expect your application to write data concurrently, disabling this flag increases performance.
      • lockAcquisitionTimeout

        public long lockAcquisitionTimeout()
        Maximum time to attempt a particular lock acquisition
      • useLockStriping

        public boolean useLockStriping()
        If true, a pool of shared locks is maintained for all entries that need to be locked. Otherwise, a lock is created per entry in the cache. Lock striping helps control memory footprint but may reduce concurrency in the system.
      • writeSkewCheck

        public boolean writeSkewCheck()
        since 9.0.
        This setting is only applicable in the case of REPEATABLE_READ. When write skew check is set to false, if the writer at commit time discovers that the working entry and the underlying entry have different versions, the working entry will overwrite the underlying entry. If true, such version conflict - known as a write-skew - will throw an Exception.
      • attributes

        public org.infinispan.commons.configuration.attributes.AttributeSet attributes()
      • hashCode

        public int hashCode()
        hashCode in class Object