实体未在数据库中找到但存在于持久性上下文中

Entity Not Found In DB but present in Persistence Context

我正在使用事务 1 创建资源订阅,在此事务 1 returns 之前,它将刚刚创建的订阅资源获取的请求、响应和 jpa 查询添加到一个队列中,该队列由执行程序处理服务线程。

这个executorService启动了单独的事务2,a使用jpa查询来读取订阅资源的特定属性,但是它得到了空值,但是之前的事务1找到了它(因为它可能是它自己创建的)。事务 2 需要读取当前值但不创建它。

我正在使用 Ecliplink 2.6、JDK 1.8 和 Wildfly 10.Final。

我调查了 eclipselink 是否已将它持久化到数据库或保存在 persistenceContext 中,因为事务仍未完成,新事务正在尝试读取它。

这是正常的交易行为。

只要不提交 T1,T2 就看不到 T1 的数据。