SAP HANA – problem with allocator: Pool/RowEngine/GlobalHeap
In HANA version: 2.00.048 You can observe some memory leak. The problem is mainly visible in this collector: Pool/RowEngine/GlobalHeap. It can use 70-80GB of RAM and more during calculations. SAP note 1999997 indicates that the problem can only occur until Hana 2.00.046 but we already know that’s not true. Meanwhile a note 2902494 says about leaks on this pool, but still doesn’t provide a solution. Parallel to the above allocator, you may also observe a problem with another allocator i.e. Pool/RowEngine/QueryExecution/SearchAlloc.
Solution
You can consider several options…
- At the beginning check how much memory the allocator is using.
hdbcons "mm bl -t Pool/RowEngine/GlobalHeap" ... Top 20 allocators: Pool/RowEngine/GlobalHeap: 74.96gb (80491558840b) (337855404 blocks) [OK] ## Finish command at: 2021-05-## 00:07:05.735 command took: 3.353 min [EXIT] [BYE]
2. You can try to disable ESX engine and monitor whether the issue persists. But be careful, disabling ESX can have negative performance impact. Please look to note: 2599949
ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM' ) SET ('sql', 'esx_level') = '0' WITH RECONFIGURE
This parameter change can easily be reverted by running the following as mentioned below:
ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM' ) UNSET ('sql', 'esx_level') WITH RECONFIGURE
3. I found also others notes which they confirm this is the known issue in SAP HANA 2.0 SPS 04 Rev 48. You should refer to this SAP Note for more information: 2982247 – Memory Leak in Pool/RowEngine/QueryExecution/SearchAlloc
Workaround 1:
This is as per the SAP Note 2982247 – Memory Leak in Pool/RowEngine/QueryExecution/SearchAlloc
Apply one of the following SAP HANA Revisions:
SAP HANA 2:
- Revisions >= 048.03 (SPS04)
- Revisions >= 053.00 (SPS05)
- or higher
Workaround 2:
I would like to focus mainly on the allocator “Pool/RowEngine/QueryExecution/SearchAlloc”. This allocator is in relation to executed SQL statements. I would recommend reviewing the note 1999997 – FAQ: SAP HANA Memory under the heading “Pool/RowEngine/QueryExecution/SearchAlloc” and also the section around optimising SQL statements that increase the memory usage on the allocator “Pool/RowEngine/QueryExecution/SearchAlloc” under “19. Which general optimizations exist for reducing the SQL statement memory requirements?”
You can also use the following steps to check your specific expensive statements: In Hana Studio -> Admin View -> Performance. Go to the expensive statements trace.
Here you can order by memory size and see the statements that used the most memory.
Useful note:
2620830 – How To Record SAP HANA Memory Allocator Traces to Analyze Memory Leaks
Hellօ to every body, it’s my first pay ɑ quіck visit of
this weblog; thіѕ weblog consіsts ᧐f amazing and actually good material deѕigned
fօr rеaders.
Ιts like you read my mind! You appear to know so much abօut
this, like you wrote the Ƅook in it or something. I think that you can do with some pіcs to drive the message home a Ƅit, bᥙt instead of that,
this is mɑgnificent blog. Ꭺ great rеad.
I will certаinly bе baⅽk.
Hi,
I apologize for the inconvenience. In recent articles, I’ve been trying to keep an eye on the pictures in the text.