首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hibernate二级缓存已清除

Hibernate二级缓存已清除
EN

Stack Overflow用户
提问于 2016-02-12 00:06:37
回答 1查看 167关注 0票数 1

我们在其中一个应用程序中使用Hibernate Search 3.4.2最终版和EHCACHE 2.3.1。Hibernate Search索引的数据是只读的。出于性能原因,我们将完整的数据加载到二级缓存中。

有一段时间,一些意外发生的事情清除了整个二级缓存。这肯定不是由我们的代码显式触发的东西。

有没有人有这样的想法?在回滚事务中使用Hibernate搜索是否有可能导致这种行为?

Edit1:

这是我们的EHCACHE配置:

代码语言:javascript
复制
<ehcache updateCheck="false">
    <diskStore path="java.io.tmpdir/ds42" />

    <defaultCache maxElementsInMemory="200000" eternal="true"
              statistics="true" overflowToDisk="true" diskPersistent="false"
              diskExpiryThreadIntervalSeconds="3600" memoryStoreEvictionPolicy="LRU"/>
</ehcache>
EN

回答 1

Stack Overflow用户

发布于 2016-02-20 02:51:06

这种“令人惊讶的”行为的答案可以在this article中找到。

添加

代码语言:javascript
复制
query.unwrap(org.hibernate.SQLQuery.class).addSynchronizedQuerySpace("");

以防止Hibernate清除二级缓存。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35344243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档