firebase - firestore 安全规则和写入是原子的吗?

标签 firebase google-cloud-firestore

假设多个用户正在对同一文档执行写入操作。

假设我的 Firestore 安全规则将仅在 resource.data.status == true 时允许写入

我的问题是,每个用户都会尝试使用一大堆其他字段写入文档,并将状态设置为 false,从而阻止其他写入。

规则评估和写入过程是否原子,以便不存在竞争条件,即多个用户写入安全规则时会看到resource.data.status == true

最佳答案

每个 set()update()delete()runTransaction() 都会被执行作为原子操作。它要么完全成功,要么完全失败,并且任何客户端都不会看到此类操作的部分结果。

如果您希望多个此类操作同时成功或失败,可以将它们组合在 batched write 中。 。批处理中的所有操作要么成功,要么全部失败。

关于firebase - firestore 安全规则和写入是原子的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47394696/

相关文章:

java - 如何从 Button 的 onClick 监听器中删除 Firebase 数据库

firebase - Firestore - 单个测试用户导致 50K+ 读取

angular - 'array-contains' 查询不适用于引用的 Firestore

android - 使用 firebase unity sdk firestore 包时 Android 设备上出现错误

android - Firestore 更新失败,出现 IllegalArgumentException : Invalid data. 不支持的类型

java - 无法更新 Firebase Java 中的完整子对象

javascript - Firebase JS 函数似乎向变量添加前导空格

node.js - 在 Cloud Functions for Firebase 中使用 Handlebars

javascript - 在 Firebase 中管理聊天 channel 的最佳方式

ios - 为什么我的应用程序在我将数据上传到 Firebase 时卡住?