Firestore in Datastore模式:事务更新后非事务查询是否强一致?
Firestore in Datastore模式下事务更新后的查询一致性问题
事务成功完成提交后,其他客户端以非事务方式发起的默认查询会强一致地立即获取到更新后的实体,不会返回事务执行前的旧版本数据。
官方文档提到的“所有Datastore查询默认强一致,除非显式请求最终一致性”这条规则完全适用于这个场景:
- 事务的ACID特性确保提交后的数据状态是全局生效的;
- 默认的强一致查询会直接读取最新的已提交数据,不存在同步延迟导致的旧数据返回情况;
- 只有当你主动为查询配置最终一致性(比如通过设置
read_options的read_consistency=EVENTUAL)时,才有可能获取到旧版本数据,但这属于主动指定的特殊场景,默认不会触发。
内容的提问来源于stack exchange,提问作者Micro
相关产品推荐
相关产品推荐

