cancel
Showing results for 
Search instead for 
Did you mean: 

Product catalog - XML export stops (transaction COMM_PCAT_EXPORT)

jemco01
Advisor
Advisor
0 Kudos

Hello to all,

On my current project, we try to use XML export in order to generate customer catalogs with prices (for almost 800 BP and 2000 products).

On the test platform, I have created the catalog and a view for 4 BPs.

But when I try to export the catalog and generate the four files, program stops after the second file has been produced (at best) with following error:

« Error occurred when processing Java programs » (message 14 059) : An error occurred while executing a Java program in the VM container.

When I checked the Virtual Machine Overview (SM52), I see Memory allocation rising and rising. When 99 or 100% has been reached, process takes more and more time and finally ends up with message above (online only – when program is launched in background, we see the job is apparently active in SM37 but if I use the command « check status », job shows it has been cancelled).

I have seen there are many OSS notes on VMC & IPC settings like :

  • 1083358: VMC: Recommendations for parameter settings
  • 1269480: Collective Note about Performance of the IPC Configurator
  • 863354: Using the "VM container" component
  • 880749: Patching of VMC based AP 7.00 engines  --> regarding AP configuration engine, we currently are on release 700, support package 20 and patch level 14… as most recent patch level is 104 for this release/support package !

So it seems to be a huge work to optimize VMC settings and I’m asking myself if it worth all these effort if in the end problem is not solved and performance too low (At best, I needed more than one minute to get on file for one BP).

In this case, best will maybe to set aside standard transaction and build custom program instead (???).    

What is your feeling? Any piece of advice or feedback on your own experience on COMM_PCAT_EXPORT will be welcomed. Or, among the recommendations in the notes mentioned above, are there some that are “low-time consuming” and really profitable?  

Edit 2013/08/06:

 

I’ve
checked the logs in SM53 and I’ve got following message: “Not enough shared space for storing the key "PU|UN" in
cache region "/AP/PRC/Conversion_910"." In log name « com.sap.vmc.cache.impl.spi.storage.SCAbstractStorage ».
I think there’s something to dig in this area…

End of Edit 2013/08/06:

Best regards,

Jean-Marie

View Entire Topic
former_member196467
Active Contributor
0 Kudos

Hi Jean-Marie,

I am not experienced in this area but could you please check note 854170 if all the recommendations have been followed.

Best regards

Christophe

jemco01
Advisor
Advisor
0 Kudos

Hello Christophe,

I think this will help, thank you. I will check this with our administrator when he'll come back from holidays in two weeks.

Best regards,

Jean-Marie

jemco01
Advisor
Advisor
0 Kudos

Hello,

We have checked content of note 854170.

Step 1:

"The VM Container requires at least patch level 29 for the 7.00 kernel. You require patch level 260 or higher for the optimal configuration as described in SAP Note 1083358. Starting with kernel 7.01, the VMC is available in each release."

--> We are on kernel 7.01 / patch level 150.

Step 2:

parameter "vmcj/enable = on"

--> OK

"In addition, set the shared memory area that is used by the VM container in accordance with SAP Note 1020539 (Memory management in the VM container) or 1170313 (Zero administration memory management in VMC). SAP Note 1020539 is used only to calculate the size of the shared pool; the setting should be made in accordance with SAP Note 1170313 or 1083358"

--> We have particularly checked OSS note 1005457 (Parameter setting for Java Virtual Machine in VM Container) with analysis on STAD transaction then "VMC Container information".

Regarding checks on "garbage collector" in "old generation", we have no case of values higher than 2.

Regarding "Single Statistical Records - Details: Java Heap" & "Single Statistical Records - Details: GC CPU time, GC elapsed time" areas, we get sometimes (not always) the situation described in the note.

"If, for example, there is an increase in the number of Full GCs, without the possibility of deleting sufficient objects from the Old Generation, the size of the Old Generation is too small.

However, if there is a large number of Full GCs that also release a large amount of memory, the size of the Young Generation is probably too small. In this case, too many short-lived objects are promoted to the Old Generation, where they die a short time later. The objects must then be removed by the Full GC, a more laborious process. To check the quantity of data that was promoted by a Small GC to the Old Generation, see "Java Heap" -> "promoted"."

In next chapter, there is following passage: "A
sign that a CPU or memory bottleneck has occurred is if the "GC elapsed
time" is much higher than the "GC CPU time". You can investigate
this further using transaction ST06 or operating system tools.
"

This is the kind of situation I noticed on STAD transaction, specifically while dealing with <VMC EVENTS COMPILE> program.

When I check ST06 during export launch CPU usage sometimes gets a peak to 70% on one of the processors.

To try to fix the issue, we tried to apply parameters given in OSS note 1083358
: VMC: Recommendations for parameter settings but most of them are not known in our system like vmcj/option/percentageYoungGen, eg2/max_extend_size_MB or vmcj/option/gc/sharedGCPrecision for example.

That's where I'm a bit lost because I don't understand why those parameters will be missing... If you have any idea... Does it have something to do with the SAP_BASIS version? (We are currently on release 7.01 / level 006 - SAPKB70106).

Bypassing the warning messages and restarting the server lead to not being able to launch Virtual Machine Container again. So we went back to initial situation...

Besides, we also applied IPC patch. Our SAP IP engine is on release 700 / SP 20, initially on patch level 14 but now our patch level is 105. Nothing changed afterwards.

Any piece of advice will be greatly appreciated...

Best regards,

Jean-Marie

jemco01
Advisor
Advisor
0 Kudos

Hello to all,

We opened a OSS ticket in order to get some support on this problem.

SAP advised us to adjust following parameters:

Set vmcj/option/gc/MinFree to value 4 (instead of standard value 2). However, the parameter was not documented, we got following messages:

  • "W:Unknown parameter vmcj/option/gc/MinFree , a check cannot be performed" in transaction RZ10
  • "The parameter name is not known (Message no. PF724)" in transaction RZ11 

However, SAP support advised us to go further with the parameter capture in RZ10 transaction along with an increase of parameter vmcj/option/ps (in our system, we set value 528M instead of default 128M).

After parameter change and server restart, we can now proceed with the export without big issue.

We tried also to export more data (400 files generated) and it worked.

Problem is now solved on our side...

Best regards,

Jean-Marie