fix(entrypoint): pre-upgrade dump never blocks startup (pg_dump17 vs PG18) #140
No reviewers
Labels
No labels
architecture
backend
bug
ci
config
database
docker
documentation
duplicate
enhancement
frontend
help wanted
invalid
issue-25
issue-26
issue-42
issue-65
issue-67
issue-82
migrations
p0-critical
p1-high
p2-medium
p3-low
performance
quality
question
security
state-management
testing
timezone
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
fastie81/honbu-manager!140
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/pgdump-version-mismatch"
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?
Problem (caught in deploy-to-test)
The PG18 fix deploy put postgres:18 up and healthy, but the app container crash-looped. Root cause: the app image ships
postgresql-client17, andpg_dumprefuses to target a 18 server (server version mismatch). The pre-upgrade dump step runs underset -e, so its failure killed the entire entrypoint every boot — meaning auto-restore (pg15 → pg18) and migrations never ran.Fix
The pre-upgrade dump is a safety net, not the upgrade path (the upgrade restores the PRIOR-major dump). Now: if
pg_dumpcannot target the server, log the reason, touch the per-major done marker (so it's not retried each boot), and continue to restore → migrate → start.pg_restorereading a prior-major (pg15) dump into the 18 server is unaffected (client 17 safely reads 15-format and writes to 18).Why safe