I hope you're not arguing that Thrift IDL qualifies as a driver, because that's ridiculous.
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