Re: Schema version control

From: Thomas Kellerer <spam_eater(at)gmx(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Schema version control
Date: 2011-02-10 23:44:36
Message-ID: ij1t93$3p6$1@dough.gmane.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Bill Moran wrote on 11.02.2011 00:37:
> Anyway ... based on nothing more than a quick scan of their quickstart
> page, here are the differences I see:
> * Liquibase is dependent on you creating "changesets". I'm sure this
> works, but we took a different approach with dbsteward. dbsteward
> expects you to maintain XML files that represent the entire database,
> then dbsteward does the work of figuring out what changed. Our
> opinion was that svn already does the work of tracking changes, why
> reinvent the wheel.

That sounds like a very nice feature.

> * Looks like liquibase requires you to talk to the database to push
> the changes? dbsteward outputs a DDL/DML file that you can push
> in whatever way is best. This is important to us because we use
> Slony, and DDL changes have to be submitted through EXECUTE SCRIPT()

No, Liquibase can also emit the SQL that it would execute.

> * dbsteward has built-in Slony support (i.e. it will make slony configs
> as well as slony upgrade scripts in addition to DDL/DML)

> * liquibase has a lot more supported platforms at this time. dbsteward
> only supports PostgreSQL and MSSQL (because that's all that we needed)
> but I expect that other support will come quickly once we release it.

> * Does liquibase support things like multi-column indexes and multi-
> column primary keys? dbsteward does.

Yes without problems (including of course the necessary foreing keys)


> Anyway ... sorry for the teaser on this, but we're trying to get through
> all the hoops the company is requiring us to do to release it, and we
> think we're on track to be ready by PGCon, so there'll be a website up
> as soon as we can get it.

Thanks for the feedback, I would really like to see it.

The approach that you do not record the changes but simply let the software find them seems like a very nifty feature.
I wonder how you detect renaming a table or a column?

On which programming language is dbstewart based?

Regards
Thomas

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Rob Sargent 2011-02-11 00:43:26 Re: Schema version control
Previous Message Bill Moran 2011-02-10 23:37:31 Re: Schema version control