8.4. 写入 Skews
当两个事务独立,同时读取和写入同一密钥时,会发生写入 skews。写入 skew 的结果是,两个事务都成功向同一键提交更新,但具有不同值。
Data Grid 自动执行写入框架检查,以确保特定事务中的 REPEATABLE_READ 隔离级别的数据一致性。这允许数据仓库检测并回滚其中一个事务。
在 LOCAL 模式下运行时,写入 skew 检查依赖于 Java 对象引用来比较区别,它提供了可靠的技术来检查写入 skews。
8.4.1. 在 pessimitic 事务中的密钥强制写入锁定 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
为避免使用 pessimistic 事务写入 skews,使用 Flag.FORCE_WRITE_LOCK 在启动时锁定密钥。
注意
-
在非事务缓存中,
Flag.FORCE_WRITE_LOCK无法正常工作。get ()调用读取键值,但不远程获取锁定。 -
您应该将
Flag.FORCE_WRITE_LOCK与后续在同一事务中更新实体的事务一起使用。
比较 Flag.FORCE_WRITE_LOCK 示例的代码片段: