‎2010 Aug 04 9:07 AM
Dear ABAP performance experts,
is there a history for memory consumption of shared objects? Transaction ST02 allows a history view for many other buffer types, but apparently not for Shared Objects.
Why do I ask this?
In one of our production systems, the 20MB limit for Shared Objects is about to be touched. From the SHMM transaction, the following shared objects participate.
Class Name Allocated bytes
CL_SOAP_SHM_ENQUEUE_AREA 1,960
CL_ICF_SHM_AREA 11,661,896
ZCL_TAGLIB_TEMPLATE_AREA 41,536
CL_SANA_SHM_AREA 2,138,320
ZCL_STATUS_AREA 38,432
CL_QRFC_SHM_AREA_QUEUE_TO_DEST 2,504
CL_UGMD_ROLE_SHM 1,012,296
I found two notes concerning the by far fattest of these objects, CL_ICF_SHM_AREA (it holds an internal table ICF_SHMRUNT with only 653 entries in our system which looks harmless. But the internal table has a deep structure: It has a component which is again an internal table, and that internal table again has a component which is an internal table! This may explain the high memory consumption).
https://service.sap.com/sap/support/notes/986790
https://service.sap.com/sap/support/notes/1071924
But before deciding about an action (like changing the buffering method with the system parameter icf/shared_memory_cache_off), I would like to know wether the allocated memory is continually growing (as could be possible if there are many incoming requests with dynamical path components, see note 986790) or wether it remains more or less fixed at this value.
Kind regards,
Rüdiger
‎2010 Aug 04 9:14 AM
Hallo Rüdiger,
shared objcts will be visible in the ST02 with the very new releases, but even there no history is shown as for the other buffered objects. There is no history at other places as far as I know.
Siegfried
‎2010 Aug 04 9:14 AM
Hallo Rüdiger,
shared objcts will be visible in the ST02 with the very new releases, but even there no history is shown as for the other buffered objects. There is no history at other places as far as I know.
Siegfried
‎2010 Aug 04 9:23 AM
Hallo Siegfried,
thank you for the answer. As we are on SAP_BASIS 700, I therefor have to observe the SHMM figures daily to get the history.
Regards,
Rüdiger
‎2010 Aug 04 11:31 AM
Hi Rüdiger,
As we are on SAP_BASIS 700, I therefor have to observe the SHMM figures daily to get the history.
this is probably the easiest thing to do.
There is a "Trace" Option in SHMM availabe which is more a "Log" than a "Trace".
With this you can write an own class that hooks in predefined cases (e.g. detach commit)
and then logs some information. This might be oversized for your task but in principle
it should be possible doing it this way. I've done this once to check how it works (the hooks,
not the size) but lost this example since i haven't done a backup (yes that happens).
Now i would have to figure it out again...
Kind regards,
Hermann
‎2010 Aug 04 1:55 PM
Thank you Hermann,
interesting info. I'll keep this in mind for my next shared object class!
Regards,
Rüdiger