[RELEASE] ScyllaDB Enterprise 2022.2.12

The ScyllaDB team announces ScyllaDB Enterprise 2022.2.12, a bug-fix production-ready ScyllaDB Enterprise patch release for ScyllaDB Enterprise 2022.2.

Related Links

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

  • CQL Conflict resolution: compare_cells_for_merge may wrongly prefer an expired cell over a live and expiring one #14182. Before this fix, when two cells have the same write timestamp and both are alive or expiring, we compare their value first, before checking if either of them is expiring and if both are expiring, comparing their expiration time and TTL value to determine which of them will expire later or was written later. This was based on an early version of Cassandra. However, the Cassandra implementation rightfully changed in CASSANDRA-14592, where the cell expiration is considered before the cell value. See update-ordering in Scylla docs for more.

  • API: Allow tombstone GC in compaction to be disabled on user request #14077
    The fix adds new APIs /column_family/tombstone_gc and /storage_service/tombstone_gc, that will
    allow for disabling tombstone garbage collection (GC) in compaction.

    The table name must be in keyspace:name format

  • Setup: scylla-fstrim.timer is enabled but not started #14249

  • Setup: The installer now wipes filesystem signatures from the individual disks making up a RAID array, preventing problems with reuse of disks. #13737

  • DynamoDB API (Alternator) stability: assertion in output_stream when exception occurs during response streaming #14453.

  • DynamoDB API (Alternator) stability: Yield while building large results in Alternator - rjson::print, executor::batch_get_item #13689

  • Stability: mutation_reader_merger can overflow stack when merging many empty readers. This may happen when running a second repair right after the other. #14415

  • Stability: compaction: excessive reallocation during input list formatting #14071. Issue is more likely with off strategy compaction.

  • Stability: deadlock caused by view update _registration_sem and streaming reader _streaming_concurrency_sem #14676

  • Stability: a failure when reading metrics, caused by a rare race condition when another node is down. (seastar::metrics::double_registration (registering metrics twice for metrics: storage_proxy_coordinator_background_replica_writes_failed_remote_node)) #11017

  • Stability: messaging: when upgrading OSS nodes to Enterprise, service-levels are matched to the default scheduling group #13841, #12552

  • Stability: offstrategy compaction races with view building on staging sstables #11882. Offstrategy compaction is triggered after repair and the latter places sstables in the staging subdirectory if view building is required.

  • Stability: partitioned_sstable_set::insert might stall when called by table::make_reader_v2_excluding_sstables. The root cause is View building from staging creates a reader from scratch for every partition, in order to calculate the diff between new staging data and data in base sstable set, and then pushes the result into the view replicas. #14244

  • Stability: View building crashes on large partitions with range tombstones. #14503