Multi-version schemas
pgroll uses PostgreSQL views to present two versions of the schema at the same time. This means you don't need multiple steps or temporary code for backwards compatibility.
Update your PostgreSQL schema online and with safe rollbacks.
Downtime, table locking, and rollback complexity are common risks with traditional schema changes tools. Our unique approach solves these problems.
pgroll is our popular open source tool that enables zero-downtime, fully reversible schema changes for PostgreSQL.
pgroll uses PostgreSQL views to present two versions of the schema at the same time. This means you don't need multiple steps or temporary code for backwards compatibility.
pgroll automates the expand-and-contract pattern, handling the complex steps of schema changes for you. Hidden columns are added during the expand step, and removed during the contract step.
Automates data backfills and data conversion and/or data manipulation, so that you don't need one-time scripts to do it. pgroll streamlines multi-step migrations into a single consistent workflow.
You can use the Xata CLI to easily create and switch database branches during development and to integrate Xata into your CI/CD.
Xata is the only solution on the market that offers a complete developer workflow for PostgreSQL. This includes instant development branches as well as merging back: apply the schema changes to production with zero-downtime.
Keep your production database where it is, whether it is AWS RDS, Aurora, GCP Cloud SQL, Azure Database, or even self-hosted.
Mask sensitive data using configurable transformers that maintain referential integrity.
Learn moreGet a nightly synced replica of production with sensitive data removed. Ready for testing.
Learn moreFrom the staging environment, instantly create Copy-on-Write branches for each pull request to accelerate development, testing, and collaboration.
Learn moreApply database changes confidently with pgroll, serving old and new schema versions in parallel for smooth, lock-free migrations.