The ScyllaDB team announces ScyllaDB 2025.2.3, a bug-fix production-ready patch release for ScyllaDB 2025.2 Feature Release.
Note there is a new Short Term Support (STS) Feature release 2025.3. You are welcome to upgrade to it for the latest and greatest features.
Related Links
- Get ScyllaDB 2025.2
- Upgrade from ScyllaDB 2025.1 to ScyllaDB 2025.2
- Upgrade from ScyllaDB 2025.2.x to ScyllaDB 2025.2.y
- Submit a ticket
The following issues are fixed in this release:
Stability
- service/qos: Modularize service level controller to avoid invalid access to a stopped auth::service #24792
- Alternator: character 0x255 in base64 causes out-of-bounds read #25701
- Commitlog: segment_manager::discard_unused_segments - separate the modification of the vector (_segments) from actual releasing of objects #25709
- gossiper - race condition in gossip::apply_state_locally when receiving messages containing removed endpoints that no longer have a valid host id #25702, #25621
- gossiper can reply with an empty self host id in `gossip_get_endpoint_states_response` during startup #25831
- Tablets Repair: A node may crash If a node has many shards and many tablets on each shard #23632
- Drop table during tablet cleanup initiated by a tablet migration may crash #25706
Optimization
- Improved handling of in-progress requests during node shutdown, ensuring requests are allowed to complete successfully. #24481
- Removed a large allocation when loading SSTables #3335
- seastar_memory - Removed an oversized allocation changing token_range_vector to use chunked_vector #24156, #24115
- storage_service::maybe_reconnect_to_preferred_ip() calls the gossiper::get_host_id() unnecessarily and can be passed directly as a parameter #25715
Tracing and logging
- Reduced log severity in dirty_memory_manager::flush_one – The severity level of logs has been lowered for seastar::named_gate_closed_exception, as this flush failure is expected when the corresponding compaction group has already been stopped #25037
- db/hints: Improve logs #25466
- Drop table during tablet cleanup initiated by a tablet migration may crash #25706
- Debug logs: deletion_time formatter prints wrong results #25556
- db/commitlog: Extend error messages for corrupted data #25460
- streaming: Enclose potential throws in try block and ensure sink close before logging #25902, #25497
- Fixed SSTable streaming logs during tablet migration to correctly show the list of files sent, preventing confusion from previously empty file lists. #25830
Performance
- Alternator is now more careful to avoid large contiguous allocations during query/scan operations, as these can cause stalls. #23535
- Improve performance of worst case scenario in auth::passwords::detail::hash_with_salt #24524
- storage_service: on_change: frequent system.peers reloads with many peers may cause high CPU usage #25660
- system_keyspace::drop_truncation_rp_records can cause unbound parallelism #25682
API and tooling
- Using scylla sstable, the tool may crash in case of disengaged row #25325
- Warn users about using RF!=Racks with Tablets Keyspaces #23330
- storage_service/get_natural_endpoints has no way to pass a key containing a colon character #24829
Monitoring
- S3 Client: Memory Usage Metric – providing visibility into backup and restore memory consumption #25864