2011-11-15 28 views
0

我使用的JPivot附带Pentaho 3.8.0.stable.45256。 每当我尝试在JPivot报告中钻取时,它都会给我Resultset Overflow Occurred。当我第二次点击+标志,并钻出它的作品。我为此搜索并发现它是由于mondrian.properties中的设置而引起的。以下是我在Pentaho的论坛做了一个按照指令设置:Pentaho JPivot给出了Resultset溢出发生

mondrian.result.limit=0 
mondrian.olap.case.sensitive=false 
mondrian.native.crossjoin.enable=false 
mondrian.native.ExpandNonNative=false 

上述所有设置都放在

pentaho-solutions/system/mondrian/mondrian.properties

并没有重新启动Pentaho的。但错误仍然存​​在。它看起来像这些chages没有生效,或者由JPivot生成的Query有一些问题。

我启用了log4j来验证查询并在发生错误时查看日志。在日志文件中没有记录错误,甚至当我向下钻取时也不会生成查询。它只显示MDX查询。其他报告运行良好,我看到为他们记录的SQL查询。如果这个错误是由于sql查询造成的,那么它甚至不应该第二次运行。但它确实如此。

可能是什么问题?可能是因为Java堆内存溢出?

  1. JPivot设置某处我失踪?
  2. MySQL查询没有正确生成?如果是,那我该如何查找查询,因为它不在日志中。
  3. Java堆内存?

FYI:

  1. 内存:16GB
  2. 有超过45万条记录,其中聚集表。
  3. 的CATALINA_OPTS设置为:

    -d64 -server -Xms2048m -Xmx6144m -XX:PermSize=256m -XX:MaxPermSize=1024m -XX:+UseLargePages -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dlog4j.configuration=file:log4j.properties

回答

0

得到了解决我的问题。

我增加了Pentaho中的会话和查询超时以及增加了我的tomcat和Apache(作为代理服务器)的超时时间,这有所帮助。它现在正在工作,我也已经使上述参数之一成真如下所示:

mondrian.native.crossjoin.enable=true