Cassandra typically uses a cache for reading SSTables, for which the normal default is usually sufficient. However depending on the read throughput sometimes this cache may become exhausted and a message is seen in the log which might cause users some concern.
All versions of DSE
The following error message will be seen in the
INFO [CompactionExecutor:1] 2018-08-30 16:51:28,098 NoSpamLogger.java:94 - Maximum memory usage reached (512.000MiB), cannot allocate chunk of 1.000MiB
Reads might also be observed to increase in latency also when these messages begin to appear in the logs
This message is logged when SSTables are being read into the cache faster than the memory can be recycled. The size of the cache is controlled by the
file_cache_size_in_mb setting in the
cassandra.yaml. The default size is 512 MB.
file_cache_size_in_mb will resolve the issue (requires a DSE restart)