[ 
https://issues.apache.org/jira/browse/CASSANDRA-1391?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13147216#comment-13147216
 ] 

Jonathan Ellis commented on CASSANDRA-1391:
-------------------------------------------

bq. My preference would be to model this on our Row conflict resolution

I think we can make it even simpler, by moving schema out of avro and into 
native CFs.

Each KS/CF would be a row.  Attributes would be columns.  When columns change 
you run the appropriate ALTER code.  If you get an update that's obsolete 
(applying it does not change the schema b/c it has older timestamp) then it is 
no-op.

Schema version would become some kind of md5 or sha of the CF contents (all 
rows + all columns).

The only problem is you need to be a little careful to open the schema CFs 
before anything else, but that's relatively easy I think.
                
> Allow Concurrent Schema Migrations
> ----------------------------------
>
>                 Key: CASSANDRA-1391
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1391
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 0.7.0
>            Reporter: Stu Hood
>            Assignee: Pavel Yaskevich
>             Fix For: 1.1
>
>         Attachments: 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: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to