CqlSharp is a high performance, asynchronous Cassandra CQL binary protocol client implementing the ADO.NET data provider interfaces.
It's main features are:
* The API implements the ADO.NET interfaces. If you are familiar with SqlConnection, SqlCommand, and SqlReader, you should be able to use CqlSharp with no difficulty.
* CqlSharp is an implementation of the (new) CQL Binary Protocol and therefore requires Cassandra 1.2 and up
* CqlSharp supports all the binary protocol v2 features: batching, paging, bound query variables, result schema caching, check-and-set (CAS) statements, and sasl-authentication
* Supports fast mapping of objects to query parameters, or query results to objects. Mapping is tunable by decorating your classes via Table and Column attributes.
* Query tracing, timeouts and cancellation is supported
* The API is predominately [asynchronous](https://msdn.microsoft.com/en-us/library/vstudio/hh191443.aspx), heavily relying on the System.Threading.Tasks namespace. Synchronous alternatives are available for convenience.
* Configuration is done through connection strings. The simultaneous use of multiple Cassandra clusters is supported.
* Extensive logging, including support for custom logger implementations
See https://github.com/reuzel/CqlSharp/wiki/Features for an extensive feature list.
See the version list below for details.
Install-Package CqlSharp -Version 0.39.0
dotnet add package CqlSharp --version 0.39.0
<PackageReference Include="CqlSharp" Version="0.39.0" />
paket add CqlSharp --version 0.39.0
## Version 0.39.0 - Performance of sync operations
* Many changes to have synchronous API really execute synchronously, it is no longer a sync-over-async wrapper
* Improved exception generation in case of query cancellation or timeout
* Logging cancelled queries
* Fix: Adding LocalOne consistency level
## Version 0.38.0 - Fixes and Improved Aliveness Checking of Cassandra Nodes
* Fixed bug that hampered exponential backoff
* Succesfull connection to a node must be made before it is marked as up again, keeping it out-of-scope of connection strategies until proven up.
* Fixing issue where multiple node UP notifications are received in a short time
* Clearing prepared query ids, forcing queries to be reprepared when node is marked down
* Making sure that at least a single query attempt is done when MaxRetryCount setting is set to 0
* MEF fix: now using correct directories for loading extensions
## Version 0.37.0 - TraceLogger and Fixes on cluster reconfiguration
* Fix crash when nodes are added to a running system (and have no tokens gossiped). CqlSharp now reloads configurations every minute until all tokens are found.
* Fix missing logger binding when using exclusive connection strategy
* Simplified logger classes and added TraceLogger (thanks to justmara)
See https://github.com/reuzel/CqlSharp/blob/master/ChangeLog.md for the full changelog.
This package has no dependencies.
This package is not used by any popular GitHub repositories.