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

Reply via email to