cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (Commented) (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-1391) Allow Concurrent Schema Migrations
Date Fri, 06 Jan 2012 15:14:40 GMT


Sylvain Lebresne commented on CASSANDRA-1391:

bq. Let me get this clear - migrations use apply/diff internally for their actions upon KEYSPACE_CF

But then why do the patches still use thrift internally (I have only quickly eyeballed the
patches but it does seem to use thrift, which seems confirmed by Jonathan comments).

bq. sending MIGRATION_REQUEST message with list of its local migrations attached

Does that mean we still keep the list of all migrations (diffs) that have ever been applied?
If so, I would be in favor of getting rid of it, as it seems to me we can do without (node
could use the diffs between their schema and another node schema and base whatever action
have to be done (directories creation, etc...) on that, be we wouldn't keep the diff afterwards).

bq. Current schema distribution is switched to be pull oriented

This is probably not a huge deal but it means that schema changes will be a tad slower, based
on gossip reactivity.
> Allow Concurrent Schema Migrations
> ----------------------------------
>                 Key: CASSANDRA-1391
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 0.7.0
>            Reporter: Stu Hood
>            Assignee: Pavel Yaskevich
>             Fix For: 1.1
>         Attachments: 0001-new-migration-schema-and-avro-methods-cleanup.patch, 0002-avro-removal.patch,
0003-oldVersion-removed-new-migration-distribution-schema.patch, CASSANDRA-1391.patch
> CASSANDRA-1292 fixed multiple migrations started from the same node to properly queue
themselves, but it is still possible for migrations initiated on different nodes to conflict
and leave the cluster in a bad state. Since the system_add/drop/rename methods are accessible
directly from the client API, they should be completely safe for concurrent use.
> It should be possible to allow for most types of concurrent migrations by converting
the UUID schema ID into a VersionVectorClock (as provided by CASSANDRA-580).

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message