Service Instance Memory Limits
Hello,
I did not find anything in the community on service instance memory limits and hence posting this as an FYI in case others run into it.
Had an issue where the users could not download a Pyramid discover to Excel (about 200K rows) in production.
The discover itself renders in a couple of seconds and when printing to Excel, would run for about 30 seconds and then create an empty excel file (any output format) with a message "User Query cannot be completed". Also on the Spool Jobs window, Successful Queries will show as 0.
Same discover in UAT works fine (same volume of data)
After adjusting cell limits, etc, the issue still persisted
I started looking through the logs and buried in there was a heap size error which led to me to think there was some memory parameter that was causing this issue
This led to me the looking at Service Instance memory limits and noticed that UAT and Dev had 5 times what prod was set to, I am assuming they came with the default install and not sure why it was set to such a low number, as I did not even know about these limits until this research.
Runtime, Task and Web memory limits were set really low in Prod compared to UAT
I edited these to take the default recommendation which was 5 times (3832 vs 15772 for Runtime, 1670 vs 7886 for Task and 500 vs 1893 for Web). Keep in mind this will restart the service for each update and needs to be done off hours (in the docs)
That fixed the issue with the rendering of the report to Excel
Thanks
Mad
4 replies
-
Hi , below are references for more details on Service Memory instances. It will give you more insight as when to change your upper memory limit and what memory value best fits your specific deployment. For more background context on server instances, please check out these links:
Service Memory Limits
Server Instances -
Hi ,
Note also that there are limits to what can be exported to Excel based on the capacity of the client machine connected to Pyramid.
Exporting to Excel
When exporting to Excel, each visual is exported as a tabular grid to a separate Excel sheet, unless the exported visual is a matrix grid. In this case, it is exported as the matrix grid.
The sheet tab is named according to the report title, which is also added at the top of the Excel sheet.
For performance reasons, an evaluation based on the machine's memory takes place when exporting to Excel, limiting the number of cells that can be exported:
- On a 32 GB machine and above, the limit is 9M cells.
- On a 24 GB machine, the limit is 7M cells.
- On a 16 GB machine, the limit is 5M cells.
- On an 8 GB machine or less, the limit is 3M cells.
If the limit is reached, all cells will be exported to CSV, rather than Excel. Note that CSV is a flat / raw grid format.
See this Help page for more details about other aspects of exporting to Excel.
Hope that helps.
Ian
-
Thanks Ian
Working with support, we looked at the cell limits and when that did not help fix the issue, I stumbled upon the instance limits based on what I saw in the pyramid logs and tweaking that fixed the issue