cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Boxenhorn <>
Subject Re: Import/Export of Schema Migrations
Date Fri, 13 May 2011 12:15:23 GMT
Actually, I want a way to propagate *any* changes from development to
staging to production, but schema changes are the most important.

Could I use 2221 to propagate schema changes by deleting the schema in the
target cluster, doing "show schema" in the source cluster, redirecting to a
file, and running the file as a script in the target cluster?

Of course, I would have to delete the files of dropped CFs by hand
(something I *hate* to do, because I'm afraid of making a mistake), but it
would be a big improvement.

I am open to any other ideas of how to propagate changes from one cluster to
another in an efficient non-error-prone fashion. Our development environment
(i.e. development, staging, production) is pretty standard, so I'm sure that
I'm not the only one with this problem!

On Fri, May 13, 2011 at 12:51 PM, aaron morton <>wrote:

> What sort of schema changes are you making?  can you manage them as a CLI
> script under source control ?
> You may also be interested in  CASSANDRA-2221.
> Cheers
> Aaron
> -----------------
> Aaron Morton
> Freelance Cassandra Developer
> @aaronmorton
> On 12 May 2011, at 20:45, David Boxenhorn wrote:
> My use case is like this: I have a development cluster, a staging cluster
> and a production cluster. When I finish a set of migrations (i.e. changes)
> on the development cluster, I want to apply them to the staging cluster, and
> eventually the production cluster. I don't want to do it by hand, because
> it's a painful and error-prone process. What I would like to do is export
> the last N migrations from the development cluster as a text file, with
> exactly the same format as the original text commands, and import them to
> the staging and production clusters.
> I think the best place to do this might be the CLI, since you would
> probably want to view your migrations before exporting them. Something like
> this:
> show migrations N;                    Shows the last N migrations.
> export migrations N <fileName>;       Exports the last N migrations to file
> fileName.
> import migrations <fileName>;         Imports migrations from fileName.
> The import process would apply the migrations one at a time giving you
> feedback like, "applying migration: update column family...". If a migration
> fails, the process should give an appropriate message and stop.
> Is anyone else interested in this? I have created a Jira ticket for it
> here:

View raw message