diff --git a/test/pylib/scylla_cluster.py b/test/pylib/scylla_cluster.py index 293ef90c69..87f555b4c5 100644 --- a/test/pylib/scylla_cluster.py +++ b/test/pylib/scylla_cluster.py @@ -102,6 +102,8 @@ def make_scylla_conf(workdir: pathlib.Path, host_addr: str, seed_addrs: List[str 'reader_concurrency_semaphore_serialize_limit_multiplier': 0, 'reader_concurrency_semaphore_kill_limit_multiplier': 0, + + 'force_schema_commit_log': True, } # Seastar options can not be passed through scylla.yaml, use command line diff --git a/test/topology/test_topology.py b/test/topology/test_topology.py index e6b711f836..78739588b9 100644 --- a/test/topology/test_topology.py +++ b/test/topology/test_topology.py @@ -372,3 +372,14 @@ async def test_remove_node_with_concurrent_ddl(manager, random_tables): stopped = True await ddl_task logger.debug("ddl fiber done, finished") + + +@pytest.mark.asyncio +async def test_start_after_sudden_stop(manager: ManagerClient, random_tables) -> None: + """Tests a server can rejoin the cluster after being stopped suddenly""" + servers = await manager.running_servers() + table = await random_tables.add_table(ncolumns=5) + await manager.server_stop(servers[0].server_id) + await table.add_column() + await manager.server_start(servers[0].server_id) + await random_tables.verify_schema()