firestore 批量写入失败时会自动重新运行吗?

Moh*_*aaz 5 javascript firebase react-native google-cloud-firestore

在查看官方文档时,我发现 SDK 在失败时会自动重新运行事务有限次数,但是在批量写入的情况下,并没有明确提及。

文档确实提到批量写入就像事务一样是原子的,但这并不一定意味着它们也会在失败时重新运行。

Dou*_*son 8

如果失败,则不会重试批量写入。整个事情只是回滚了,你必须自己弄清楚是否要重试。

事务会重试,因为它们明确尝试根据现有文档的内容进行更改。由于这些文档可能会在客户端和服务器之间的往返过程中发生变化,因此如果发生这种情况,则需要重试来自动处理这种情况。批量写入不存在这个问题,因为它们是原子的,但本质上并不是真正的事务性。

  • 我不认为这是他们的工作方式。它应该就像最后一次写入获胜的文档写入一样。与批处理的区别在于所有写入将同时命中。如果您需要防止争用,请使用事务,因为如果事务检测到这种情况,它将重试。 (3认同)