[
https://issues.apache.org/jira/browse/CASSANDRA-1391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Ellis updated CASSANDRA-1391:
--------------------------------------
Attachment: 1391-rebased.txt
rebased patch attached. comments:
- validateSchemaAgreement is unnecessary now right?
- the old Migration infrastructure feels unnecessarily heavyweight now. Can we
move the validation into the CassandraServer methods, and then just invoke a
MigrationHelper method from a runnable there?
- should we snapshot the old avro schema before nuking it?
- SystemTable.dropOldSchemaTables is a no-op. I think we can take this out
entirely since loadSchema/fromAvro takes care of it?
- Can you add a comment describing the layout of the new schema CFs to
defstable or systemtable?
- I'd prefer to leave the low level slicing / deserialize in SystemTable class
instead of scattered between Schema and DefsTable
> 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
> Priority: Critical
> Fix For: 1.1
>
> Attachments: 1391-rebased.txt, 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