The QuasarDB daemon log file shows the following message:
2018.03.24-09.16.15.421491620 25725 25740 warning evicting everything 2018.03.24-09.16.15.521797144 25725 25740 warning the system reports that no entry is in memory, however, memory usage is greater than the configured limit (4.876 GiB > 4.0 GiB) - please review your configuration.
Additionally, QuasarDB shows very high CPU usage.
QuasarDB reports its actual memory usage, which includes internal data structures as well as entries in cache. The daemon is configured in such a way that causes its internal data structures to go beyond the configured limit, leaving no available memory for actual data.
This causes the QuasarDB daemon to frequently start a cache eviction process, possibly many times per second. This is an expensive operation that causes a very high CPU load, which degrades system performance.
Option 1: Use the QuasarDB configuration generator
The easiest way to generate a configuration that accounts for these things and is tuned for your specific server is to use the QuasarDB configuration generator.
Option 2: Provide license file
When you do not provide a license file, the QuasarDB daemon assumes community mode and is constrained to only 4GB of memory usage. The configuration generator is not aware of this, and will assume all memory available on the server can be used. This creates a mismatch and causes the problem to surface.
For more information on how to license QuasarDB, please see the article I want to license QuasarDB.
Option 3: Manual tuning of configuration
When you feel that the first two options did not address the problem, manual tuning of the configuration is possible. Please take an extra look at the
partitions configuration parameter, as this is known to require a lot of memory for every pre-allocated session.