Issue #2038: out of memory error

Type: Bug ReoprtVersion: 1.4.0Priority: NormalStatus: ActiveReplies: 1
#1

we had a system crash on GC overhead limit reached, these are the last logs:

[ObjectDB 2.6.7_05] Unexpected exception (Error 990)
  Generated by Java HotSpot(TM) 64-Bit Server VM 1.8.0_91 (on Windows Server 2012 R2 6.3).
Please report this error on http://www.objectdb.com/database/issue/new
com.objectdb.o.InternalException: java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
at com.objectdb.o.SPV.U(SPV.java:147)
at com.objectdb.o.VUT.k(VUT.java:691)
at com.objectdb.o.VUT.j(VUT.java:371)
at com.objectdb.o.VUT.j(VUT.java:357)
at com.objectdb.o.PGT.q(PGT.java:133)
at com.objectdb.o.RST.B(RST.java:93)
at com.objectdb.o.RTT.l(RTT.java:132)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.RTT.D(RTT.java:179)
at com.objectdb.o.RST.s(RST.java:121)
at com.objectdb.o.PGT.q(PGT.java:109)
at com.objectdb.o.RST.B(RST.java:93)
at com.objectdb.o.RTT.l(RTT.java:132)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.TSK.i(TSK.java:145)
at com.objectdb.o.TSK.f(TSK.java:95)
at com.objectdb.o.TSM.e(TSM.java:86)
at com.objectdb.o.RTT.D(RTT.java:177)
at com.objectdb.o.RST.s(RST.java:121)
at com.objectdb.o.PGT.q(PGT.java:109)
at com.objectdb.o.RST.B(RST.java:93)
at com.objectdb.o.RTT.l(RTT.java:132)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.TSK.i(TSK.java:145)
at com.objectdb.o.TSK.f(TSK.java:95)
at com.objectdb.o.MST.a0(MST.java:609)
at com.objectdb.o.MST.Vm(MST.java:565)
at com.objectdb.o.PLN.Vm(PLN.java:517)
at com.objectdb.o.TAI.A(TAI.java:201)
at com.objectdb.o.TAI.UI(TAI.java:134)
at com.objectdb.o.PRG.ag(PRG.java:687)
at com.objectdb.o.PRG.af(PRG.java:555)

[2017-03-16 07:18:17 #4 *]
[ObjectDB 2.6.7_05] Unexpected exception (Error 990)
  Generated by Java HotSpot(TM) 64-Bit Server VM 1.8.0_91 (on Windows Server 2012 R2 6.3).
Please report this error on http://www.objectdb.com/database/issue/new
com.objectdb.o.InternalException: java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded
at com.objectdb.o.SEM.<init>(SEM.java:41)
at com.objectdb.o.SEC.g(SEC.java:195)
at com.objectdb.o.SEC.c(SEC.java:84)
at com.objectdb.o.RTT.F(RTT.java:227)
at com.objectdb.o.RST.C(RST.java:180)
at com.objectdb.o.RTT.l(RTT.java:134)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.RTT.D(RTT.java:179)
at com.objectdb.o.RST.s(RST.java:121)
at com.objectdb.o.PGT.q(PGT.java:109)
at com.objectdb.o.RST.B(RST.java:93)
at com.objectdb.o.RTT.l(RTT.java:132)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.RTT.D(RTT.java:179)
at com.objectdb.o.RST.s(RST.java:121)
at com.objectdb.o.PGT.q(PGT.java:109)
at com.objectdb.o.RST.B(RST.java:93)
at com.objectdb.o.RTT.l(RTT.java:132)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.TSK.i(TSK.java:145)
at com.objectdb.o.TSK.f(TSK.java:95)
at com.objectdb.o.TSM.e(TSM.java:86)
at com.objectdb.o.RTT.D(RTT.java:177)
at com.objectdb.o.RST.s(RST.java:121)
at com.objectdb.o.PGT.q(PGT.java:109)
at com.objectdb.o.RST.B(RST.java:93)
at com.objectdb.o.RTT.l(RTT.java:132)
at com.objectdb.o.RST.l(RST.java:24)
at com.objectdb.o.TSK.i(TSK.java:145)
at com.objectdb.o.TSK.f(TSK.java:95)
at com.objectdb.o.MST.a0(MST.java:609)
at com.objectdb.o.MST.Vm(MST.java:565)

[2017-03-16 07:20:59 #5 *]
[ObjectDB 2.6.7_05] Unexpected exception (Error 990)
  Generated by Java HotSpot(TM) 64-Bit Server VM 1.8.0_91 (on Windows Server 2012 R2 6.3).
Please report this error on http://www.objectdb.com/database/issue/new
com.objectdb.o.InternalException: java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded

[2017-03-16 07:22:09 #6 server]
java.lang.OutOfMemoryError: GC overhead limit exceeded

[2017-03-16 07:30:46 #7 server]
java.lang.OutOfMemoryError: GC overhead limit exceeded

[2017-03-16 07:34:10 #8 server]
java.lang.OutOfMemoryError: GC overhead limit exceeded

[2017-03-16 07:34:13 #9 server]
Server on port 3333 has stopped by 1268@wzbhb101

[2017-03-16 07:44:50 #10 *]
[ObjectDB 2.6.7_05] Unexpected exception (Error 990)
  Generated by Java HotSpot(TM) 64-Bit Server VM 1.8.0_91 (on Windows Server 2012 R2 6.3).
Please report this error on http://www.objectdb.com/database/issue/new
com.objectdb.o.InternalException: java.lang.OutOfMemoryError: GC overhead limit exceeded
java.lang.OutOfMemoryError: GC overhead limit exceeded

 

 

 

#2

If ObjectDB doesn't have sufficient heap space then it may throw an OutOfMemoryError (sometimes the error message is "GC overhead limit exceeded", but usually it still indicates a shortage in heap space).

Increasing the JVM heap size could solve the problem, or alternatively, tuning ObjectDB configuration to use less heap size.

If the exception is thrown in embedded mode you may wrap relevant calls to ObjectDB with a try-catch block to handle OutOfMemoryError if thrown.

Future versions of ObjectDB may be able to overcome heap space shortage automatically, but unfortunately currently an OutOfMemoryError is possible.

ObjectDB Support

Reply