JPA执行查询报错java.lang.StackOverflowError: null问题排查与解决
开发和测试环境运行正常,报错方法为Jpa类库里JoinProcessor.doFindAllNodes方法,该方法用于拼接查询参数,如(?),由于是通过迭代进行拼接,通过jpa提供的findByIdIn方法,传入的id集合,所以当拼接参数过长时,会发生栈溢出异常。生产环境执行定时任务时报错 java.lang.StackOverflowError: null。可以通过分段查询的方式和更改jvm启动参数来控制拼接长度。
原创
2023-02-13 16:35:40 ·
855 阅读 ·
1 评论