If you are running complex reports, or reports that include a large dataset, you can configure your settings to prevent reports from timing out.
When you run a report, it generally completes within 60 seconds and by default, reports time out after 60 seconds. If you run a very complex report, it can time out before completing, or if the dataset being used for a report is very large, it might not fit into the allocated memory.
- Minimum memory
- Mondrian values, located in ba-server/pentaho-solutions/system/mondrian/mondrian.properties
- JVM values, located in ba-server/start-pentaho.sh
- Multiply the dimensions used in the report (see the example for more information).
- Use this number as your mondrian.result.limit value, as specified in ba-server/pentaho-solutions/system/mondrian/mondrian.properties.
- Pick the group and settings that define the closest mondrian.result.limit value.
- Small. These are the default settings.
- Memory: 8 GB RAM
- Mondrian values:
mondrian.result.limit=4000000 mondrian.rolap.cellBatchSize =4000000 mondrian.rolap.iterationLimit=4000000 mondrian.rolap.queryTimeout=60 mondrian.util.memoryMonitor.enable=true mondrian.util.memoryMonitor.percentage.threshold=90
- JVM
values:
-Xmx6G -Xms1024m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
- Medium
- Memory: 16 GB RAM
- Mondrian values:
mondrian.result.limit= 12000000 mondrian.rolap.cellBatchSize = 12000000 mondrian.rolap.iterationLimit= 12000000 mondrian.rolap.queryTimeout=180 mondrian.util.memoryMonitor.enable=true mondrian.util.memoryMonitor.percentage.threshold=90
- JVM
values:
-Xmx14G -Xms1024m -XX:MaxPermSize=512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
- Large
- Memory: 24 GB RAM
- Mondrian values:
mondrian.result.limit= 22000000 mondrian.rolap.cellBatchSize = 22000000 mondrian.rolap.iterationLimit= 22000000 mondrian.rolap.queryTimeout= 600 mondrian.util.memoryMonitor.enable=true mondrian.util.memoryMonitor.percentage.threshold=90
- JVM
values:
-Xmx22G -Xms1024m -XX:MaxPermSize=512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
- Extra Large
- Memory: 24 GB RAM
- Mondrian values:
mondrian.result.limit=0 mondrian.rolap.cellBatchSize=500000000 mondrian.rolap.iterationLimit=0 mondrian.rolap.queryTimeout=0 mondrian.util.memoryMonitor.enable=true mondrian.util.memoryMonitor.percentage.threshold=90
Setting a value of 0 in these properties removes limits and timeouts completely. Consider the impact that this might have on other concurrent processes running on the Analytics server. - JVM
values:
-Xmx22G -Xms1024m -XX:MaxPermSize=1024m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
These report groups are given for guidance only, and you can set memory, Mondrian, and JVM settings to whatever best suits your environment.
For more information about these settings, see Configuring the Mondrian Engine for Large Data Warehouses.
Example for calculating the report group
mondrian.result.limit = number_of_events x number_of_event_types x number_of_sitesIf there are 100 000 events, 8 event types and 30 sites:
mondrian.result.limit = 100000 x 8 x 30the guidance specifies that the mondrian.result.limit value should be 24 000 000.
The closest report group is Large, which specifies a mondrian.result.limit value of 22 000 000. The memory, Mondrian and JVM settings for this group should be acceptable for most reports generated in this environment.