[RELEASE] ScyllaDB 2025.4.0

The ScyllaDB team is pleased to announce the release of ScyllaDB 2025.4, a production-ready ScyllaDB Short Term Support (STS) Minor Feature Release.

More information on ScyllaDB’s Long Term Support (LTS) policy is available here.

Highlights of the 2025.4 release include:

  • Tablets now support Materialized Views (MV), Secondary Indexes (SI), Change Data Capture (CDC), and Lightweight Transactions (LWT). This fully bridges the previous feature gap between Tablets and vNodes.

  • ScyllaDB Vector Search is now available (in GA), introducing native low-latency Approximate Nearest Neighbor similarity search (ANN) through CQL. See the Getting Started Guide and try it out.

  • Alternator fully supports Tablets by following the tablets_mode_for_new_keyspaces configuration flag, except for the still-experimental Streams.

  • The new Trie-based index format improves indexing efficiency.

  • New deployment options with i8g and i8ge show significant performance advantages over i4i, i3en, as well as i7i and i7ie.

Related Links

New Features

Vector Search

ScyllaDB 2025.4 introduces native Vector Search to power AI-driven applications. By integrating vector indexing directly into the ScyllaDB ecosystem, teams can now perform similarity searches without moving data to a separate vector database.

Vector Search is currently available only in ScyllaDB Cloud, the fully managed
ScyllaDB service.

For more information, see:

Tablets: Alternator

  • Alternator no longer uses vnodes by default; it now uses whatever the configuration flag tablets_mode_for_new_keyspaces tells it to use. Still, this can be overridden with a per-table tag, provided that Tablets are not enforced by the flag.#22463
  • Tables using Tablets support GSI and LSI. However, tables using Tablets still don’t support the still-experimental Streams.
  • Caveats:
    • The most likely configuration tablets_mode_for_new_keyspaces=enabledand no tag passed to CreateTable will forbid the (still experimental) Alternator Streams on that table.
    • Creating GSI and LSI for tables using Tablets now requires that the replication factor match the number of racks. #23030

Tablets: Support for Materialized Views and Secondary Indexes

  • This release introduces support for Materialized Views and Secondary Indexes in Tablet tables #22677.
  • Creating materialized views in Tablet keyspaces now requires that the replication factor match the number of racks. #23030

Tablets: Support for Lightweight Transactions (LWT)

  • Tablet tables now support Lightweight Transactions, enhancing consistency and concurrency control. Paxos state is stored in a side table allocated on demand for each table using LWT, rather than system.paxos #24819

Tablets: Support for Change Data Capture (CDC)

  • This release introduces support for Change Data Capture with Tablet-enabled tables. #22576
    Previously, CDC was supported only for vnode-based tables. In this release, ScyllaDB adds full CDC support for Tablet-enabled tables. This allows users to track inserts, updates, and deletes in tablet-based keyspaces.
    With Tablet-based CDC:

    • Each table can have a dedicated CDC log table that captures all changes.
    • CDC log entries are automatically managed and cleaned up using configurable TTLs.
    • Changes within each partition are delivered in order, and client libraries ensure smooth handling of streams and topology changes.
    • CDC in Tablet-based tables preserves load distribution and improves performance compared to vnode-based CDC.
  • Enabling CDC: CDC can be enabled on a table at creation or afterwards:

    • At table creation:

      CREATE TABLE my_table (
      
         	 pk int,
      
         	 ck int,
      
          	value text,
      
          	PRIMARY KEY (pk, ck)
      
      ) WITH cdc = {'enabled': true};
      
    • Enabling it on an existing table:
      ALTER TABLE my_table WITH cdc = {'enabled': true};

    • Once CDC is enabled, all changes to the table will automatically be logged in the corresponding CDC log table.

Tablets: Driver Support

Tablets support and performance optimizations have been added to the drivers. See the documentation to identify which driver versions include Tablets support.

Out-of-space Prevention Guardrail

  • This release introduces a mechanism to prevent nodes from running out of storage. When a node reaches 98% utilization, it will reject user writes but continue to allow streaming and Tablet migrations. This enables faster recovery through scaling or node replacement #14067

