我正在使用 JPA 和 Hibernate,在 JBOSS 5.1 中运行。
我遇到了一个奇怪的行为,因为当我通过事务中的 EntityManager 写入一些数据时,我提交了这个事务,并且在我开始一个新事务来读取这个写入的数据之后,新数据不会由查询返回(但是旧的),但我看到数据库中提交的新数据(我通过另一个进程看到它)。
我可以根据需要多次重复此读取(在同一事务中的调试模式下),不会返回新数据。
然后,如果我执行 entityManager.clear(),下一次读取(在同一事务中)最终返回数据。
有趣的部分从这里开始:安装在另一台机器上的相同 JBoss(物理副本、库、配置、所有内容),指向相同的物理数据库工作正常(它无需清除 EM 即可获取数据)。所以它必须与环境有关......
有任何想法吗?