Issue : Cannot execute query "SELECT * FROM quartz_trigger WHERE state IN [ ?,?,? ]": low heap memory

Hi All,
we are using below nexu3 in production setup :

Version 3.37.3-02
Edition OSS
Build Revision 43b5a0e9e1ce21baf3f0ccbf7cb2811b6bbcf580

We are getting below mentioned error very frequently post which even through the nexus becomes unavailable for end users:

“SELECT * FROM quartz_trigger WHERE state IN [ ?,?,? ]”: low heap memory
Caused by: com.orientechnologies.orient.core.exception.OCommandExecutionException: Cannot execute query “SELECT * FROM quartz_trigger WHERE state IN [ ?,?,? ]”: low heap memory

we have below specification related to physical server and heap size -
physical memory 34G on NAME=“Red Hat Enterprise Linux Server”
VERSION=“7.9 (Maipo)”
-Xms10144m
-Xmx10144m
-XX:MaxDirectMemorySize=10G
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=…/sonatype-work/nexus3/log/hdump.hprof
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=…/sonatype-work/nexus3/log/jvm.log
-XX:-OmitStackTraceInFastThrow
-Djava.net.preferIPv4Stack=true
-Dkaraf.home=.
-Dkaraf.base=.
-Dkaraf.etc=etc/karaf
-Djava.util.logging.config.file=etc/karaf/java.util.logging.properties
-Dkaraf.data=…/sonatype-work/nexus3
-Dkaraf.log=…/sonatype-work/nexus3/log
-Djava.io.tmpdir=…/sonatype-work/nexus3/tmp
-Dkaraf.startLocalConsole=false
-Djdk.tls.ephemeralDHKeySize=2048

can someone let us know the possible reason as we have tried to increase the heap dump from 4 to 8 and now to 10 but still the issue persists.

Its possible you might have issues with the database. It may also make sense to update Nexus to a newer release.

Aside from that you could take a heap dump and attempt to determine what is consuming resources

Hi ,

It will be helpful if you can provide answers to below queries :

  1. When nexus3 is crashing we have tried to take heap dump but it does not allow as that point in time already the I/o , cpu as well as memory is at its peak,as a result we are not getting heap dump during crash,is there any other alternative to check this apart from heap dump.
  2. As this version is using orientdb we wanted to know at what version we should be upgrading this nexus to , reason being we have mix repos of every type some of the default blobstore is up to 2tb.Wanted to know what all things should be checked before upgrading it also can we directly upgrade from current version to latest stable or we should take it step by step , an guidance on this is much appreciated so that we can plan for upgrade by knowing future hurdles which we might face and be ready with solution to remediate them.
  3. Currently we have migrated all repos from nexus 2 to nexus 3 repo so are there any recommendations as such to follow if so please share so that we can check if we have missed any.
  4. The query which is causing heap issue which I have mentioned in my original post, is it running through any scheduler and can we make it run off business hour

@mpiggott - Here is the dump analysis for your reference.