ConcurrentReadThenWriteWithoutExclusiveLock_ThrowsLockException(string)
virtual
public virtual Task ConcurrentReadThenWriteWithoutExclusiveLock_ThrowsLockException(string grainStates) Verifies that concurrent Read-then-Write transactions on the same grain cause OrleansTransactionLockUpgradeException or OrleansBrokenTransactionLockException when no exclusive lock is used. Scenario (LockUpgradeException): TX1: PerformRead → shared lock acquired TX2: PerformRead → shared lock acquired (same group) TX1: PerformUpdate → lock upgrade fails Scenario (BrokenTransactionLockException): TX1: PerformRead → shared lock acquired TX2: PerformRead → shared lock acquired (same group) TX2: PerformUpdate → upgraded, TX1 rolled back TX1: PerformUpdate → broken lock detected
Parameters
grainStatesstring
