Disk Based Storage is taking too much physical memory

Hi,

I am using disk-based storage for our namespace with the below configuration.

namespace lgp {
        replication-factor 2
        memory-size 10G
        default-ttl 0 # 5 days, use 0 to never expire/evict.
        high-water-memory-pct 90 # How full may the memory become before the server begins eviction (expiring records early)
        high-water-disk-pct 80 # How full may the disk become before the server begins eviction (expiring records early)
        stop-writes-pct 90  # How full may the memory  become before  we disallow new writes
#       storage-engine memory

        # To use file storage backing, comment out the line above and use the
        # following lines instead.
        storage-engine device {
                file /myntra/aerospike/data/lgp/object.dat
                filesize 600G
               data-in-memory false
        }
}

yesterday we show that our HWM memory has breached and one node had stopped writing on the namespace.

I saw below logs in that particular node.

Jul 15 2018 23:56:43 GMT+0530: WARNING (namespace): (namespace.c:440) {lgp} hwm_breached true (memory), stop_writes true (memory), memory sz:9668694592 (9668694592 + 0) hwm:9663676416 sw:9663676416, disk sz:180203699968 hwm:515396075520

Jul 15 2018 23:55:00 GMT+0530: WARNING (nsup): (thr_nsup.c:1038) {lgp} no records eligible for eviction

I am not able to understand why disk based namespace is taking so much physical memory.

The primary index is stored in memory, 64 bytes per record. Future versions would allow storing index on disk, but this is not available yet.

So, 9668694592/64=151,073,353 which would be the number of records you have in your system at this point (master and its replicas).

Thanks for the clarification.