Hibernate 使用infinispan休眠2LC和查询缓存

Hibernate 使用infinispan休眠2LC和查询缓存,hibernate,infinispan,Hibernate,Infinispan,我正在使用hibernate4,并使用infinispan4配置了2LC和查询缓存。我可以在JVisualVM Mbean选项卡中看到,我的应用程序使用2LC,因为我可以看到各种配置缓存的命中数增加,但我无法看到查询缓存端的任何活动,它没有命中,我只能看到未命中数增加。我尝试用条件查询替换几个HQL查询,使它们符合查询缓存的条件,但似乎不起作用。我已将hibernate.cache.use_query_cache属性配置为true,并更新了缓存查询的代码。这不起作用的原因可能是什么?进一步添加,

我正在使用hibernate4,并使用infinispan4配置了2LC和查询缓存。我可以在JVisualVM Mbean选项卡中看到,我的应用程序使用2LC,因为我可以看到各种配置缓存的命中数增加,但我无法看到查询缓存端的任何活动,它没有命中,我只能看到未命中数增加。我尝试用条件查询替换几个HQL查询,使它们符合查询缓存的条件,但似乎不起作用。我已将hibernate.cache.use_query_cache属性配置为true,并更新了缓存查询的代码。这不起作用的原因可能是什么?

进一步添加,我已启用H2LC日志,并将它们放在单独的日志文件中。查看日志,它显示“在区域启动查询缓存:org.hibernate.cache.internal.StandardQueryCache”,但在infinispan缓存节点下的JVisualVm MBeans选项卡中,我无法看到任何具有上述指定名称的缓存。太累了!我建议为
org.hibernate.cache.infinispan
org.infinispan
包启用跟踪日志记录,并查看查询缓存的情况。记住在查询时也要调用
setCacheable
。谢谢Galder,我也这么做了,hibernate似乎要查询缓存以进行查找,但从缓存返回时没有结果。我在任何适用的地方调用了setCacheable()。奇怪!哈迪克,再挖一点:)。为什么缓存中没有结果?这些结果是否已存储?他们是怎么搬走的?某种形式的过期?…有关于这个@hardik的消息吗?