Default Replication Factor

  • The CREATE KEYSPACE ks statement now works without any optional clauses; it defaults to NetworkTopologyStrategy with RF = number of racks with at least one non-arbiter node. #16028.
    This makes the following syntax valid:
    • CREATE KEYSPACE ks WITH REPLICATION { 'class': 'NetworkTopologyStrategy' };
    • CREATE KEYSPACE ks WITH REPLICATION { };
  • Creating a new keyspace now allows omitting the replication strategy. If not specified, NetworkTopologyStrategy is used by default. For example:
    • CREATE KEYSPACE ks WITH REPLICATION = { 'replication_factor' : 3 }; now works the same as the previous explicit syntax. #16029

Default CREATE KEYSPACE Syntax

  • REPLICATION is now optional in CREATE KEYSPACE statements, allowing keyspaces to be created without a WITH clause. #25145

Add Azure Key Vault as an Encryption at Rest Key Provider

  • Following ScyllaDB longtime support for AWS KMS and GCP KMS, this release adds support for Azure Key Vault as a key provider for EaR.
    See here to learn more.

Alternator Improvements

  • Improved Alternator to fully align with DynamoDB getRecords behavior, ensuring consistent results. #6931

    • EventSource is set to aws:dynamodb
    • awsRegion is set to the datacenter name of the node that received the request
    • eventVersion to reflect the record structure version
    • sizeBytes - a subfield of DynamoDBfield is now set
  • Performance Improvement
    Introduced caching of expressions in requests, as parsing expressions can be slow. Performance gains depend on expression type and complexity, with observed single-node throughput improvements of ~7–15% in example workloads. #5023

  • Add Support for Per-Table Metrics in Alternator. #19824

Default SSTable compression algorithm

  • The default SSTable compression algorithm for new installations is now LZ4 with a dictionary. This offers improved data reduction and greater storage space savings. #26697

Trie-Based SSTable Index Format

ScyllaDB 2025.4 introduces a new SSTable Index implementation based on a Tries index. This feature improves the performance of modification operations and the performance of data lookup (reads) in many cases. Trie-Based SSTable Index is disabled by default in 2025.4.

  • The Trie-based index is not enabled by default. It can be enabled by setting the sstable_format parameter in the scylla.yaml file to ms.

  • This release introduces a trie-based index format designed to improve performance through faster lookups and more efficient memory usage.

  • The default SSTable format remains “me”, the same index type used in previous versions. The new format, “ms”, is similar to “me” but uses Trie-based indexes. It provides a more compact index structure and typically faster lookups. #25626

  • When set to ms, newly created SSTables will use the new format, while existing SSTables will continue using their current index.

  • To convert existing SSTables to the new format, rewrite them using nodetool upgradesstables.

Deployment options

  • AWS: This release expands support to include all I7i and I7ie instance types, in addition to the previously supported i7i.large, i7i.xlarge, i7i.2xlarge, and all i7ie instances. The I7i and I7ie families offer an improved price-to-performance ratio compared to previous generations.

  • AWS: This release adds support for i8g and ig8e instance families, which provide a better price-performance ratio compared to x86-based instances.

More Updates

