cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Yaskevich (Commented) (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-3953) Replace deprecated and removed CfDef and KsDef attributes in thrift spec
Date Mon, 27 Feb 2012 21:57:49 GMT


Pavel Yaskevich commented on CASSANDRA-3953:

That does not affect new schema functions at all because those attributes won't be set if
they are not present in serialized schema (which is fine because they are optional) and even
if they are it will just set them :)
> Replace deprecated and removed CfDef and KsDef attributes in thrift spec
> ------------------------------------------------------------------------
>                 Key: CASSANDRA-3953
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>    Affects Versions: 1.0.0
>            Reporter: paul cannon
>            Assignee: paul cannon
>            Priority: Minor
>              Labels: thrift_protocol
>             Fix For: 1.1.0
> In a discussion on irc this morning around the "interface backwards compatibility" topic
(as explained in CASSANDRA-3951), the opinion was expressed that it might not hurt to provide
backwards compat for c* servers as well as clients.
> This could be done by adding back all CfDef and KsDef attributes that were removed since
thrift spec 19.0.0 (0.7.0-beta2). Namely:
> * bool CfDef.preload_row_cache (only in 0.7.0 betas; probably not necessary)
> * double CfDef.row_cache_size
> * double CfDef.key_cache_size
> * i32 CfDef.row_cache_save_period_in_seconds
> * i32 CfDef.key_cache_save_period_in_seconds
> * i32 CfDef.memtable_flush_after_mins
> * i32 CfDef.memtable_throughput_in_mb
> * double CfDef.memtable_operations_in_millions
> * string CfDef.row_cache_provider
> * i32 CfDef.row_cache_keys_to_save
> * double CfDef.merge_shards_chance
> * i32 KsDef.replication_factor
> Obviously these attributes should not be expected to have any effect when used with the
current version of Cassandra; they may be marked "ignored", "unused", or "deprecated" or whatever,
as appropriate.
> This should allow library software to be built against one thrift spec (the latest) and
be then expected to work (keeping all necessary attributes available and usable) against any
Cassandra version back to 0.7.0-beta2.
> (To really achieve this goal 100%, we should reinstate the system_rename_column_family()
and system_rename_keyspace() calls too, and just have them raise InvalidRequestException,
but they never really worked anyway, so it's probably better to leave them out.)

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message