DB Internals AtlasPostgreSQL 18.6 Home About

Parameter · Write-Ahead Log / Recovery Target

recovery_target_inclusive

Sets whether to include or exclude transaction with recovery target.

  • Default: on
  • Type: bool
  • Applies: Restart required

In plain words

When you give a recovery target, should the target itself be replayed? on (default): yes, stop just after it. off: stop just before it. If the target is the bad transaction, you want off.

For DBAs and operators

Applies to recovery_target_time, recovery_target_xid and recovery_target_lsn. For time: on includes transactions committed exactly at the target time; off stops before them. For XID: whether that transaction's commit is replayed. For LSN: whether the record at that LSN is replayed. Has no effect on recovery_target_name or recovery_target = 'immediate'.

The log tells you which way it went: LOG: recovery stopping after commit of transaction 744, time 2026-10-22 14:04:59+00 versus "stopping before". Read this line in every PITR.

How to change it

Change in postgresql.conf or ALTER SYSTEM, then restart the server.

See it in context

Archiving and point-in-time recovery

Related parameters

recovery_target_time recovery_target_xid recovery_target_lsn

All Write-Ahead Log parameters