SAP Knowledge Base Article - Preview

3556445 - How-To Identify and Resolve Performance Issues Caused By High Memory Usage / Column Store Unloads

Symptom

You are observing slowness on the system and are not sure of the cause since thread usage and workload amount looks relatively normal.

Upon review of the indexserver traces, you see errors like the excerpt below during the period of slowness.

[405xxx]{242xxx}[488/-1] 2025-01-01 01:42:45 w ResMan           ResourceContainerShrink.cpp(03383) : Information about shrink at 2025-01-01 01:42:45 216 Local:
Reason for shrink: Reserve for HBA, user size:  28802618944
ShrinkCaller
   0: 0x00007fff674bfe44 in ResourceManager::ShrinkInformation::updateShrinkInformation(ResourceManager::ValidMemoryTypes const&, char const*, unsigned long, bool)+0xd4 at Basis/ResourceManager/impl/ResourceContainerShrink.cpp:1211 (libhdbbasis.so)
   1: 0x00007fff674df9b8 in mmSmallBlockAllocator.cpp.007cc0a5+0x885 at Basis/ResourceManager/impl/ResourceContainerShrink.cpp:3382 (libhdbbasis.so)
   2: 0x00007fff674cd194 in ResourceManager::ResourceContainerImpl::genericShrink(unsigned long, unsigned long, char const*, unsigned long, MemoryManager::ReclaimMemoryTaskType, MemoryManager::MemoryTypeArray<bool> const&)+0x1d4 at Basis/ResourceManager/impl/ResourceContainerShrink.cpp:3416 (libhdbbasis.so)
   3: 0x00007fff674cfda4 in ResourceManager::ResourceContainerImpl::compactMemory(MemoryManager::MemoryCompactor::CompactionInfoBlock&, unsigned long, char const*, unsigned long, MemoryManager::ReclaimMemoryTaskType, MemoryManager::MemoryType)+0x54 at Basis/ResourceManager/impl/ResourceContainerShrink.cpp:1981 (libhdbbasis.so)

In the same trace entry, there is information on total memory usage on the server and which heap allocators are responsible.
 
GLOBAL_ALLOCATION_LIMIT (GAL) = 6.96tb (7662425997312b), SHARED_MEMORY = 216.78gb (232768143360b), CODE_SIZE = 3.44gb (3700359168b), NVM_ALLOCATED_SIZE = 0b, OOM_RESERVATION_ALLOCATOR_SIZE = 96.18mb (100859904b)
PID=416xxx (hdbindexserver), PAL=6.96tb (7662560215040b), AB=6.59tb (7248075161600b), UA=0, U=6.25tb (6883499116185b), FRO=0b, FSL=0b, FMC=0b
[Some processes may have been skipped]
Total allocated memory= 6.96tb (7663239233536b)
Total used memory     = 6.60tb (7263971083016b)
Sum AB                = 7426770731008
Sum Used              = 7027502580488
Heap memory fragmentation: 5

Top "M_HEAP_MEMORY" allocators (component, name, size). Ordered descending by exclusive_size_in_use.
 1: Statement Execution & Intermediate Results: Pool/JoinEvaluator/TranslationTable                                  1.14tb (1254191531916b) (26.82gb (28802678784b) precharged, 26.82gb (28802678784b) in preparation)
 2: Column Store Tables:                        Pool/ColumnStore/Main/Dictionary/RoDict                              994.69gb (1068048631977b)
 3: Column Store Tables:                        Pool/ColumnStore/Main/Index/Single                                   891.60gb (957357634232b)
 4: Column Store Tables:                        Pool/ColumnStore/Main/Uncompressed                                   827.67gb (888712763456b)
 5: Column Store Tables:                        Pool/ColumnStore/Main/Compressed/Indirect                            516.82gb (554938228680b)
 6: Statement Execution & Intermediate Results: Pool/JoinEvaluator/JEStep2                                           509.84gb (547441119784b)
 7: Column Store Tables:                        Pool/ColumnStore/Main/Rowid                                          437.15gb (469391623816b)
 8: Statement Execution & Intermediate Results: Pool/JoinEvaluator/JEStep1                                           181.95gb (195369850156b)
 9: Column Store Tables:                        Pool/ColumnStore/Main/Index/PageableSingle                           138.50gb (148717348080b)
10: Caches:                                     Pool/CS/BufferPage                                                   99.79gb (107157857200b)
..................

Process: AB=6.59tb (7248075161600b), U=6.25tb (6883508223837b), fragmentation=5%.


Read more...

Environment

HANA Platform Edition 

Product

SAP HANA 1.0, platform edition ; SAP HANA, platform edition 2.0

Keywords

ResourceContainerShrink, ResMan, slowness, performance, shrink, GLOBAL_ALLOCATION_LIMIT, OOM, memory , KBA , HAN-DB , SAP HANA Database , HAN-DB-PERF , SAP HANA Database Performance , Problem

About this page

This is a preview of a SAP Knowledge Base Article. Click more to access the full version on SAP for Me (Login required).

Search for additional results

Visit SAP Support Portal's SAP Notes and KBA Search.