[ 
https://issues.apache.org/jira/browse/CASSANDRA-1186?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stu Hood updated CASSANDRA-1186:
--------------------------------

    Attachment: 0004-Add-utility-functions-for-dealing-with-Avro-serializ.patch
                0005-Sync-up-Avro-schema-with-Thrift-and-add-CfDef.id.patch
                0006-Replace-serialization-code-in-KS-CF-CMetaData-and-po.patch

Rebased for trunk, and applied the following changes:

* Removed the 'private' Avro schema that was in pre-0002: left behind the 
build.xml generalization
** Instead, serialization of config.KS/CF/CMetaData uses avro.Ks/Cf/ColumnDef
* Switched back to a 'column per keyspace' datamodel in the "Schema" cf, with a 
magic column name to store the Avro schema
* Squashed pre-0005 and pre-0006 to 0006
* Removed pre-0007

Ready for another look. Thanks for your patience!

> futureproof [KS|CF]MetaData
> ---------------------------
>
>                 Key: CASSANDRA-1186
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1186
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>    Affects Versions: 0.7
>            Reporter: Jonathan Ellis
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 0.7
>
>         Attachments: 
> 0001-Move-Yaml-related-classes-aside-to-reuse-names.patch, 
> 0002-Extract-Avro-generation-for-future-reuse.patch, 
> 0003-Split-OutputBuffer-out-for-reuse.patch, 
> 0004-Add-utility-functions-for-dealing-with-Avro-serializ.patch, 
> 0005-Sync-up-Avro-schema-with-Thrift-and-add-CfDef.id.patch, 
> 0006-Replace-serialization-code-in-KS-CF-CMetaData-and-po.patch
>
>
> KSMetaData/CFMetaData serialization is fragile.  We need to be able to add 
> fields easily without breaking when we read old-style serialized bytes.
> Avro and Thrift are designed to handle this.  We should probably use one of 
> those rather than re-inventing the wheel.  If Avro is mature enough for this 
> then let's use that, otherwise let's use Thrift.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to