Changing SingleStore's Memory Limits After Modifying System Memory Capacity

The maximum_memory and maximum_table_memory engine variables settings are configured by default in your memsql.cnf files for each node based on physical host memory capacity when SingleStore is installed. This setting is not automatically changed when the system's memory capacity changes. This is to avoid unintentionally allowing SingleStore to use more memory than desired.

After changing the system memory capacity, to change SingleStore's memory limits and optimize other SingleStore configurations, you can run:

sdb-admin optimize

This will automatically reset SingleStore's memory limits based on the available amount of system memory.

To change the individual memory limits, you can run:

sdb-admin update-config --set-global --key maximum_memory --value <value_in_mb>
sdb-admin update-config --set-global --key maximum_table_memory --value <value_in_mb>

To decrease SingleStore's memory limits you must restart the affected nodes after changing the value of maximum_memory and maximum_table_memory.

Before lowering maximum_memory you must make sure the value of the summary variable, Total_server_memory does not exceed the proposed new value for maximum_memory.

Before lowering maximum_table_memory you must make sure the value of the summary variable, Alloc_table_memory does not exceed the proposed new value for maximum_memory.

You should lower maximum_table_memory before lowering maximum_memory.