airavata-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Suresh Marru <sma...@apache.org>
Subject Re: Database Version Control for Airavata
Date Thu, 12 Jan 2017 21:34:17 GMT
Hi Anuj,

Have you looked at https://flywaydb.org/ <https://flywaydb.org/> ? Its maven integration
caught my attention. Just curios how it compared with the liquibase or dbdiff you have discussed
below.

Suresh

> On Dec 27, 2016, at 1:31 PM, Miller, Mark <mmiller@sdsc.edu> wrote:
> 
> Thanks Anuj, For taking the time to send that, it was super helpful, and answered my
questions.
> Mark
>   <>
> From: Anuj Bhandar [mailto:bhandar.anuj@gmail.com] 
> Sent: Tuesday, December 27, 2016 10:23 AM
> To: dev@airavata.apache.org
> Subject: Re: Database Version Control for Airavata
>  
> HI Mark,
> 
> Liquibase is a Database Version control tool, it gives you the ability to rollback any
changes (commit) on DataBase Schema just like GIT, but it will only be useful for future builds,
i.e. if you implement Liquibase in current build, make changes on top of that, then those
changes can be rolled back, in short the version to be rolled back should be present in the
repository. Works just like GIT for source code.
> 
> But if you are referring to Airavata's scenario, i.e. we have two version of DB schema's,
one for Development and the other for Production, then a tool like DBDiff (https://github.com/DBDiff/DBDiff
<https://github.com/DBDiff/DBDiff>) compares the two different versions and generates
Delta SQL scripts, which can be run on the DB schema's, DBDiff has the ability to generate
both UP and Down Migration scripts.
> 
> I hope that I have answered the question, please revert back if you need further details.
> 
> Thanks and best regards,
> Anuj Bhandar
> MS Computer Science
> Indiana University Bloomington
> +1 812 361 9414
> 
> On 12/27/2016 9:19 AM, Christie, Marcus Aaron wrote:
> Mark, 
>  
> Anuj might know more about this but I thought I would chime in. I believe this is something
that database migration tools can do. I haven’t tried that though. Here’s Liquibase’s
support for rollback scripts: http://www.liquibase.org/documentation/rollback.html <http://www.liquibase.org/documentation/rollback.html>
>  
> Marcus
>  
> On Dec 25, 2016, at 8:49 AM, Miller, Mark <mmiller@sdsc.edu <mailto:mmiller@sdsc.edu>>
wrote:
>  
> Hi Anuj,
>  
> Very interesting. I had a question, rather than a vote. We have found (at CIPRES) that
we really wish we had the ability to make DB schema changes and test them and roll them back
if there is an issue with what we tried. I wonder if this is something the new or existing
DBs can do in AIravata?
>  
> Mark
>  
> From: Pierce, Marlon [mailto:marpierc@iu.edu <mailto:marpierc@iu.edu>] 
> Sent: Friday, December 23, 2016 10:11 AM
> To: dev@airavata.apache.org <mailto:dev@airavata.apache.org>
> Subject: Re: Database Version Control for Airavata
>  
> +1 for looking into Liquibase. I’d be interested to hear other opinions.
> 
> Marlon
>  
> From: Anuj Bhandar <bhandar.anuj@gmail.com <mailto:bhandar.anuj@gmail.com>>
> Reply-To: "dev@airavata.apache.org <mailto:dev@airavata.apache.org>" <dev@airavata.apache.org
<mailto:dev@airavata.apache.org>>
> Date: Friday, December 23, 2016 at 12:55 PM
> To: "dev@airavata.apache.org <mailto:dev@airavata.apache.org>" <dev@airavata.apache.org
<mailto:dev@airavata.apache.org>>
> Subject: Database Version Control for Airavata
>  
> Hello Dev,
> Merry Christmas ! Hope you guys are doing good.
> As a part of the Airavata 0.17 release, we are faced with a industry standard problem
of migrating our old master database to the new Development database, the effort needed to
manually write migration SQL scripts is huge.
> Hence for the current release, I'm relying on DBDiff (http://dbdiff.github.io/DBDiff/
<http://dbdiff.github.io/DBDiff/>) for generating Delta SQL scripts for the entire database
and manually write scripts for complex DB schema changes.
> To address the issue in future releases, I propose to implement a database version control
system like Liquibase (http://www.liquibase.org/ <http://www.liquibase.org/>) for Airavata,
this will help automate the creation of delta scripts and also adding additional functionality
like backward compatibility between releases.
> Please feel to suggest changes and also comment about the products I'm using to accomplish
these tasks.
> Thanks and best regards,
> Anuj Bhandar
> MS Computer Science
> Indiana University Bloomington
> +1 812 361 9414
>  
>  


Mime
View raw message