Chapter 10. Locking
Red Hat JBoss Data Grid provides locking mechanisms to prevent dirty reads (where a transaction reads an outdated value before another transaction has applied changes to it) and non-repeatable reads.
10.1. Configure Locking (Remote Client-Server Mode)
In Remote Client-Server mode, locking is configured using the
locking
element within the cache tags (for example, invalidation-cache
, distributed-cache
, replicated-cache
or local-cache
).
The following is a sample procedure of a basic locking configuration for a default cache in Red Hat JBoss Data Grid's Remote Client-Server mode.
Procedure 10.1. Configure Locking (Remote Client-Server Mode)
Define the Isolation Level
Theisolation
parameter defines the isolation level used for the local cache. Valid values for this parameter areREPEATABLE_READ
andREAD_COMMITTED
.<distributed-cache> <locking isolation="REPEATABLE_READ" />
Set the
acquire-timeout
ParameterTheacquire-timeout
parameter specifies the number of milliseconds after which lock acquisition will time out.<distributed-cache> <locking isolation="REPEATABLE_READ" acquire-timeout="30000" />
Set Number of Lock Stripes
Theconcurrency-level
parameter defines the number of lock stripes used by the LockManager.<distributed-cache> <locking isolation="REPEATABLE_READ" acquire-timeout="30000" concurrency-level="1000" />
Set Lock Striping
Thestriping
parameter specifies whether lock striping will be used for the local cache.<distributed-cache> <locking isolation="REPEATABLE_READ" acquire-timeout="30000" concurrency-level="1000" striping="false" /> ... </distributed-cache>