Last week in scylladb.git master (issue #214; 2024-01-21)

This short report brings to light some interesting commits to scylladb.git master from the last week. Commits in the 423234841e…b1ba904c49 range are covered.

There were 99 non-merge commits from 17 authors in that period. Some notable commits:

If the experimental tablets feature is enabled, newly-created keyspaces will use tablets. This facilitates testing. One can opt-out by using the TABLETS = property map.

nodetool repair can now repair keyspaces that use tablets, with some limitations.

The materialized view building code now works with tablets.

The nodetool refresh command now automatically uses load-and-stream for tables that use tablets. Since tablets are more dynamic, it’s not possible for the operator to place sstables in nodes that own them, so using load-and-stream is safer.

The DESCRIBE CLUSTER statement now ignores keyspaces that use tablets, since each table within them has its own token range ownership mapping.

The bundled Python driver was updated to a version that supports tablets.

Many tests now run with tablets enabled.

Cleanup is used to remove data from nodes after it was migrated to other nodes. Cleanup now ignores keyspaces that never migrate data away.

When recovering after a crash, we skip commitlog replay for data that we know was captured in sstables. However, we must ignore sstables that were not created on this node, as the commitlog positions they refer to are invalid on this node.

There is now a new table that tracks topology changes and their completion status. The table is active when experimental consistent topology is enabled.

When using consistent topology, a failed attempt to join a node will now shut it down rather than hanging.

A bug in the rebuild command when experimental consistent topology is enabled was fixed.

The service level mechanism works by polling the internal tables used to represent it. The polling interval can now be configured. This is useful to speed up tests.

The bundled cqlsh command now works with unix-domain sockets as well as TCP. This allows it to use the new administrative CQL interface.

There is now new option for testing code coverage.

See you in the next issue of last week in scylladb.git master!