If only some languages have support via a third party entity everyone who does not have support is a second class citizen.
On Tue, Mar 11, 2014 at 4:16 PM, Jonathan Ellis <jbel...@gmail.com> wrote: > What part of the native protocol makes any language a second class citizen? > > 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 >