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: 
Not applicable

Server Virtual Memory Leaks until system become nonresponsive

We are running Qlikview Server 9.0 32 bit in the Community Server model.

Installed on a VMWare ESX server on a Window 2003 VM with (1 processor and 4 GB RAM allocated)

The server is serving up 1 qvw file about 4,500 KB. On average 3-6 users are accesing the document using the IE Plugin ver 9.0. The server is configured to maintain a single instance of the file in memory and we reload the data every 15 minutes. Reload takes 1 minute and load ~800K records.

The problem is that the QV server reports the virtual memory (from the Performance log) as

VMCommitted(MB) : 108
VMAllocated(MB) : 160
VMFree(MB) : 1888
VMLargestFreeBlock(MB) : 1024

when the server is first brought up.....

over time the VMFree deteriorates.... is never recovers any of the memory.... it just deteriorates until there is no VMFree left and the service/server hangs and needs to be restarted.

Here are the same stats just before the server dies...

VMCommitted(MB) : 1409
VMAllocated(MB) : 1522
VMFree(MB) : 526
VMLargestFreeBlock(MB) : 155

Is this normal behavior? Seems like a memory leak somewhere....

8 Replies
StefanBackstrand
Partner - Specialist
Partner - Specialist

Usage by clients on the server increases the working set amount in memory when calculations of expressions and charts are done and cached for later use. This is normal behavior. 4GB RAM in a 32 bit QVS server might not be enough to host the application that you have - especially as the QVW file size says little or nothing of the size it requires when loaded and extracted by QVS into memory. Document structure, chart expressions, table data uniqueness and other factors are key indicators to how the document will behave in memory.

Review the structure of the document and it's memory usage to try and figure out if the performance is insufficient. Review QVS log files to get more information and increase the verbosity of the logs from the QV Management Console.

Not applicable
Author

Stefan,

Thanks for your response. Is there any reason that the memory should not be released back once the client connections have been closed. What we are seeing is slow growth of the memory footprint with it never releasing any of the memory that it consumed. Even when no documents are loaded and all users are off the system.

Fundamentally I agree that we may need to increase the memory available and move to a 64 bit version of the app however I am still trying to determine if the behaviour we are seeing is expected or not.

I am attaching the ganglia graphs we have of the memory usage and the performance log file itself. The sharp dips coincide with when we restarted the services and/or the server.

Thanks,

Marc

Not applicable
Author

Hi,

I am seeing the same thing on my server. (win 2003 64bit with qv 9 sr1) qvs.exe nevers appears to release memory until the service is restarted. I have tried different variations of the session timeouts but am not seeing the memory released.

Should not that memory be released when a session has closed and the appropriate timeout value past?

Michael

Bjorn_Wedbratt
Former Employee
Former Employee

Hi Michael,

As Stefan pointed out in a previous post, QVS will reserve memory for caching common calculations. This cache will not be released until the service is restarted. You can control the amount of RAM that you want to allocate for caching by altering the Memory Set Limits. You can play with the Min/Max/Cache values to find a balance that's good in your environment.

Bjorn_Wedbratt
Former Employee
Former Employee

Just a note when using ESX. Make sure you allocate static RAM to the virtual machine, and not use dynamic allocation in ESX. Depending on how ESX is mapping the physical RAM to its virtual memory you may get undesirable when running QlikView Server.

Not applicable
Author

Hi,

What value is set in QEM Systems, Setup, Documents for the Document Timeout? (also are users access the vairous .qvws 24 hrs a day?

In my case the timeout was set to 1440 minutes (a full 24 hrs) which basically means, never unload this document. I reduced this setting to 480 and that appears to be working for releaseing the memory.

This solution came from QlikTech support. thanks Gustav!

Michael

Not applicable
Author

Hello Stefan,

We are experiencing the same issue as this post above in October. The Virtual memory keeps rising until the QVS service stops. We are on Version 9 SR2. I cannot find the memory set limits or the Min/Max/Cache values in the Qlikview Management Console. Can you tell me where to change these. Also, what values do you recommend?

Thanks.

Don Saluga

ServiceLink

Pittsburgh, Pa.

Gustav_Guldberg
Employee
Employee

Hi all,

This sounds like a known bug to me. The description fits pretty well with the virtual memory not being released.
Customer patch 9.00.7336 (will also be included in the SR3 release).

Open a case with QlikView Support and request the patch (simple QVS.exe switch) and see if that helps.

Regards,

Gustav