All,

Following from the discussion of [1], I have written a small tool [2] to detect 
potential conflicts related to ACS DB changes.
With the input supplied by that tool, I will proceed to check every commit 
since tag 4.2 up to the head of master.
For every commit that introduces relevant changes to the DB I will create a 
Liquibase [3] change set, apply it to a running ACS DB, run automated system 
tests and possibly refine the change set until the DB is left in a consistent 
state.
(Liquibase is one of the tools proposed in [1] by Rajani to help managing the 
changes to the DB. See [1] for more details on that.)

My goal is twofold: (1) assess how suitable Liquibase is for managing changes 
to ACS DB; and (2) how frequent are "breaking" changes to the DB made.
By "breaking" changes I mean changes that otherwise would require a fresh DB to 
start with.
With the data I will collect I expect to be able to say something about how 
feasible it is to use Liquibase, and how involved would it be to ask every 
developer to make independent and incremental changes to the DB related code.

I will report back on my findings, but feel free to jump in and help out anyway 
you see possible.

Cheers,
Miguel


[1] http://markmail.org/message/7qohq2sbumthjhw6
[2] https://github.com/schubergphilis/cloudstack-db-updater
[3] http://www.liquibase.org/

Reply via email to