Skip to Content
0

ESR | import big XSDs

Dec 13, 2016 at 01:20 PM

74

avatar image

Dear,

We face a stack overload when we want to import a really big XSD, referring to other XSDs, into the ESR. Any suggestions?

The SAP PO system is a 7.4.

Thank you,

Dimitri

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Vadim Klimov Dec 13, 2016 at 02:49 PM
0

Hello Dimitri,

I assume you refer to the exception StackOverflowError, don't you? If so, this is not truly a solution, but rather a workaround - you may increase thread stack size allocated for Java threads in your system, so that thread stack will be able to hold more data, including larger call stacks (helpful for deeply nested calls / recursive calls). Corresponding parameter is JVM parameter 'Xss' and shall be changed using Config Tool (offline change, requires application instance restart for change to take effect) - by default, its value is set to 2 Mb.

Unfortunately, increase of thread stack size also has side effect. Since memory for thread stack is allocated during new thread creation, memory area specified by the mentioned parameter, will be allocated for every newly created thread regardless of how much of this memory the thread will actually require. This may potentially drive to JVM non-heap memory being exhausted and resulting in exception OutOfMemoryError in case of large number of threads created by JVM (e.g. when extensive parallelism is used) combined with large stack size allocated for every thread. Thus, I would suggest increasing this parameter with caution in Development environment and having very good argumentation in case this has to be done in QA / Production environment. At the end, it can become a compromise between thread stack size, maximum created threads and size of non-heap memory area.

You may check SAP Note 1895234, which provides more details on changing this JVM parameter.

Regards,

Vadim

Share
10 |10000 characters needed characters left characters exceeded