Qlik products are “in memory products” which will take advantage of the operating system's maximum available memory.
Insufficient server sizing, or a system that has outgrown its previous requirements due to additional document load and user load, can therefore lead to memory shortage.
The Microsoft Windows Event logs may log the following in the System log:
Windows successfully diagnosed a low virtual memory condition. The following programs consumed the most virtual memory: qvb.exe (8328) consumed 9197830144 bytes, qvb.exe (9340) consumed 635494400 bytes, and QVDistributionService.exe (2344) consumed 432857088 bytes.
Where qvb.exe is the QlikView reload engine. This may also be the qvs.exe (QlikView server), qv.exe (QlikView Desktop), or engine.exe (Qlik Sense Engine).
For general information on Windows and memory allocation, see the Microsoft Technet Blog post "Pushing the Limits of Windows: Virtual Memory
About the Windows Message and Virtual Memory:
The Resource Exhaustion Detector component of Windows Resource Exhaustion Detection and Resolution (RADAR) identifies the top three consumers of committed memory and warns you when the system commit charge reaches a critical level.
What is Commit charge:
Virtual Memory is combined with Physical Memory and page files on disk. Committed Memory, also called committed virtual memory, is used or allocated Virtual Memory.
The amount of committed virtual memory for all the active processes is called the current commit charge. When a process commits a region of virtual memory, the operating system guarantees that it can maintain all the data the process stores in the memory either in physical memory or on disk. That means that a process can run up against another limit: the commit limit.
Memory\% Committed Bytes in Use
Memory\% Committed Bytes in Use This measures the ratio of Committed Bytes to the Commit Limit—in other words, the amount of virtual memory in use. This indicates insufficient memory if the number is greater than 80 percent.
on the problematic server, we can find this value in task manager too, i.e. Commit (GB) 10/11. [Highlighted]
Here 10 GB is Committed Bytes and
here 11 GB is Committed Limit
What is %~Committed~Bytes~in~Use"
% Committed Bytes in Use is the ratio of Memory <\\Committed Bytes to the Memory\\Commit Limit>.
Committed memory is the physical memory in use for which space has been reserved in the paging file should it need to be written to disk.
The commit limit is determined by the size of the paging file. If the paging file is enlarged, the commit limit increases, and the ratio is reduced. This counter displays the current percentage value only; it is not an average.
11 GB = Installed Memory 8.00 GB + Page File
This System has 8 GB Installed RAM + Currently allocated 4 GB Page File.
In this problematic server, static page file is set of Min 2048 MB to Max 2048 MB which is >= 2 GB
one for C:\ and other from D:\ drive.
Hence, the approx. commit limit is 12 GB.
This 10 GB is nothing but a Commit byte to the memory -- > Committed Bytes is the amount of committed virtual memory, in bytes for all processes [server process + other processes running on the system].
10/11 = 0.90. = 90%. if this value is greater than 85%, then 2004 Error will also come Which means,
in this server system commit charge reaches a critical level.