No Global Garbage Collection for DBSight 4.x

Submitted by chris on Tue, 2010-10-05 14:28.

It is hard to see JVM struggles with garbage collection. The CPU fan spins fast and the disk makes a loud noise. OK. JVM, I see you are working hard. But the request hangs and users are waiting.

Why not just kill it and create a new one?

This is what DBSight 4.x did.

DBSight 4.x defaults to a separated searching mode. Each time, a dedicated search process is launched to specifically serve all the search request. If the index is updated, a new search process is created and the previous search process is stopped. Here are some benefits:

+ Stopping a search process is actually much faster for large indexes, than waiting for JVM.

+ Much easier on memory to have several large indexes.

+ A dedicated search process avoids memory fragmentation.

Basically, no special memory settings for DBSight 4.x! You don't need to worry about all those garbage collection pause, nor different GC method, like Concurrent Mark and Sweep, Garbage First, etc.

You just need normal settings like:

 -Xmx128m -Xnoclassgc

The memory requirement for DBSight now is pretty lite.