Note
This parameter is available starting with V1.4.
Description
freeze_trigger_percentage specifies the threshold percentage of the MemStore memory usage for triggering a freeze.
Attributes
| Attribute | Description |
|---|---|
| Parameter type | Int |
| Default value | 20
NoteStarting from V4.0.0, the default value is changed from 70 to 20. |
| Value range | (0, 100) |
| Modifiable | Yes. You can use the ALTER SYSTEM SET statement to modify the parameter. |
| Effective upon OBServer node restart | No. The setting takes effect immediately. |
Considerations
OceanBase Database stores the recently written data in MemStore. To avoid memory overflow, the system provides two important protection mechanisms:
Freeze mechanism: The data in memory is persisted to disk to release memory space.
Throttling mechanism: When the memory pressure is too high, the write speed is reduced to gain time for releasing memory.
The triggering of these two mechanisms is controlled by two tenant-level parameters:
freeze_trigger_percentage(freeze threshold) and writing_throttling_trigger_percentage (throttling threshold).To avoid performance degradation caused by early throttling, the value of writing_throttling_trigger_percentage must be greater than that of
freeze_trigger_percentage.You can adjust the proportion of MemStore memory in a tenant by using the following parameters:
When the Active MemStore memory usage of a tenant reaches
freeze_trigger_percentage * memstore_limit(wherememstore_limit = tenant memory * memstore_limit_percentage), the system automatically triggers a freeze (a prerequisite for a dump) and then schedules a dump. After the dump, the system releases the MemStore memory occupied.When memory is insufficient, you can increase the value of
memstore_limit_percentageand decrease the value offreeze_trigger_percentageto achieve temporary expansion and faster dumps. Thememstore_limit_percentageparameter specifies the proportion of tenant memory available for MemStore writes. The default value is 0, which means that the system automatically adjusts the proportion of tenant memory available for MemStore writes.
Examples
Set the threshold percentage of the MemStore memory usage for triggering a freeze to 20.
obclient> ALTER SYSTEM SET freeze_trigger_percentage=20;
