334 words

Need help to analyse very high memory usage by objectdb (PRU, SEV, VAL[])

#1
2016-12-06 16:47

Hello,

we have a useCase in which we consume too much memory and run into a "GC overhead limit exceeded" exception.

Nearly 90% of the memory are taken by com.objectdb.o.PRU (49%) com.objectdb.o.SEV (29%) and com.objectdb.oVAL [] (9%).

When debugging, we did not get the reason for the high memory consumption yet.

Can you give us any any hints, which leads to the generation of these objects?

We assume that we (erroneously) refer to too many entities in the memory.

For example, we are not yet sure if the objects are created when executing queries, persisting new entities, or modifying them.  Any kind of hints would help us to analyse/fix our problem.

 

We use version 2.6.9_08 in embedded mode.

btc_es
btc_es's picture
Joined on 2014-10-20
User Post #162
#2
2016-12-06 17:07

Small hint @ObjectDB (not related to this thread):

I got the following message after save this thread:

SMTP -> ERROR: RCPT not accepted from server: 554 5.7.1 Service unavailable; Helo command [www.objectdb.com] blocked using dbl.spamhaus.org; https://www.spamhaus.org/query/domain/objectdb.com
    SMTP -> ERROR: RCPT not accepted from server: 554 5.7.1 Service unavailable; Helo command [www.objectdb.com] blocked using dbl.spamhaus.org; https://www.spamhaus.org/query/domain/objectdb.com
    Forum Thread Need help to analyse very high memory usage by objectdb objects (PRU, SEV, VAL[]) has been created.
btc_es
btc_es's picture
Joined on 2014-10-20
User Post #163
#3
2016-12-07 09:27

This may be caused by large insert / update transactions, with large amount of data pending to be written to the database on commit.

 

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)
support
support's picture
Joined on 2010-05-03
User Post #2,672
#4
2016-12-22 08:12

We have now completely changed the affected part, since the problem is gone.


For tests I had used a scenario in which the memory has just passed (3 GB). And then the database file size was just 10 MB. Can the memory consumption of over 2GB with ObjectDB Objects nevertheless be explained with generation or update of entities?

 

We had not created many entries and deleted them again. However, we can not exclude that existing objects have been modified over and over again.

btc_es
btc_es's picture
Joined on 2014-10-20
User Post #164
#5
2016-12-22 09:03

When a persistent object is modified the entire object content becomes pending for writing to the database (until transaction commit), so with many updates or updates of large objects this is possible.

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)
support
support's picture
Joined on 2010-05-03
User Post #2,679

Post Reply

Please read carefully the posting instructions - before posting to the ObjectDB website.

  • You may have to disable pop up blocking in order to use the toolbar (e.g. in Chrome).
  • Use ctrl + right click to open the browser context menu in the editing area (e.g. for using a browser spell checker).
  • To insert formatted lines (e.g. Java code, stack trace) - select a style in the toolbar and then insert the text in the new created block.
  • Avoid overflow of published source code examples by breaking long lines.
  • You may mark in paragraph code words (e.g. class names) with the code style (can be applied by ctrl + D).
  • Long stack traces (> 50 lines) and complex source examples (> 100 lines) should be posted as attachments.
Attachments:
Maximum file size: 32 MB
Cancel