【问题标题】:JPA and concurrent transactions with MySQLJPA 和 MySQL 的并发事务
【发布时间】:2013-04-17 13:07:19
【问题描述】:

我不是数据库专家,所以也许有人可以帮助我解决以下问题。 我在 Play 上使用 JPA icm MySQL!框架。

由于我过去在数据收集例程上遇到数据库锁问题,因此我将此例程设为只读。现在,当我需要对此例程进行更改时,我会同时进行。 到目前为止工作正常,但现在我遇到了问题。当新用户连接时,会创建一条记录并传回 ID。但我需要获取模型,而不仅仅是 id。

当我在我的测试环境中搜索“id”时,这很好,我只是搜索它(mem db),但使用 MYSQL,EM 什么都没有返回。在我看来,对于 JPA-MySQL,在事务开始之前所做的任何更改(即使只是面包)都不会包含在未来的搜索中。

这是正确的,有没有办法解决这个问题?我可以重写该过程以使其再次可读,并查看是否可以对其进行更多优化,以免导致其他线程(或服务器)在获取数据库锁时遇到问题。从长远来看可能是最好的,但我目前正在寻找更快的解决方案。

【问题讨论】:

    标签: java mysql jpa playframework


    【解决方案1】:

    事务隔离级别设置得太高。改变它解决了这个问题。 在剧中!框架(1.2.5)可以这样做:

    %prod-test.db.isolation=READ_COMMITTED
    

    【讨论】:

      猜你喜欢
      • 2011-07-05
      • 1970-01-01
      • 1970-01-01
      • 2013-04-09
      • 2013-09-10
      • 2011-10-18
      • 2011-02-24
      • 1970-01-01
      • 2011-05-24
      相关资源
      最近更新 更多