cassandra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brandon Williams <dri...@gmail.com>
Subject Re: Proposal: freeze Thrift starting with 2.1.0
Date Tue, 11 Mar 2014 20:24:00 GMT
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 <edlinuxguru@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-+u4sSDmdSmP2dGrst90hoypw2fw@mail.gmail.com%3E
>
> Nice to see us pulling a total 180.
>
>
> On Tue, Mar 11, 2014 at 4:09 PM, Brandon Williams <driftx@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 <edlinuxguru@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 <tyler@datastax.com>
> wrote:
> > >
> > > > On Tue, Mar 11, 2014 at 2:24 PM, Edward Capriolo <
> > edlinuxguru@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/>
> > > >
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message