Hi Mike,
Is Blazegraph instances running within Java 9+ JVM ?
I assume they are configured using G1GC garbage collector?
Did you also try enabling the -XX+UseStringDeduplication to see if it can
at least help a little and reduce some of the heap overhead on long lived
strings?
https://github.com/blazegraph/database/blob/master/blazegraph-rpm/src/rpm/c…
Also, has the team ever seen any Humongous objects fragmenting the old gen?
Many sometimes can cause the heap to be fragmented as mentioned within
https://www.oracle.com/technical-resources/articles/java/g1gc.html
There's also a few things to consider within that G1GC article that might
be worth looking into or thinking about from a data <--> memory perspective
since you don't have much control over heap usage in many places within
Blazegraph.
Hope this helps a bit. If I think of any other quick patches I'll let you
know.
Thad
https://www.linkedin.com/in/thadguidry/
https://calendly.com/thadguidry/