Spring Data JPA delete导致WebSphere

时间:2017-09-21 22:36:54

标签: spring hibernate jpa spring-data websphere-8

Spring Data JPA删除导致在WebSphere 8.5.5上部署OutOfMemoryError之后。但是在使用Spring Boot连接到同一数据库的Tomcat上运行正常。它尝试删除的实体有许多对子实体的双向ManyToOne引用。 Oracle 11g数据库上的数据集非常小。对于没有子节点的其他实体,删除运行正常。我尝试过使用WebSphere和Apache OpenJPA持久性提供程序。我的系统输出显示它停留在长选择语句并消耗所有可用内存。 select语句由JPA Hibernate生成。在使用Spring Boot配置的Tomcat上,相同的select调用正常运行。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您有以下选择:

  • 配置Websphere,为您的应用程序提供更多可用内存。

  • 调整您的映射关系(即删除它们或删除级联),以便您可以批量删除。

  • 使用SQL执行删除。

基本问题是JPA承诺在删除实体时创建事件,因此它必须在删除实体之前加载实体。