spring data jpa bug分析—初始化时EntityManager不关闭原因

环境

spring 3.2.3 RELEASE

spring data jpa 1.3.1.RELEASE

hibernate core  4.2.2.Final

 

问题

周末没事想把hibernate二级缓存监控集成到应用中,之前hibernate3.6的时候集成过(之前没用spring data jpa,所以怀疑是它的问题),不过为了和现有风格的统一,重新写了一遍,在写的过程中遇到一个问题:

hibernate Session打开的次数 比 Session关闭的次数 多很多次。而且这个比例是固定的,打开以前的hibernate3.6的发现没什么问题。打开和关闭次数是相等的才对。

 

经过源码跟踪,发现是spring data jpa,打开hibernate会话后没有关闭造成的。原因是spring data jpa在生成接口的QL时,需要去验证QL是否正确,此时它创建了Query但没有执行也没有释放造成的。

这是一个bug。已提交:https://jira.springsource.org/browse/DATAJPA-350

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值