[ 
https://issues.apache.org/jira/browse/CASSANDRA-1186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12886564#action_12886564
 ] 

Stu Hood edited comment on CASSANDRA-1186 at 7/8/10 8:09 PM:
-------------------------------------------------------------

These patches (in particular 0002 and 0004) begin to lay the groundwork for 
using Avro serialization throughout Cassandra.

EDIT: It's important to note that only one-shot/object serialization (where an 
object is serialized along with its Avro schema) is implemented at this point. 
It might be worth considering storing the Avro schemas for all supported 
versions within the application so that we can pass around schema/protocol 
'versions' instead of full schemas.

The only other significant change is that rows in the definitions table now 
store a single column contain a list of all keyspaces for a version.

Should be ready for review.

      was (Author: stuhood):
    These patches (in particular 0002 and 0004) begin to lay the groundwork for 
using Avro serialization throughout Cassandra.

The only other significant change is that rows in the definitions table now 
store a single column contain a list of all keyspaces for a version.

Should be ready for review.
  
> 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-and-begin-generating-an-inte.patch, 
> 0003-Split-OutputBuffer-out-for-reuse.patch, 
> 0004-Add-utility-functions-for-dealing-with-Avro-serializ.patch, 
> 0005-Replace-serialization-code-in-KS-CF-CMetaData.patch, 
> 0006-Port-Migrations-and-DefsTable-to-Avro.patch, 
> 0007-Separate-Definitions-from-Migrations.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