avro migration defs. patch by stuhood, reviewed by gdusbabek. CASSANDRA-1308

git-svn-id: https://svn.apache.org/repos/asf/cassandra/trunk@981646 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Gary Dusbabek 2010-08-02 18:18:46 +00:00
parent 00c108a1a5
commit fdc4f50298
1 changed files with 49 additions and 0 deletions

View File

@ -22,6 +22,9 @@
@namespace("org.apache.cassandra")
protocol InterNode {
@namespace("org.apache.cassandra.utils.avro")
fixed UUID(16);
/* NB: Until AVRO-495: must be kept sync'd with the public IndexType. */
@namespace("org.apache.cassandra.config.avro")
enum IndexType {
@ -66,4 +69,50 @@ protocol InterNode {
int replication_factor;
array<CfDef> cf_defs;
}
@namespace("org.apache.cassandra.db.migration.avro")
record AddColumnFamily {
org.apache.cassandra.config.avro.CfDef cf;
}
@namespace("org.apache.cassandra.db.migration.avro")
record AddKeyspace {
org.apache.cassandra.config.avro.KsDef ks;
}
@namespace("org.apache.cassandra.db.migration.avro")
record DropColumnFamily {
string ksname;
string cfname;
boolean block_on_deletion;
}
@namespace("org.apache.cassandra.db.migration.avro")
record DropKeyspace {
string ksname;
boolean block_on_deletion;
}
@namespace("org.apache.cassandra.db.migration.avro")
record RenameColumnFamily {
string ksname;
int cfid;
string old_cfname;
string new_cfname;
}
@namespace("org.apache.cassandra.db.migration.avro")
record RenameKeyspace {
string old_ksname;
string new_ksname;
}
@namespace("org.apache.cassandra.db.migration.avro")
record Migration {
org.apache.cassandra.utils.avro.UUID old_version;
org.apache.cassandra.utils.avro.UUID new_version;
bytes row_mutation;
string classname;
union { AddColumnFamily,DropColumnFamily,RenameColumnFamily,AddKeyspace,DropKeyspace,RenameKeyspace } migration;
}
}