The rake task gitlab:backup:create should take consistent snapshots of the main & ci databases
## Proposal We can follow the snapshots approach that was suggested in this comment https://gitlab.com/gitlab-org/gitlab/-/issues/364292#note_1013182777: 1. Open from `rake` task a transaction that will set `isolation level`, and do `pg_export_snapshot()` 1. Do whatever it takes to have `pg_export_snapshot()` as consistent across many databases as possible 1. Run `pg_dump --snapshot=name-of-snapshot` to export exactly at the synchronization point Ref.: * https://www.postgresql.org/docs/current/sql-set-transaction.html * https://www.postgresql.org/docs/current/functions-admin.html#FUNCTIONS-SNAPSHOT-SYNCHRONIZATION-TABLE This effectively solves consistency between exports.
issue