pgroll is a command-line tool designed to facilitate safe and reversible schema migrations for PostgreSQL databases, ensuring zero downtime. Developed by Xata, pgroll aims to simplify the typically complex and risky process of database schema changes. It employs a high-level JSON format for defining migrations, making it easy to execute and integrate into continuous delivery workflows.
Key features of pgroll include maintaining two versions of the schema (previous and next) simultaneously during the migration process, allowing for instant rollbacks. This ensures that previous versions of applications remain functional while the migration is in progress. The tool uses the expand and contract pattern to evolve the database schema without locking data access, thus preventing unexpected downtime. It also handles automatic data backfills to ensure backward compatibility.
pgroll abstracts the intricacies of schema migrations, such as adding constraints or renaming columns, into simple commands, significantly reducing the manual effort typically required. This streamlining allows for complex updates to be performed with minimal disruption to existing client applications. Once the migration is complete and all clients have been updated, the old schema elements can be safely removed.
Overall, pgroll offers a robust solution for managing PostgreSQL schema migrations, making them safer, easier, and more integrated into regular deployment workflows.
Pricing
Pricing information is not available