0

我在这里查看示例代码:https://docs.aws.amazon.com/qldb/latest/developerguide/getting-started.python.step-5.html,并注意到这三个函数get_document_id_by_gov_id,is_secondary_owner_for_vehicleadd_secondary_owner_for_vin分别执行在三个driver.execute_lambda电话中。因此,如果有两个并发请求试图添加第二个所有者,这会触发其中一个请求的序列化冲突吗?

我问的原因是我最初认为我们必须在同一个execute_lambda调用中运行所有三个函数才能发生序列化冲突,因为每个execute_lambda调用都使用一个会话,而会话又使用一个事务。如果它们在三个execute_lambda调用中运行,那么它们将分散到三个事务中,并且 QLDB 将无法检测到冲突。但似乎我的假设不正确,批处理函数调用的唯一好处就是更好的性能?

4

1 回答 1

0

从 QLDB 专家那里得到了答案,所以要回答我自己的问题:操作应该被包装在一个事务中,所以我最初的假设实际上是正确的。他们将更新代码示例以反映这一点。

于 2021-11-29T18:46:04.700 回答