From fdc4f50298079fafbf64c2a2a3affde3647b01d2 Mon Sep 17 00:00:00 2001 From: Gary Dusbabek Date: Mon, 2 Aug 2010 18:18:46 +0000 Subject: [PATCH] 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 --- internode/cassandra.genavro | 49 +++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/internode/cassandra.genavro b/internode/cassandra.genavro index a637d4bbd3..bc0da33d32 100644 --- a/internode/cassandra.genavro +++ b/internode/cassandra.genavro @@ -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 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; + } }