a month ago
Railway Postgres stores its data on a volume, and volume backups are
copy-on-write snapshots. If a scheduled snapshot is taken while the
Postgres service is running and accepting writes, is the resulting
backup transactionally consistent -- i.e. does restoring it give a
database in a clean, committed state -- or is it a crash-consistent
snapshot that Postgres recovers from via WAL replay on startup, as it
would after a power loss? Is there any risk of a restored volume being
unrecoverable or silently corrupt? We're storing financial records and
need to know which guarantee we have.
Pinned Solution
a month ago
Restoring is crash-consistent, Postgres will replay the WAL on startup to bring it to a clean state. In-flight operations will be rolled back.
Also, there isn't a risk of the volume being unrecoverable or corrupted under normal operations.
1 Replies
a month ago
This thread has been opened as a bounty so the community can help solve it.
Status changed to Open Railway • about 1 month ago
a month ago
Restoring is crash-consistent, Postgres will replay the WAL on startup to bring it to a clean state. In-flight operations will be rolled back.
Also, there isn't a risk of the volume being unrecoverable or corrupted under normal operations.
Status changed to Solved mayori • about 1 month ago