Stability

  • Enabling Alternator streams on a table with a very long name crashes ScyllaDB. #24598

  • Nodes now become eligible to be Raft voters earlier during bootstrap, closing a gap that could expose clusters to loss-of-quorum. #24420

  • Encryption using AWS Key Management Service (KMS) can now use externally-provided credentials. This makes recovery tasks simpler. #22470

  • Cleanup of Key Management Interoperability Protocol (KMIP) connections, used by encryption, is more robust, avoiding TLS errors. #24873

  • A large remote procedure call (RPC) hash table is now sized in advance to prevent resizing from causing latency jumps. #24660 #24217

  • Improved handling of in-progress requests during node shutdown, ensuring requests are allowed to complete successfully. #24481

  • Drop table during tablet cleanup initiated by a tablet migration may crash. #25706

  • Raft: Atomic schema updates (COW for schema state). Schema changes are now applied to an in-memory copy and made visible atomically, ensuring each Raft command’s modifications are isolated. This simplifies reasoning about state, avoids cross-command dependencies, and improves restart performance by reducing repeated full-state copies. #19649

  • Commitlog: segment_manager::discard_unused_segments - separate the modification of the vector (_segments) from actual releasing of objects. #25709

  • A deadlock when removing a failed node in a cluster with materialized views was fixed. #24807

  • service/qos: Modularize service level controller to avoid invalid access to a stopped auth::service. #24792

  • Fix stability issue with KMS caching testing. #24574

  • Alternator: character 0x255 in base64 causes an out-of-bounds read. #25701

  • Alternator: expression parsing memory leak in specific situations. 25878

  • auth: default user creation may cause a crash if done during upgrade to raft topology. #24975

  • load_balancer: std::out_of_bounds when decommissioning with empty nodes. #26203

  • Reworked group0 Raft server shutdown to avoid use-after-free issues during drain or shutdown. Introduced abort_and_drain() to safely stop background tasks while keeping the server alive, and moved final destruction to abort_and_destroy() for proper cleanup. #24625

  • Coredump during truncate: Data written after truncation time was incorrectly truncated. #25013

  • Coredump right after seed node decommission. #23911

  • Potential data race in utils::alien_worker. #24751

  • Gossip: Failed to add server: “No ip address for … when one is expected”. #23407

  • 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 IDid in `gossip_get_endpoint_states_response` during startup. #25831

  • Node shutdown is stuck waiting for batchlog manager drain. #24599

  • Non-RBNO streaming may hang on failure if IO permits are deadlocked. #24925

  • Potential node crash when doing base-view pairing after decreasing RF. #21492

  • token_metadata_ptr may be destroyed without gentle cleaning. #13381

  • Unregister raft_topology_get_cmd_status on shutdown. #24910

  • Raft topology: make the voter handler consider only group 0 members. #26321

  • service/qos: set long timeout for auth queries on SL cache update. #25290

  • Race condition between tablet split and load-and-stream. #26455

  • s3_client: parse multipart response XML defensively. #25009

  • Raft topology: fix group0 tombstone GC in the Raft-based recovery procedure. #26534

  • Fixed an issue in tablet migration rollback where view-building tasks were recreated for the target instead of the source replica. The rollback logic now correctly restores tasks on the migration source. #26825

  • Fixed a synchronization issue between tablet split and load-and-stream that occurred when using Gossip topology. #22707

  • Failed to boot because of a missing TOC for SSTable. #25919

Tablets

  • Tablets: stop storage group on deallocation #24857 #24828. This can cause errors when a node is restarted during tablet cleanup and other use cases.

  • Hints may get lost during a node replace. #24980

  • Tablets: repair: tablet repair isn’t safe in case of topology coordinator failover. #23318

  • When tablets are split, a compaction process is initiated to break apart SSTables that span the new tablet boundary. This compaction is now prepared for a tablet merge to happen before the split compaction is complete. #24153

  • API: updated range_to_endpoint_map to return tablet ranges consistent with system.tablets for tablet-enabled keyspaces, ensuring correct token boundaries and replica mappings. #26331

  • The load balancer now tracks migration badness, measuring how a tablet’s move affects table balance on the source and destination. Previously, badness for source and destination was combined using std::max(), which ignored negative values (good migrations). This could result in incorrect migration decisions. The computation has been corrected to preserve the actual badness values. #26091

Enhancements & Correctness

  • Improved compaction task progress tracking by introducing an ‘expected total workload’ calculation. This ensures progress is reported as (sum of child task progresses) / expected total workload, reducing fluctuations in the total workload. #8392, #6406, #7845.

  • The batchlog mechanism will now drop batches for a table that was itself dropped. #24806

  • Hints are now sent to pending replicas, such as tablet migration targets or new nodes. #19835

  • Introduced view_building_coordinator, a cluster-wide coordinator for building tablet-based views. It splits work into tablet-level tasks, is resilient to RPC failures and Raft leader changes, adapts to tablet operations, and safely handles staging SSTables to ensure consistent view updates. #22288, #19149, #21564, #17603, #22586, #18826, #23930

  • The container image entry point now supports --dc and --rack options, allowing these parameters to be set without bind-mounting the cassandra.rackdb file. #23423

  • The system will no longer create SSTables with numeric generation numbers (only UUIDs). It can still read such SSTables. #24248

  • Lightweight transactions (LWT) now implement fencing, which prevents old requests that were sent using an old version of the topology from being incorrectly applied to a new topology. This is a step for implementing LWT on tablets. #22332

  • PRUNE MATERIALIZED VIEW statement can miss some ghost rows. #25655

  • Fixed scrub failures caused by concurrent compactions deleting SSTables before checksum verification. #23363

  • Changed ignore_nodes from IPs to host IDs to streamline removenode operations. #26249, #25958

  • The CREATE TABLE IF NOT EXISTS no longer fails if CDC is specified. #26142

  • There are now Lua scripts for examining purgeable tombstones and write-time histograms in SSTables. #26062

  • Unauthorized connections now switch to the sl:default scheduling group for consistency with authenticated users without an assigned service level. #26040

  • CDC: Set specific tombstone_gc when creating log tables to ensure consistent behavior with other schema entities and avoid confusing output of DESCRIBE. #25187

  • Compaction: reorder operations in compaction_manager::stop to ensure that all compaction executors are stopped and prevent assertion failures. #25806

  • Repair: always set node ops progress to 100% on completion to prevent lingering incomplete status after errors. #26193

  • encryption::encryption_file_io_extension::wrap_sink: removed default case in component_type switch and explicitly handle all values to enforce consideration of new components. #23724

  • Improved S3 client error handling in chunked_download_source to prevent callback-related errors from propagating. Disabled retries on Seastar’s side to ensure data integrity and avoid multiple downloads of the same range. #25043

  • DB/View: fixed cross-shard access by wrapping shared_sstable in foreign_ptr within view_building_worker, ensuring safe transfer of staging SSTables between shards. #25859

  • Tasks: updated make_and_start_task to return task::impl instead of task to allow direct access to implementation details, enabling features like returning values from tasks. #22146

  • Replica: fixed race between table drop and merge completion that could cause false compaction checks. The fix makes truncate ignore stopped groups during compaction verification, preventing failures when merging and dropping overlap. #25551

  • SSTables: updated make_entry_descriptor regex to be non-greedy, ensuring correct keyspace and table matching in snapshot directories. #25242

  • Storage Service: drain the view builder before group0 to ensure proper coordination of view building operations. #25096

  • HTTP: updated query parameter usage to the new interface. Accessing parameters directly is deprecated; use {get,set}_query_param() to handle multiple values per key. #26023

  • Utils/Stall-Free: fixed detection of clear_gently for const payload types in smart/shared pointer containers (e.g., foreign_ptr), ensuring objects are gently cleared before destruction while still disallowing direct calls on const objects. #24605, #25026

  • s3_client: fix `when` condition to prevent infinite locking. #26497

  • s3_client: track memory starvation in background filling fiber. #26465

  • s3: Fix chunked download source metrics calculations. #25875

  • Improved efficiency of stopping table-specific compactions by introducing a filter function to the compaction manager. #25846, #26082

  • raft topology: disable schema pulls in the Raft-based recovery procedure. #26569

  • Access tablet map through table->effective_replication_map() on SSTable discovery. #26403

  • Materialized view creation: improved handling of cases where a reader returns no partitions for a partial range. #26635

Optimization

  • The row cache is able to purge expired tombstones in order to improve the performance of reads that later touch the same key. To prevent data resurrection, it checks memtables for overlapping data. It now avoids checking memtables for which it can prove there is no overlapping order data, reducing false positives and increasing the number of tombstones purged. #24962

  • The small table repair optimization is used when bootstrapping or repairing tables with little data, like system_tracing tables. It now optimizes token range calculations for larger clusters. #24817

  • An SSTable Bloom filter is built with an estimate of the number of partitions it will hold. If the estimate turns out to be incorrect, we rebuild the Bloom filter in order not to waste memory. We now avoid the rebuild if the memory wasted is low enough to be ignored. #25464, #25468

  • After streaming or repairing data, the portion of the row cache affected is invalidated since it no longer reflects the underlying SSTables. We now invalidate at partition granularity rather than token-range granularity, resulting in increased cache efficiency, particularly after repair. #9136

  • Gossiper operations are now enforced to run in the gossip scheduling group, even if invoked from other components. #25907

  • The table used for the Raft log now has caching disabled. #26027

  • The tablet load balancer now considers dead nodes in its calculations. #24485

  • The SSTable scrubber now handles malformed SSTables better. #19059

  • More comprehensive schema information is now stored in SSTables, making data recovery from an orphaned SSTable easier. #24187

  • ScyllaDB now formats the data filesystem using 4k block size. We previously used 1k block size to work around a kernel deficiency, which has since been fixed. #25441

  • Dropped tables should be removed from system.truncated. #25683

  • raft_topology: updated remove node logic to improve concurrency by checking raft_topology_change_enabled() on shard0 and routing execution accordingly; allows concurrent remove node operations on Raft-enabled clusters. #24737

  • storage_service::maybe_reconnect_to_preferred_ip() calls the gossiper::get_host_id() unnecessarily and can be passed directly as a parameter. #25715

  • Alternator validation of the table name on ordinary read/write requests is done only if the table lookup fails. This provides a small optimization. #12538

Performance

  • The main data structure holding vnode tokens was changed to avoid large allocations, which can produce stalls on very large clusters. #24876

  • Repair now sends smaller messages for partition differences with many small rows (e.g., tombstone-only rows), reducing stalls and improving efficiency. #24808

  • storage_service: on_change: frequent system.peers reloads with many peers may cause high CPU usage. #25660

  • Improve performance of worst case scenario in auth::passwords::detail::hash_with_salt. #24524, #13136

  • A large remote procedure call (RPC) hash table is now sized in advance to prevent resizing from causing latency jumps, #24660, #24217

  • Alternator is now more careful to avoid large contiguous allocations during query/scan operations, as these can cause stalls. #23535

  • Boot-time stall while creating CDC generation. #24522

  • The tablet load balancer now runs in the maintenance/streaming scheduling group, rather than the gossip group. This reduces the impact on node failure detection and Raft, which also run in the gossip group. #26037

  • The tablet scheduler will no longer attempt expensive cross-rack migrations if the cluster is known to have exactly one tablet replica per rack. This is much faster. #26016

  • Alternator, ScyllaDB’s implementation of the DynamoDB API, now caches parsed expressions to reduce per-request overhead. #25855

  • Large allocation when converting a batch statement to a mutation for batchlog. #24809

  • Locator:util: optimized describe_ring by caching per-endpoint info, reducing CPU time by ~20%. #24887

  • Fix oversized allocation in Paxos under pressure. #25559

  • Service/Tablet Allocator: replaced large contiguous vector in make_repair_plan() with a chunked vector to prevent stalls from large allocations. #24713

  • system_keyspace::drop_truncation_rp_records can cause unbound parallelism. #25682

  • The setup tool now checks if 4k block sizes are preferred by the disk, even if it advertises 512 byte physical sector sizes, to compensate for disks that misreport the physical sector size. #25315

Alternator

  • Alternator Streams: fixed PutItem to emit a single INSERT or MODIFY event, matching DynamoDB Streams behavior. Previously, each PutItem produced both REMOVE and MODIFY events. The fix uses tombstones for :attrs and regular columns to generate the correct CDC event. #6930, #24991

  • Alternator: fixed handling of UpdateItem with a combination of legacy AttributeUpdates and ReturnValues=ALL_OLD. #25894

  • Alternator: improved error reporting for non-existent resources. Operations like TagResource now return ResourceNotFoundException with a clear message when an ARN points to a table that doesn’t exist, instead of the previous vague AccessDeniedException. This matches DynamoDB behavior. #26179

  • Alternator: simplify std::views::transform usage. Replace lambdas that extract a class member with pointer-to-member syntax, making the code more concise. #25012

  • Alternator Streams: refactored std::views::transform usage to remove side effects. Side effects inside transforms could run multiple times depending on the algorithm, so appending to the column vector is now done before the transform to ensure it happens exactly once. #25011

  • describe_multi_item previously misinterpreted its last argument, causing a double conversion that undercounted RCU. The fix removes the extra conversion and updates the API. Tests pass against DynamoDB, ensuring correct RCU calculation. #25847

  • Alternator, ScyllaDB’s implementation of the DynamoDB API, now skips materialized view building when indexes are created for empty tables. #26615

  • Authentication can now work in an unenforcing mode (warnings only) to test the effects of changing the auth configuration. #25308, #25457

  • Alternator: DescribeTable may return an incorrect RANGE key for GSIs. #5320

Change Data Capture (CDC)

  • It’s possible to manually drop columns from CDC log. #24643

  • Node crashes when dropping a column while writing to it with CDC. #24952

