robdiciuccio opened a new issue #13351: URL: https://github.com/apache/superset/issues/13351
## [SIP] Proposal for Database migration standards ### Motivation Reduce pain around metadata database migrations by ensuring standards are followed and appropriate reviews are obtained before merging. ### Proposed Change [SIP-57](https://github.com/apache/superset/issues/12566) (Semantic Versioning) introduced standards for avoiding breaking changes and general best practices for database migrations. The proposed changes below are in addition to those standards: - Migration files must have a functional `down` method to effectively rollback changes introduced in the `up` method. - Migrations should be configured to complete fully in a single run; any failures should trigger a rollback. - PRs introducing database migrations must include runtime estimates and downtime expectations. - Establish Github [code owners](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners) on the `superset/migrations` directory to ensure PMC members are notified of new or updated migrations. - Require **two** approvals for PRs that include database migrations, including committers from multiple organizations. ### New or Changed Public Interfaces None. ### New dependencies No additional package dependencies. ### Migration Plan and Compatibility Workflow changes only. Process for running migrations unchanged. ### Rejected Alternatives The status quo, which has resulted in quite a bit of thrash, deployment roadblocks and external discussions between Superset users. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
