Thanks Marcus this is very helpful! Best, Abhinav
On 8/9/22, 6:26 PM, "Christie, Marcus Aaron" <machr...@iu.edu> wrote: Hi Abhinav, I wrote up some notes on making database schema migration scripts here: https://github.com/apache/airavata/blob/master/modules/registry/registry-core/README.md I tried to use OpenJPA's capability to generate schema migration scripts. Unfortunately I ran into a lot of issues, and I wouldn't recommend that approach. More recently, with a different project, I've had a lot of success using Liquibase to automate generating database schema migration scripts. One key principle that's important to practice, is Expand/Migrate/Contract. See for more information: https://www.martinfowler.com/bliki/ParallelChange.html. The idea is to introduce new functionality and migrate all clients to it before removing the old functionality. I've written up a draft of how to apply this principle to database migrations, see attached file. But this principle can apply to API evolution and deployments as well.