Last week in scylladb.git master (issue #173; 2023-03-26)

This short report brings to light some interesting commits to scylladb.git master from the last week. Commits in the aad2afd417…46e6c639d9 range are covered.

There were 155 non-merge commits from 16 authors in that period. Some notable commits:

Topology changes are now coordinated via Raft, when the consistent cluster management option is enabled.

WebAssembly just-in-time compilation was recently moved to a separate thread. The thread now blocks all signals, preventing incorrect signal handling when it was randomly picked to handle a signal.

User-defined functions recently gained permission support. We now additionally check that a function is not a builtin before applying permissions.

The reader concurrency semaphore controls how many reads execute in parallel. Its diagnostics, printed to the system log, have been improved.

In a similar vein, the reader concurrency semaphore now has more tracepoints, useful with CQL tracing.

The CQL transport server (port 9042) recently gained per-opcode bandwidth statistics. They are now measured per service level as well.

Some time ago, we reduced repair contention with itself when nodes had different shard counts. This turned out to cause deadlocks, so the fix was reverted.

Materialized view updates are performed asynchronously relative to updating the main table, so failures there are not visible as an UPDATE or INSERT failure. Instead, errors are logged. Those errors are rate-limited now to avoid flooding the logs.

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