Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
john_duffy
Partner - Creator III
Partner - Creator III

Allocated Memory Exceeded - Charts periodically won't open

Hello.

We are using QV 8.5 SR4. Our users access the QV applications via Analyzer client installs.

Periodically, a chart will not open on the QV server or in Developer on my desktop do to allocated memory exceeded. These are either straight tables or pivot charts that have been working fine. In the last case, the chart (which uses a date island) would not open if 2010 was selected, but would open for all other years.

Our only solution so far is to bounce the QV server or logoff the desktop. Once this is done, the charts work fine using the same data (ie. the application is not refreshed).

All charts with this issue have at least one calculated dimension and all use the date island approach in the expressions.

I have read in the bug fix document for QV9 that an issue with calculated dimensions in pivot tables resulting in 'Allocated Memory Exceeded' has been resolved. Not sure if this also applies to straight tables.

Has anyone else experienced these issues in QV8.5? If so, did upgrading to QV9 or QV10 seem to resolve them?

Any feedback on this issue would be greatly appreciated.

Thanks,

John.

6 Replies
Oleg_Troyansky
Partner Ambassador/MVP
Partner Ambassador/MVP

John,

both calculated dimensions and Date Islands are very "heavy" techniques that consume a lot of resources. In addition, Straight Tables and Pivot Tables can get fairly large in size, and that adds to the overall performance issue. I'd suggest, disregarding of the version, to try and simplify the solution:

1. Most likely, there should be a way to replace a Calculated Dimension with a simple dimensions - through adding calculated fields into the database, or through moving some of the calculations into Expressions. Set Analysis is already available on 8.5, so there must be a better way...

2. If ever possible, replace the Date Island with a "conventional" calendar, properly linked to your data. Date Island alone can cause a huge performance problem. For example, every time I teach a "Developer II" class, when we get to the chapter about Date Islands, I demonstrate to the students how a simple chart that uses a date island, begins "hour-glassing" for a few seconds, even on a tiny demo database used for the class! I know that sometimes it's difficult to manage without a Date Island, but if you have any way of doing it, - please consider getting rid of it.

3. Look for other performance problems, like IF functions, complex Set Analysis conditions with many values listed as possible choices, etc...

best regards,

suniljain
Master
Master

Dear John,

Try to implement complex expression at script level it will reduce complexity at design level.

Regards;

Sunil

john_duffy
Partner - Creator III
Partner - Creator III
Author

Hi Oleg.

Thanks for the reply and the advice. I'm at a new shop and I am gradually going through the QV applications to try to improve performance. I will definitely use your advice as I did not use the date island approach or very many calculated dimensions at my previous shop.

I'm still a bit confused as to why the charts work fine for a while and then 'randomly' receive the allocated memory exceeded message. Also, once the issue occurs, why does the chart 'hold' this issue until the server is bounced or I logoff my desktop.

Again, any advice would be appreciated.

Thanks,

John.

Not applicable

I would avoid calculated dimensions at all costs... I've had some that just destroyed my whole app to the point where clicking on anything took minutes to load even if the chart was minimized... I use the aggr function to fix this but let's be honest.... aggr doesn't exactly calculate warp speed either.

pat_agen
Specialist
Specialist

Hi John,

we have had similar experiences with qv8.5. As we are still on this version I obviously can't tell you if it is resolved with the newer versions.

The one common denominator is a calculated dimension. As you describe if it fails once it will continue failing until the instance the document is being served on (either desktop or a qv server) is restarted and the report is succesfully opened. As you describe, the exact same chart will then work correctly without any changes being done. So therefore the failure is due to the peak of memory needed when the chart is calculated the first time and the state of the server (or desktop) memory wise at the time of that peak.

I think, but cannot be sure, that this is linked to qlikview caching the result of any query. In this case the query doesn't work and I suspect that qv caches this and subsequently anyone looking at the charts gets the "out of memory" message until the cache is cleared.

Not much help for you really but at least you know you are not alone!

Oleg_Troyansky
Partner Ambassador/MVP
Partner Ambassador/MVP


John Duffy wrote:I'm still a bit confused as to why the charts work fine for a while and then 'randomly' receive the allocated memory exceeded message. Also, once the issue occurs, why does the chart 'hold' this issue until the server is bounced or I logoff my desktop.


John, I don't have a precise answer on this question - it could be a glitch, or it could be simply a result of pushing QlikView (or pushing your computing resources) a bit too far, after which "strange things begin to happen". Being practical, I simply try to avoid pushing the limits too much, because that's where many things become unpredictable...