我有一个 Spring Boot应用程序2.2.5 RELEASE
(我们在没有明确声明的情况下使用MongoOperations
MongoTransactionManager
在此设置中,对于 MongoDB 4.X 副本集,如果客户端未启动显式事务,我们将获得“自动提交”写入。看这里
但是,我们想了解,当我们在 DocumentDB Cluster(具有副本集)上执行 WRITE 操作时,使用相同的 Mongo Java 驱动程序版本3.11.2
,兼容MongoDB Server 版本,而不从客户端(即 spring boot 应用程序)启动显式事务4.2.X
),何时或如何准确地进行数据库提交?我们已经看到插入后间隔很近的更新(在 <50 毫秒内)失败,说明更新无法找到插入的记录。
似乎与 MongoDB 相同的行为,即“自动提交”可能不适用于“DocumentDB”。在那种情况下,如何提交 WRITE?
有人可以帮助我们理解潜在的行为吗?我们在AWS DocumentDB 文档中找不到任何有关WRITE Ops wo Transactions 的详细说明。
此外,DocumentDB 是否在集合上使用单线程 WRITE 方法,或者它是如何使用的?