SAP Hana – Out of Memory information in logs
Using the HANA system, You can find information similar to the following in the logs:
[MEMORY_OOM] Information about current out of memory situation: (<timestamp>) OUT OF MEMORY occurred. Host: <hosrname> Executable: <servicename> PID: <pid> Failed to allocate <memoryvalue> Allocation failure type: OPERATING_SYSTEM_LIMIT
Could not return Xb to operating system. This is a configuration problem of your operating system: Please increase /proc/sys/vm/max_map_count At most one OOM dump is written in approximately Xs.
<timestamp> e Memory MallocProxy.cpp(02006) : mmap(<...>) failed.12 (Cannot allocate memory) <timestamp> e Memory Precharge.cpp(00162) : memAllocSystemPages failed with rc=12, 12 (Cannot allocate memory)
SQL submitted to ODBC data source <HANA SID> resulted in error <[SAP AG][LIBODBCHDB SO][HDBODBC] General error;2048 column store error: search table error: [9] Memory allocation failed;exception 1000002: Allocation failed ; $size$=25315874691; $name$=Pool/JoinEvaluator; $type$=pool; $inuse_count$=16; $allocated_size$=27891692375; $alignment$=8; $failure_type$=OPERATING_SYSTEM_LIMIT;
<compileserver_XXXXX.trc> [197680].508077 e Memory mmReportMemoryProblems.cpp(01991) : Finished writing oom runtime dump! [197680].508100 e compileserver ljit_server_CompileService.cpp(00120) : Emergency shutdown because of out-of-memory [197680].508104 e Basis ljit_server_CompileService.cpp(00071) : Process exited due to an error via explicit exit call with exit code 1 , no crash dump will be written
What we can do in this situations?
In this case, two things should be checked:
- Linux Kernel Parameter /proc/sys/vm/max_map_count on SAP HANA Systems. Check that the value is set correctly. Helpful note: 1980196
- Check and configure correctly global_allocation_limit paramter in HANA instance. Helpful note: 2926166
- If above two points don’t resolve Your problem with memory You should investigate the memory utilization by other services/programs running in the server.