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
An increase in read latency or CPU usage may also be observed at the same time these messages 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 in the
cassandra.yaml can be increased (requires a DSE restart). This is if you observe a degradation in read latency or higher than normal CPU usage which gives cause for concern.
If however you are not seeing any detrimental effect then there is no immediate need to increase the cache size.