airavata-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anuj <bhandar.a...@gmail.com>
Subject Re: Database Version Control for Airavata
Date Thu, 12 Jan 2017 21:56:47 GMT
hello Suresh,

I had gone through the documentation for FlywayDB, Though the docs are 
not very clear, here are my observations

     * FlywayDB doesn't generate delta Scripts like DBDiff does

     * It is mainly used to run the migration scripts which are already 
created by some other means, like the one's we generated using DBDiff

     * https://flywaydb.org/documentation/migration/sql - We just point 
the FlywayDB to a classpath where the scripts are stored, it will run 
them accordingly.

please correct me if I am wrong, FlywayDB can be used along with DBDiff 
or Liquibase to bring in automation.

Thanks and best regards,

*Anuj Bhandar*
MS Computer Science
Indiana University Bloomington
+1 812 361 9414


On 01/12/2017 04:34 PM, Suresh Marru wrote:
> Hi Anuj,
>
> Have you looked at 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 
>> <mailto: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 <mailto: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) 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
>>     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]
>>         *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/) 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/) 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