2013-04-17 57 views
0

我不是数据库专家,所以也许有人可以帮我解决以下问题。 我在播放时使用JPA icm MySQL!框架。JPA和与MySQL并发交易

正如我以前在数据收集例程中遇到数据库锁的问题一样,我使此例程只读。现在,当我需要从这个例程中进行更改时,我会同时执行此操作。 到目前为止工作得很好,但现在我遇到了问题。当新用户连接记录被创建并且ID传回时。但我需要获取模型,而不仅仅是id。

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

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

回答

1

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

%prod-test.db.isolation=READ_COMMITTED