Skip to content

feat: add check_empty_wal_archive to WAL and RestoreJobHooks requests#353

Open
mnencia wants to merge 1 commit into
mainfrom
dev/check-empty-wal-archive
Open

feat: add check_empty_wal_archive to WAL and RestoreJobHooks requests#353
mnencia wants to merge 1 commit into
mainfrom
dev/check-empty-wal-archive

Conversation

@mnencia

@mnencia mnencia commented Jul 16, 2026

Copy link
Copy Markdown
Member

Verifying a WAL archive destination before writing to it is a decision about the Cluster's state, and that is the operator's domain, not the plugin's. Today, though, a plugin that performs this check re-derives the decision on its own (e.g. by reading a Cluster annotation directly), duplicating policy that belongs upstream instead of relying on a single source of truth.

Add an explicit, optional boolean field to WALArchiveRequest and to RestoreJobHooks' RestoreRequest so the operator can compute the decision once and hand it to the plugin explicitly. The field is optional: an unset value means the request comes from an operator that predates this field, and the plugin is free to handle that case as it sees fit.

Related: cloudnative-pg/cloudnative-pg#11216 (operator) and cloudnative-pg/plugin-barman-cloud#1009 (plugin) consume this field.

@mnencia
mnencia requested a review from a team as a code owner July 16, 2026 14:05
Verifying a WAL archive destination before writing to it is a decision
about the Cluster's state, and that is the operator's domain, not the
plugin's. Today, though, a plugin that performs this check re-derives
the decision on its own (e.g. by reading a Cluster annotation
directly), duplicating policy that belongs upstream instead of relying
on a single source of truth.

Add an explicit, optional boolean field to WALArchiveRequest and to
RestoreJobHooks' RestoreRequest so the operator can compute the
decision once and hand it to the plugin explicitly. The field is
optional: an unset value means the request comes from an operator that
predates this field, and the plugin is free to handle that case as it
sees fit.

Signed-off-by: Marco Nenciarini <marco.nenciarini@enterprisedb.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant