diff --git a/test/cluster/dtest/ccmlib/scylla_cluster.py b/test/cluster/dtest/ccmlib/scylla_cluster.py index ca49dbe153..cef98422e6 100644 --- a/test/cluster/dtest/ccmlib/scylla_cluster.py +++ b/test/cluster/dtest/ccmlib/scylla_cluster.py @@ -227,6 +227,11 @@ class ScyllaCluster: def flush(self) -> None: self.nodetool("flush") + def compact(self, keyspace: str = "", tables: list[str] | None = None) -> None: + for node in self.nodelist(): + if node.is_running(): + node.compact(keyspace=keyspace, tables=tables) + @staticmethod def debug(message: str) -> None: logger.debug(message) diff --git a/test/cluster/dtest/ccmlib/scylla_node.py b/test/cluster/dtest/ccmlib/scylla_node.py index e09b893b19..cf70978454 100644 --- a/test/cluster/dtest/ccmlib/scylla_node.py +++ b/test/cluster/dtest/ccmlib/scylla_node.py @@ -647,11 +647,12 @@ class ScyllaNode: cmd.append(table) self.nodetool(" ".join(cmd), **kwargs) - def compact(self, keyspace: str = "", tables: str | None = ()) -> None: + def compact(self, keyspace: str = "", tables: list[str] | None = None) -> None: compact_cmd = ["compact"] if keyspace: compact_cmd.append(keyspace) - compact_cmd += tables + if tables: + compact_cmd.extend(tables) self.nodetool(" ".join(compact_cmd)) def drain(self, block_on_log: bool = False) -> None: