If I understand the logic of things like SlabAllocator properly, this is essentially buffer space that has been allocated for the purpose and C* pulls off ByteBuffer hunks of it as needed. The notion of reclaiming by the kernel wouldn’t apply, C* would be managing the use of the space itself.
Whether GC cycles matter at all isn’t obvious at a quick glance. C* makes use of weak and phantom references so it’s possible that there is a code path where release of a ByteBuffer would wait upon a GC, but I can’t say for sure. From: HImanshu Sharma <himanshusharma0...@gmail.com> Reply-To: "user@cassandra.apache.org" <user@cassandra.apache.org> Date: Wednesday, April 15, 2020 at 10:34 PM To: "user@cassandra.apache.org" <user@cassandra.apache.org> Subject: How quickly off heap memory freed by compacted tables is reclaimed Message from External Sender Hi As we know data structures like bloom filters, compression metadata, index summary are kept off heap. But once a table gets compacted, how quickly that memory is reclaimed by kernel. Is it instant or it depends when reference if GCed? Regards Himanshu