Consecutive small reports cause Heap Out Of Memory Error

Hi,
I'm using JasperReport Server v7.2 on Ubuntu 18.04.3 LTS under Tomcat 9.0.24 and OpneJk 1.8.0_312 

JVM Arguments:
-Xms1024M
-Xmx2048M
-XX:+UseParallelGC

With REST API I generate many small reports (up to 10 pages).
I execute one API call a time, so Jasper generates only one report a time.

As you can see in attached image (image 1), the used heap space increases until it reaches saturation (after 220/230 reports).
It seems that Jasper keeps in memory data of the reports produced and the GC cannot free it.

Even interrupting the report generation process, the heap memory is released only after a long time (1 hour after the error/interruption), see image 2.


Errors that I cand find in log:
ERROR SecureExceptionHandlerImpl,pool-27-thread-1:116 - Java heap space 
ERROR SqlExceptionHelper,pool-27-thread-1:131 - Ran out of memory retrieving query results.

How can I avoid this situation? Any suggestion?

Thanks,
Stefano.

s.facchetti's picture
Joined: Nov 13 2020 - 5:42am
Last seen: 3 months 3 hours ago

You are running on way too little memory for JRS.  For 7.2 from the supported platforms guide these are the requirements for JRS:

Minimum system requirements: 2 Core processor, 8 GB RAM, 10GB free disk space
Recommended system requirements: 2.5 Ghz multi Core processor, 12GB RAM, 40GB free disk
space

Please bump your memory to minimum or above.   Thanks.

rmeadows - 3 months 4 hours ago

Hi,
we've a VM with 32 GB RAM, 4 Core and 200 GB free space.

Ram minimum requirements is refered to SO or JRS?
Changing Xmx from 2048M to 16384M has resolved the issue.
 

Best regards,
Stefano.

s.facchetti - 3 months 3 hours ago

0 Answers:

No answers yet
Feedback