【问题标题】:GCP Spanner Template ReadWrite Transaction Not WorkingGCP Spanner 模板读写事务不起作用
【发布时间】:2020-01-02 15:13:59
【问题描述】:

我想使用 Google spanner 模板在单个事务中执行工作单元,

spannerTemplate.performReadWriteTransaction(trasac -> {
  // Write in table 1
  // Write in table 2   
});

由于“不支持嵌套事务”而出现异常,请帮助我。

【问题讨论】:

    标签: java google-app-engine google-cloud-platform google-cloud-spanner


    【解决方案1】:

    也许这会有所帮助:我在调用 performReadWriteTransaction 方法的服务方法上有 @Transactional 注释,因此我删除了该注释。如here 所述,此类方法“不能在@Transactional 注释方法中使用,因为 Cloud Spanner 不支持事务中的事务。”

    【讨论】:

      【解决方案2】:

      根据here 描述的更改,默认情况下,Spanner 客户端库会阻止嵌套事务。

      要覆盖此行为,您可以改为调用 TransactionRunner.allowNestedTransaction()

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多