fix: prevent ownership reconciliation from blocking app startup #1
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
homelab/postgres-operator!1
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/3f88f077-ownership-locks"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Prevent ownership reconciliation from blocking Authentik startup while its migration worker holds table locks. Query catalogs for public objects with the wrong owner, repair each in its own transaction with a two-second local lock timeout, and return failures for controller retry. The complete repair has a 30-second deadline. Skip table row types and generated array types, whose owners follow the parent object.
HOMEIT-368. Pair with Authentik startup protection.
Evidence
make test buildpasses; Helm lint/render and API server dry-run pass. Compatible Go 1.25 lint passes with zero issues.d6ecb61: unit tests, lint, Kind E2E. The E2E run builds the operator image, starts it in Kind and verifies PostgresCluster/PostgresDatabase reconciliation.repo showreturns 404). Docker is unavailable locally; the existing mirror CI performed the image build and E2E run.Merge danger
Door: one-way publication. The existing mirror main workflow automatically creates v0.0.19 and publishes the image, release and Helm chart; Morten must approve before merge. Restoring the previous image does not undo object ownership repairs already committed. Published artifacts remain.
Blast radius: household. The operator serves every managed PostgresDatabase. Ownership privileges are unchanged, but failures now report not ready and retry instead of being swallowed. No schema migration, credential rotation or deletion is introduced.
Rollback and verification