Last week in scylladb.git master (issue #263; 2025-01-05)

This short report brings to light some interesting commits to scylladb.git master from the last week. Commits in the 3e22998dc1…c973254362 range are covered.

There were 81 non-merge commits from 15 authors in that period. Some notable commits:


Release builds now use link-time optimization (LTO) which considers all source files together rather than independently, and profile-guided optimization (PGO) which use training workloads to guide the optimizer. Performance improvements of around 30% have been observed. This feature was contributed from ScyllaDB Enterprise.

Intra-node remote procedure call (RPC) learned dictionary-based compression, which gathers a dictionary to get better compression ratio. After the dictionary is gathered and distributed, compression is able to refer to byte strings from the dictionary, rather than just each message as it is compressed. This feature was contributed from ScyllaDB Enterprise.

The CQL language can now select a collection element rather than the entire collection.

It is now possible to assign CPU consumption and disk bandwidth shares to different workloads on the same cluster. Assignment is based on login role via the service level mechanism. This feature was contributed from ScyllaDB Enterprise.

A new compaction strategy, Incremental Compaction Strategy, is available. It splits sstables into one gigabyte fragments. The principal benefit is that a 50% space reserve is no longer necessary. This feature was contributed from ScyllaDB Enterprise.

The system.clients lists the connection stage of each connection. A bug where a ready connection was listed as still authenticating was fixed.

The reader concurrency semaphore manages query concurrency on the replica. It received a small performance optimization for workloads that typically miss the cache.

The effective replication map caches the result of applying the replication strategy to the current topology. A race condition in updating it after a tablet split was fixed.


See you in the next issue of last week in scylladb.git master!