You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Edward Capriolo (JIRA)" <ji...@apache.org> on 2014/03/07 18:47:44 UTC
[jira] [Comment Edited] (CASSANDRA-6147) Allow Thrift opt-in to
server-side timestamps
[ https://issues.apache.org/jira/browse/CASSANDRA-6147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13924102#comment-13924102 ]
Edward Capriolo edited comment on CASSANDRA-6147 at 3/7/14 5:47 PM:
--------------------------------------------------------------------
{quote}
I must be missing something, but why can't you make the remove() timestamp optional now and generate server-side timestamps for both Deletion and remove() when a timestamp isn't set?
{quote}
It depends on our take about changing a required field to optional. The only wrinkle would be a new client talking to an older version of the server. Depending on the server version the server may reject or not reject the operation.
Thinking about it again I am ok with making the timestamps optional for deletes as well. What does everyone else think?
was (Author: appodictic):
{quote}
I must be missing something, but why can't you make the remove() timestamp optional now and generate server-side timestamps for both Deletion and remove() when a timestamp isn't set?
{quote}
It depends on our take about changing a required field to optional. The only wrinkle would be a new client talking to an older version of the server. Depending on the server version the server may reject or not reject the operation.
Thinking about it again I am ok with making the timestamps optional for deletes as well. What does everyone else speak.
> Allow Thrift opt-in to server-side timestamps
> ---------------------------------------------
>
> Key: CASSANDRA-6147
> URL: https://issues.apache.org/jira/browse/CASSANDRA-6147
> Project: Cassandra
> Issue Type: Sub-task
> Components: API
> Reporter: Edward Capriolo
> Assignee: Edward Capriolo
> Priority: Minor
> Fix For: 2.1 beta2
>
>
> Thrift users are still forced to generate timestamps on the client side. Currently the way the thrift bindings are generated users are forced to supply timestamps. There are two solutions I see.
> * -1 as timestamp means "generate on the server side"
> This is a breaking change, for those using -1 as a timestamp (which should effectively be no one.
> * Prepare yourself....
> Our thrift signatures are wrong, you can't overload methods in thrift
> thrift.get(byte [], byte[], ts)
> should REALLY be changed to
> GetRequest g = new GetRequest()
> g.setName()
> g.setValue()
> g.setTs() ///optional
> thrift. get( g )
> I know no one is going to want to make this change because thrift is quasi/dead but it would allow us to evolve thrift in a meaningful way. We could simple add these new methods under different names as well.
--
This message was sent by Atlassian JIRA
(v6.2#6252)