[RELEASE] ScyllaDB 2025.1.1

The ScyllaDB team announces ScyllaDB 2025.1.1, a bug-fix production-ready patch release for ScyllaDB 2025.1 LTS Release.

capacity-aware load balancing of Tablets.

Until this release, Tablets load-balancing was based solely on the number of Tablets. This is suboptimal since, in a heterogeneous cluster, each node can have a different storage size. #23443

The following example is of a cluster with two nodes in each rack: i4i.8xlarge (7.5TB storage) and i4i.large (0.468TB).

Before, disk usage differed between nodes, even though the bytes stored were similar.

After - disk usage is now similar (around the 90% goal), while the bytes storaged differed

2025.1.1 also includes multiple bug fixes (below).

Related Links

The following issues are fixed in this release:

Performance

  • Repair: Include system_replicated_keys in the small table optimization list. The result is an unnecessary long repair operation #23148

Security

  • User with MODIFY permission on ALL KEYSPACES can escalate privileges to superuser via unsafe actions #23218 (match Apache Cassandra CVE-2025-23015)
  • Audit logs has empty query string for BATCH queries #23311

Stability

  • bad_alloc error result into scylla core dump #22790
  • TLS: generic_server guard for ECONNRESET/EPIPE does not fully handle TLS conditions. The results is overload when clients (re)connect with TLS #22901
  • Rare race condition on topology change: on_internal_error in topology test test_change_ip::test_change_two #22578
  • repair: Topology operations such as tablet migration can now run concurrently with repair of other tablets. #23453
  • raft topology: Add support for raft topology system tables initialization to happen before group0 initialization, fixing rare crashes on init. #21114
  • server shutdown gets stuck on hint draining #21949

Tracing:

  • Demote “drain rpc failed, proceed to fence old writes: {}", std::current_exception” from Error to Warning #22364

Debug

  • Coredumps are not readable by gdb due to seastar memory prefaulter #23316

Storage

  • New config param: data_file_capacity, set the total capacity in bytes for storing data files. Used by tablet load balancer to compute storage utilization. If not set (default), it will use the file system’s capacity. Use for capacity-aware load balancing of Tablets (above)