You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by gd...@apache.org on 2010/08/02 20:18:47 UTC

svn commit: r981646 - /cassandra/trunk/internode/cassandra.genavro

Author: gdusbabek
Date: Mon Aug  2 18:18:46 2010
New Revision: 981646

URL: http://svn.apache.org/viewvc?rev=981646&view=rev
Log:
avro migration defs. patch by stuhood, reviewed by gdusbabek. CASSANDRA-1308

Modified:
    cassandra/trunk/internode/cassandra.genavro

Modified: cassandra/trunk/internode/cassandra.genavro
URL: http://svn.apache.org/viewvc/cassandra/trunk/internode/cassandra.genavro?rev=981646&r1=981645&r2=981646&view=diff
==============================================================================
--- cassandra/trunk/internode/cassandra.genavro (original)
+++ cassandra/trunk/internode/cassandra.genavro Mon Aug  2 18:18:46 2010
@@ -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;
+    }
 }