ScyllaDB Rust Driver 0.6.0 released!

12 views
Skip to first unread message

Piotr Dulikowski

<piodul@scylladb.com>
unread,
Oct 5, 2022, 4:02:45 AM10/5/22
to ScyllaDB users
The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 0.6.0,
an asynchronous CQL driver for Rust, optimized for ScyllaDB, but also compatible with Apache Cassandra!

The numbers are constantly growing:
* over 53k downloads on crates;
* over 320 GitHub stars!

=== Notable changes ===

* Introduced HostFilter abstraction. HostFilter can be used to prevent the driver from connecting to some of the nodes in the cluster, e.g. you can use DcHostFilter to connect only to the nodes from the local datacenter.
* DcAwareRoundRobin policy can now be configured not to return nodes outside the configured DC at all (previously it just returned them after the DC-local nodes).
* Introduced AddressTranslator. This feature makes it possible for the driver to correctly connect to clusters which are behind NAT.
* CachingSession has gained support for batches.
* The `batch` method now returns `QueryResult` instead of `BatchResult`. It no longer ignores rows returned by the database and it is now possible to learn whether a LWT batch has been applied or not.
* After issuing a schema-altering query, the driver automatically updates the metadata - it is no longer needed to refresh it manually afterwards.
* It is now possible to get information about replicas relevant to given query and partition key via `ClusterData::get_endpoints`.
* It is now possible to get detailed information about the way the driver executed a query with the help of the HistoryListener trait.
* A request coalescing optimization has been implemented. Before flushing data to the socket, the task responsible for it yields once. In our tests, this resulted in increased efficiency: less flushes were made, which should lead to larger packets being sent, reducing the overhead needed to send the same amount of data.
* Information about materialized views in the Metadata was extended to contain information about the view's base table.
* Information about nodes' sharders (i.e. number of shards and the `msb_ignore` parameter) is now available.
* Support for RateLimitReached error has been added. The new error will be returned in ScyllaDB 5.1 by the upcoming per-partition rate limiting feature.
* Assorted improvements to documentation, CI, and some refactors.

Congrats to all contributors and thanks everyone for using our driver!

=======================

The source code of the driver can be found here:
* https://github.com/scylladb/scylla-rust-driver
  Contributions are most welcome!

The official crates.io registry entry is here:
* https://crates.io/crates/scylla

Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

Contributors since last release:
commits|author
    30  Jan Ciolek
    10  Wojciech Przytuła
     9  Piotr Dulikowski
     4  Joseph Perez
     2  Gor Stepanyan
     2  Piotr Sarna
     1  Thomas BESSOU


Reply all
Reply to author
Forward
0 new messages