I will move on. I --coincidentally-- happen to have just added a thrift feature http://www.edwardcapriolo.com/roller/edwardcapriolo/entry/thrift_isn_t_going_anywhere. I also have 2-3 jira's open to add thrift features.
Seems like an interesting time to call a vote that effectively adds language that stops me from doing what I want to do. On Tue, Mar 11, 2014 at 4:43 PM, Jonathan Ellis <jbel...@gmail.com> wrote: > Nobody can seriously use or develop against Cassandra with only the > raw Thrift generated code either, so I agree that this is really a > different discussion. > > On Tue, Mar 11, 2014 at 3:38 PM, Edward Capriolo <edlinuxg...@gmail.com> > wrote: > > "I am confused how any of this is relevant to Jonathan's original email." > > > > Here is how: > > > > I believe if native is the new official transport, Cassandra should > include > > the Java driver source code with the project. > > > > Without the driver code inside the project how can someone use/develop > the > > software. > > > > > > On Tue, Mar 11, 2014 at 4:24 PM, Brandon Williams <dri...@gmail.com> > wrote: > > > >> I am confused how any of this is relevant to Jonathan's original email. > >> > >> > >> On Tue, Mar 11, 2014 at 3:13 PM, Edward Capriolo <edlinuxg...@gmail.com > >> >wrote: > >> > >> > "How about the myriad of thrift wrappers that aren't in-tree either?" > >> > > >> > How about all the times we trashed hbase saying "hbase treats non java > >> > people like second class citizens" > >> > > >> > > >> > > >> > http://mail-archives.apache.org/mod_mbox/hbase-user/201108.mbox/%3ccafk14gsrnysj_oev2_utwc-+u4ssdmdsmp2dgrst90hoypw...@mail.gmail.com%3E > >> > > >> > Nice to see us pulling a total 180. > >> > > >> > > >> > On Tue, Mar 11, 2014 at 4:09 PM, Brandon Williams <dri...@gmail.com> > >> > wrote: > >> > > >> > > How about the myriad of thrift wrappers that aren't in-tree either? > >> > > > >> > > > >> > > On Tue, Mar 11, 2014 at 3:03 PM, Edward Capriolo < > >> edlinuxg...@gmail.com > >> > > >wrote: > >> > > > >> > > > "Other databases treat this issue differently, and there are a > set of > >> > > > tradeoffs. Mysql's decision may not be the best for Cassandra." > >> > > > > >> > > > Do you know of any other database that does not provide it's own > >> > driver? > >> > > > > >> > > > > >> > > > On Tue, Mar 11, 2014 at 3:55 PM, Tyler Hobbs <ty...@datastax.com> > >> > wrote: > >> > > > > >> > > > > On Tue, Mar 11, 2014 at 2:24 PM, Edward Capriolo < > >> > > edlinuxg...@gmail.com > >> > > > > >wrote: > >> > > > > > >> > > > > > "The native protocol spec is the source of truth. If > Cassandra's > >> > > > > behavior > >> > > > > > doesn't match the spec, it's a bug. Likewise for any drivers. > >> I'm > >> > > not > >> > > > > > sure how this makes it unclear whether a bug is server-side or > >> > > > > > client-side. Maybe an example scenario would be useful?" > >> > > > > > > >> > > > > > In the near future. I am a cassadra committer. I find a bug > >> between > >> > > > > > cassanda server and java client driver. For example, the > server > >> is > >> > > > > sending > >> > > > > > an unsigned by the other is expecting a signed byte. > >> > > > > > > >> > > > > > As a cassandra committer I can only change half of the > equation. > >> I > >> > > > change > >> > > > > > the cassandra server, that would break the ruby-client. That > >> won't > >> > > work > >> > > > > > will it? > >> > > > > > > >> > > > > > My only recourse as a cassandra committer is to go ask some > other > >> > > > entity > >> > > > > to > >> > > > > > change their driver. > >> > > > > > > >> > > > > > >> > > > > The solution would be: > >> > > > > 1. Update the spec (for the current protocol version) to specify > >> that > >> > > > it's > >> > > > > an unsigned byte. (Perhaps add a note that this will change in > the > >> > > next > >> > > > > protocol version.) > >> > > > > 2. In the next version of the protocol, specify that the byte is > >> > signed > >> > > > and > >> > > > > change Cassandra's behavior to match this. Note this change in > >> the > >> > > > > "changes" section of the spec. > >> > > > > > >> > > > > This doesn't break existing clients and it allows the behavior > to > >> be > >> > > > fixed > >> > > > > with the next protocol version. (Cassandra also supports > multiple > >> > > > versions > >> > > > > of the native protocol, fwiw.) > >> > > > > > >> > > > > > >> > > > > > > >> > > > > > "This means the spec is ambiguous. In that case, I imagine > the > >> > > proper > >> > > > > > solution would be to create a jira ticket and decide how to > >> resolve > >> > > the > >> > > > > > ambiguity in the spec." > >> > > > > > > >> > > > > > Yes but then after you change the spec, one client is broken > and > >> > one > >> > > is > >> > > > > > not. Is one client more "official" then another? Do you change > >> the > >> > > spec > >> > > > > to > >> > > > > > match the client with "more users". > >> > > > > > > >> > > > > > >> > > > > You change the spec to match whatever Cassandra is doing. It's > >> not a > >> > > > > matter of what driver is more popular. > >> > > > > > >> > > > > > >> > > > > > > >> > > > > > Think about mysql. Does it ship with a driver? Yes. Who writes > >> the > >> > > > > driver? > >> > > > > > mysql. Where is the source code for this driver? Inside the > same > >> > > > > repository > >> > > > > > as the server. Cassandra should be the same way. > >> > > > > > >> > > > > > >> > > > > Other databases treat this issue differently, and there are a > set > >> of > >> > > > > tradeoffs. Mysql's decision may not be the best for Cassandra. > >> > > > > > >> > > > > > >> > > > > -- > >> > > > > Tyler Hobbs > >> > > > > DataStax <http://datastax.com/> > >> > > > > > >> > > > > >> > > > >> > > >> > > > > -- > Jonathan Ellis > Project Chair, Apache Cassandra > co-founder, http://www.datastax.com > @spyced >