Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 18 additions & 1 deletion modules/ROOT/pages/database-internals/checkpointing.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -98,14 +98,31 @@ The default value of `db.tx_log.rotation.retention_policy` is changed from `2 da
For more information, see xref:database-internals/transaction-logs.adoc#transaction-logging-log-retention[Configure transaction log retention policy].

Having the least amount of transaction log data speeds up the checkpoint process.
To configure the number of IOs per second the checkpoint process is allowed to use, use the configuration parameter xref:configuration/configuration-settings.adoc#config_db.checkpoint.iops.limit[`db.checkpoint.iops.limit`].
To configure the number of IOs per second the checkpoint process is allowed to use, set the configuration parameter xref:configuration/configuration-settings.adoc#config_db.checkpoint.iops.limit[`db.checkpoint.iops.limit`].

[NOTE]
====
Disabling the IOPS limit can cause transaction processing to slow down a bit.
For more information, see xref:performance/disks-ram-and-other-tips.adoc#performance-checkpoint-iops-limit[Checkpoint IOPS limit] and xref:configuration/configuration-settings.adoc#_transaction_log_settings[Transaction log settings].
====

Additionally, starting from 2025.07, you can also use xref:configuration/configuration-settings.adoc#config_db.checkpoint.throughput.limit[`db.checkpoint.throughput.limit`] to define checkpoint speed in terms of bytes per second.
Compared to the IOPS limit, the throughput limit enforces a stricter control over flush speed, with the checkpoint process yielding more to stay within the configured throughput.

Starting from 2025.07, the checkpoint log messages also include the average flush speed:

.Example of a log message with IOPS-limited checkpoint
[results]
----
Checkpoint triggered by "Call to db.checkpoint() procedure" @ txId: 92, append index: 92 checkpoint completed in 7s 464ms. Checkpoint flushed 251909 pages (9% of total available pages), in 249641 IOs. Checkpoint performed with IO limit: 600 IOPS, paused in total 70 times(6026 millis). Average checkpoint flush speed: 281.1MiB/s.
----

.Example of a log message with throughput-limited checkpoint
[results]
----
Checkpoint triggered by "Call to db.checkpoint() procedure" @ txId: 88, append index: 88 checkpoint completed in 39s 457ms. Checkpoint flushed 314688 pages (12% of total available pages), in 311753 IOs. Checkpoint performed with IO limit: 64.00MiB/s, paused in total 77 times(38085 millis). Average checkpoint flush speed: 63.04MiB/s.
----

[[checkpoint-logging-and-metrics]]
== Checkpoint logging and metrics

Expand Down