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

Jonathan Ellis commented on CASSANDRA-3951:
-------------------------------------------

bq. older clients should be able to talk to a new Cassandra, but newer clients 
are not guaranteed to be able to talk to an old Cassandra

This is my preferred policy.  In the general case, whether a client wants to 
support old C* versions is really up to individual client dev teams, and not 
something we can really control server side.

Any objections to codifying policy as such?
                
> make thrift interface "backwards compat" guarantee more specific
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-3951
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3951
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API
>    Affects Versions: 0.5
>            Reporter: paul cannon
>            Assignee: paul cannon
>            Priority: Minor
>              Labels: thrift_protocol
>             Fix For: 1.0.10
>
>
> The comments in cassandra.thrift read:
> {noformat}
> # The API version (NOT the product version), composed as a dot delimited
> # string with major, minor, and patch level components.
> #
> #  - Major: Incremented for backward incompatible changes. An example would
> #           be changes to the number or disposition of method arguments.
> #  - Minor: Incremented for backward compatible changes. An example would
> #           be the addition of a new (optional) method.
> #  - Patch: Incremented for bug fixes. The patch level should be increased
> #           for every edit that doesn't result in a change to major/minor.
> #
> # See the Semantic Versioning Specification (SemVer) http://semver.org.
> {noformat}
> This is great to have documented guarantees, but it is unclear whether the 
> "backward compatibility" discussed refers to the Cassandra server being able 
> to talk to clients built against older thrift specs, or whether it refers to 
> clients being able to talk to Cassandra servers built against older thrift 
> specs.
> In a conversation on irc this morning, I found out that it actually meant 
> that the former (older clients should be able to talk to a new Cassandra, but 
> newer clients are not guaranteed to be able to talk to an old Cassandra). On 
> the other hand, people seemed willing to extend the compatibility guarantees 
> in *both* directions going forward, since we would like to switch to a 
> dedicated CQL transport anyway.
> Either way, the comments in cassandra.thrift should be specific about what is 
> guaranteed so that client and library authors, and Cassandra developers, all 
> agree what to expect.

--
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