Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What happened to the "real" Cassandra C++ library libcql?

Tags:

c++

cassandra

cql

Is there any legitimate, maintained C++ library for interacting with Cassandra? This is a disambiguation question of sorts. Searching for such software always leads to the DataStax "cpp-driver" (a bizarre and misleading name) here:

https://github.com/datastax/cpp-driver

What's odd about this though, is that libcql preceded it, and now the libcql page directs to cpp-driver, stating that is no longer maintained, i.e.

https://github.com/mstump/libcql

But the cpp-driver code seems totally different than what libcql was. In fact, the example code in cpp-driver doesn't appear to be C++ at all (more like plain C), and has no in-code commenting. It appears to be a completely different (and less mature) project. Yet, DataStax still refers to it as being C++. Furthermore, it seems to be the only maintained project that provides C and/or C++ interfacing with Cassandra. What happened to libcql? Why did it undergo some weird transformation once it was "turned over" to DataStax?

like image 665
turanc Avatar asked Jun 25 '14 20:06

turanc


1 Answers

libcql is evolving/transforming into the cpp-driver.

As you noticed the cpp-driver is still in the works, but its main goals are to bring it on par with the other Cassandra drivers from DataStax supporting features like:

  1. auto-node discovery
  2. pluggable policies for routing, retries, fail-over
  3. a pure C API that can be used from both C, C++, but also other lang drivers (to ensure high performance)

Some of the features are already available (mentioned in http://www.datastax.com/dev/blog/datastax-cpp-driver-beta-release), while others are being worked on JIRA.

Last but not least, the author of libcql joined DataStax and he is currently contributing to the cpp-driver.

like image 140
Alex Popescu Avatar answered Oct 15 '22 22:10

Alex Popescu