Skip to content

feat: serve restore hooks from the instance sidecar#1025

Open
armru wants to merge 1 commit into
mainfrom
dev/instance-restore-hooks
Open

feat: serve restore hooks from the instance sidecar#1025
armru wants to merge 1 commit into
mainfrom
dev/instance-restore-hooks

Conversation

@armru

@armru armru commented Jul 20, 2026

Copy link
Copy Markdown
Member

CloudNativePG is moving the bootstrap of new instances from dedicated Jobs into the instance pod itself (cloudnative-pg/cloudnative-pg#11228): the restore that used to run in a recovery Job now happens in-process inside the instance pod before PostgreSQL starts. The sidecar shipped in that pod must therefore answer the same Restore RPC the operator sends over the plugin sockets, so the instance mode now registers the restore-job hooks and advertises the restore-job service capability.

A cluster that only bootstraps from an object store, without continued archiving, previously received no sidecar at all in its instance pods; under the new flow that leaves the bootstrap without a plugin socket, both for the Restore RPC and for wal-restore during the recovery replay. The injection condition is widened to match what the plugin configuration already considers valid, so recovery-only clusters get the sidecar too.

The bootstrap that used to run in a dedicated recovery Job now happens
in-process inside the instance pod before PostgreSQL starts, so the sidecar
shipped in that pod must answer the same Restore RPC the operator sends over
the plugin sockets. The instance mode now registers the restore job hooks and
advertises the restore-job service capability so the operator can reach them.
A cluster that only bootstraps from an object store, without continued
archiving, previously received no sidecar in its instance pods; the injection
condition is widened to match what the plugin configuration already considers
valid, so those clusters get the sidecar too.

Signed-off-by: Armando Ruocco <armando.ruocco@enterprisedb.com>
@armru
armru requested a review from a team as a code owner July 20, 2026 16:29
@dosubot dosubot Bot added size:M This PR changes 30-99 lines, ignoring generated files. enhancement New feature or request go Pull requests that update go code labels Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request go Pull requests that update go code size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant