15.3. Configure Lock Striping (Library Mode)
Lock striping is disabled by default in Red Hat JBoss Data Grid. Configure lock striping in JBoss Data Grid's Library mode using the
useLockStriping
parameter as demonstrated in the following procedure.
Procedure 15.1. Configure Lock Striping (Library Mode)
<infinispan> <!-- Additional configuration elements here --> <default> <locking concurrencyLevel="${VALUE}" isolationLevel="${LEVEL}" lockAcquisitionTimeout="${TIME}" useLockStriping="${TRUE/FALSE}" writeSkewCheck="${TRUE/FALSE}" /> <!-- Additional configuration elements here --> </default> </infinispan>
- The
concurrencyLevel
is used to specify the size of the shared lock collection use when lock striping is enabled. - The
isolationLevel
parameter specifies the cache's isolation level. Valid isolation levels areREAD_COMMITTED
andREPEATABLE_READ
. - The
lockAcquisitionTimeout
parameter specifies time (in milliseconds) after which a lock acquisition attempt times out. - The
useLockStriping
parameter specifies whether a pool of shared locks are maintained for all entries that require locks. If set toFALSE
, locks are created for each entry in the cache. If set toTRUE
, lock striping is enabled and shared locks are used as required from the pool. - The
writeSkewCheck
check determines if a modification to the entry from a different transaction should roll back the transaction. Write skew set to true requiresisolation_level
set toREPEATABLE_READ
. The default value forwriteSkewCheck
andisolation_level
areFALSE
andREAD_COMMITTED
respectively. ThewriteSkewCheck
parameter can be only used withOPTIMISTIC
transactions and it requires entry versioning to be enabled, withSIMPLE
versioning scheme.