[RELEASE] ScyllaDB Enterprise 2024.2.1

The ScyllaDB team announces ScyllaDB Enterprise 2024.2.1, a bug-fix production-ready ScyllaDB Enterprise patch release for ScyllaDB Enterprise 2024.2 Feature (Short Term Support) Release.

2024.2.1 patch release includes multiple minor bug fixes.

Related Links

The following issues are fixed in this release (with an open-source reference, if available):

CQL and correctness related

  • A rare case when data in memtable is not considered when deciding whether expired tombstone can be discarded during read. #20916

Alternator - Amazon DynamoDB-compatible API

  • The Alternator /localnodes REST API returns nodes local to the current datacenter. It is now enhanced to be able to return other datacenters, and to restrict the returned nodes to a specific rack. This can help reduce networking costs and latency in the Alternator Load Balancer and already implemented in the Java version #12147
  • The Alternator /localnodes endpoint will not return nodes that are temporarily down. #21538

Tablets

  • Failed to complete splitting of table due to raft::request_aborted (Request is aborted by a caller)] while scylla stopped during Rollback rolling-upgrade #20890
  • When a tablet is split into two, tombstone garbage collection becomes more complicated, since sstables for the tablet exist in both pre-split and post-split state, causing possible data resurrection during tablet split preparation #20044
  • Prevent tablet metadata with too many pending replicas from being saved to disk #20043
  • After a tablet is migrated away from a node, a cleanup process takes place to remove the tablet’s footprint from the replica. During this process a race can happen the tablet’s compaction strategy is changed concurrently. The result is schema ALTER (add column) in the middle of ongoing tablet migration causes internal error: “Compaction state for table … not found” #20699
  • A race between tablet split and repair could cause an sstable not to be split among two new tablets, which in turn could prevent the sstable from being loaded on restart. #20626
  • remove_node_during_local_index_build failed. #18862

Stability

  • Hinted handoff: Possible dereferencing a null pointer #21699
  • a potential use after free, make_streaming_consumer passes reference to token_metadata to check_needs_view_update_path without holding ptr #20979
  • raft topology: use-after-free raft_topology_cmd_handler, dereferencing pointer to old topology state after reload #21220

Performance

  • Materialized View building (initiated by CREATE MATERIALIZED VIEW or CREATE INDEX) is now performance-isolated from normal reads and writes. #21232
  • Repair performance in mixed-shard configurations (where different nodes have different shard counts) has been substantially improved. #21113
  • node-exporter: Disabled the hwmon temperature collector, as it causes bad performance on Azure. #21163