-
-
Notifications
You must be signed in to change notification settings - Fork 98
Description
In the recent release (3.3.0) you've changed the in-memory mode of the database of the database to use the MVStore off-heap store. This mode utilizes direct buffers of course, but unmanaged direct-buffer pools behavior in the JVM is not that great.
We are seeing up to 10GB of off-heap memory direct buffer utilization, only to be GC'd (Full GC, which has a harsh impact on performance) down to a third of its size and then growing back again. Compaction also doesn't seem to behave as expected, and during load peaks we sometimes encounter Caused by: java.lang.IllegalStateException: java.lang.OutOfMemoryError: Direct buffer memory [1.4.200/3].
Now of course we can move to file based database or just change the direct memory limitation via -XX:MaxDirectMemorySize but I wonder how's the In-Memory mode before this change? Maybe we should have both modes enabled?
Direct buffers are known to problematic when it comes to memory management, and IMHO Heap buffers are preferable when memory is limited.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status