Tools and API

  • A new REST API endpoint allows dropping quarantined SSTables to reclaim their storage. SSTables are quarantined automatically when corruption is detected. #19061

  • Fixed CDC permission checks so users with Select rights on the base table can now query CDC tables. #19798

  • Warn users about using RF!=Racks with Tablets Keyspaces. #23330

  • It is now possible to DROP ROLEs when using the saslauthd authenticator. #25571

  • Alternator: now calculates Write Capacity Units (WCU) in a compatible manner compared to DynamoDB. #24436

  • Internode communication errors are now reported to the user during LWT transaction failures. #25318

  • storage_service/get_natural_endpoints has no way to pass a key containing a colon character. #24829, #16596

  • Alternator now supports writing to system tables, in addition to reading them. #12348

  • The SscyllaDB SSTable tool now uses the more modern UUID generations rather than numeric generations. #25166

  • The nodetool stop cleanup command did not stop all cleanup tasks; only the ones currently running. Pending cleanup compactions would still run. It now aborts all pending tasks. #20823

  • The system.clients columns reporting encrypted connections (SSL/TLS) are now filled in. #9216

  • Refusing tablet table repairs via /storage_service/repair_async: The previous API is unsafe for tablet tables and may cause crashes . A new repair API, /storage_service/tablets/repair, is now available for tablets. Once all users (manager and nodetool) have migrated to the new API, the old API will no longer allow repairing tablet tables. #23008

  • Alternator: Improve error message for overflowing list indexes. #25947

  • There is now a standalone SscyllaDB SSsstable upgrade command, which can be used to rewrite SSTables using different versions or options. #26109

  • repair: to_repair_rows_on_wire stalls destroying input list #24725

CQL

  • DESCRIBE MATERIALIZED VIEW now shows the actual view definition (as a commented CREATE MATERIALIZED VIEW), instead of a misleading CREATE INDEX statement. #24610

  • Table Compression: ScyllaDB’s compression DDL property lets you set the algorithm and chunk size per table. By default, LZ4Compressor with a 4 KiB chunk size is used for both user and system tables. #25195

  • CQL3/ResultSet: set GLOBAL_TABLES_SPEC in query responses when all columns belong to the same table to reduce metadata overhead. #17788

Log and traces

  • The system.clients virtual table now lists active Alternator requests in addition to CQL connections. #24993

  • Compaction start/end messages were demoted to DEBUG level, as they were deemed too noisy. #24949

  • 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

  • Incoherent commas in AUTH audit log. #24410

  • Removed unnecessary logs when aborting tablet splits on node stop. #24850

  • Fixed SSTable streaming logs during tablet migration to correctly show the list of files sent, preventing confusion from previously empty file lists. #25830

  • Streaming: Enclose potential throws in try block and ensure sink close before logging. #25591, #25497

  • db/hints: Improve logs. #25466

  • Tablets: demoted sstables_repaired_at log to debug to reduce verbosity on large tablet counts. #25926

  • Fixed separator formatting from “ ,” to “,“ for improved log readability. #23883

  • Debug logs: deletion_time formatter prints wrong results. #25556

  • Change the error message of colocated repair to show table names instead of table IDs. #26567

  • Incorrect order of parameters in repair log. #26536

  • Compaction: demote normal compaction start/end log messages to debug level. #24949

  • Compaction: Enhanced trace logging in get_max_purgeable_timestamp. Now includes keyspace and table names in log messages, and adds trace logs for early return cases when tombstone_gc is disabled or gc_check_only_compacting_sstables is enabled. #24914.

  • Improved log clarity: When compactions are aborted, the log message now specifies the exact user-triggered reason (“truncate”, “cleanup”, “rewrite”, or “split”) instead of the generic “user-triggered operation”. #25136

  • Avoid setting the request_type field for truncation commands unless the topology_global_request_queue feature is enabled, ensuring compatibility with older nodes that don’t recognize global request types. #24731, #24716

Monitoring

  • There are now metrics for S3 prefetches. #25876

  • Added general metrics for each index. #25970

  • S3 Client: Memory Usage Metric – providing visibility into backup and restore memory consumption. #25864, #25769

  • New metric for time spent on tablet repair. #26505

Setup

  • scylla_sysconfig_setup prints warnings in 2025.2.0. #24915

  • Docker: Container image lacks the PS command used by ScyllaDB scripts. #24827

Reference

1 Like