Replace deprecated and removed CfDef and KsDef attributes in thrift spec
------------------------------------------------------------------------

                 Key: CASSANDRA-3953
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3953
             Project: Cassandra
          Issue Type: Improvement
          Components: API
    Affects Versions: 1.0.0
            Reporter: paul cannon
            Assignee: paul cannon
            Priority: Minor
             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: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to