mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-25 00:52:02 +00:00
Fix tests.
This commit is contained in:
parent
206bd174c3
commit
19bcc5550b
@ -251,23 +251,16 @@ def kill_query(
|
|||||||
if is_initial_query is not None
|
if is_initial_query is not None
|
||||||
else ""
|
else ""
|
||||||
)
|
)
|
||||||
|
old_time = time.monotonic()
|
||||||
node.query(
|
node.query(
|
||||||
f"KILL QUERY WHERE (query_kind='{query_kind}') AND (query LIKE '%{id}%'){filter_for_is_initial_query} SYNC"
|
f"KILL QUERY WHERE (query_kind='{query_kind}') AND (query LIKE '%{id}%'){filter_for_is_initial_query} SYNC"
|
||||||
)
|
)
|
||||||
node.query("SYSTEM FLUSH LOGS")
|
waited = time.monotonic() - old_time
|
||||||
duration = (
|
|
||||||
int(
|
|
||||||
node.query(
|
|
||||||
f"SELECT query_duration_ms FROM system.query_log WHERE query_kind='KillQuery' AND query LIKE '%{id}%' AND type='QueryFinish'"
|
|
||||||
)
|
|
||||||
)
|
|
||||||
/ 1000
|
|
||||||
)
|
|
||||||
print(
|
print(
|
||||||
f"{get_node_name(node)}: Cancelled {operation_name} {id} after {duration} seconds"
|
f"{get_node_name(node)}: Cancelled {operation_name} {id} after {waited} seconds"
|
||||||
)
|
)
|
||||||
if timeout is not None:
|
if timeout is not None:
|
||||||
assert duration < timeout
|
assert waited < timeout
|
||||||
|
|
||||||
|
|
||||||
# Stops all ZooKeeper servers.
|
# Stops all ZooKeeper servers.
|
||||||
@ -305,7 +298,7 @@ def sleep(seconds):
|
|||||||
class NoTrashChecker:
|
class NoTrashChecker:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.expect_backups = []
|
self.expect_backups = []
|
||||||
self.expect_unfinished_backups = []
|
self.allow_unfinished_backups = []
|
||||||
self.expect_errors = []
|
self.expect_errors = []
|
||||||
self.allow_errors = []
|
self.allow_errors = []
|
||||||
self.check_zookeeper = True
|
self.check_zookeeper = True
|
||||||
@ -373,7 +366,7 @@ class NoTrashChecker:
|
|||||||
if unfinished_backups:
|
if unfinished_backups:
|
||||||
print(f"Found unfinished backups: {unfinished_backups}")
|
print(f"Found unfinished backups: {unfinished_backups}")
|
||||||
assert new_backups == set(self.expect_backups)
|
assert new_backups == set(self.expect_backups)
|
||||||
assert unfinished_backups == set(self.expect_unfinished_backups)
|
assert unfinished_backups.difference(self.allow_unfinished_backups) == set()
|
||||||
|
|
||||||
all_errors = set()
|
all_errors = set()
|
||||||
start_time = time.strftime(
|
start_time = time.strftime(
|
||||||
@ -641,7 +634,7 @@ def test_long_disconnection_stops_backup():
|
|||||||
assert get_status(initiator, backup_id=backup_id) == "CREATING_BACKUP"
|
assert get_status(initiator, backup_id=backup_id) == "CREATING_BACKUP"
|
||||||
assert get_num_system_processes(initiator, backup_id=backup_id) >= 1
|
assert get_num_system_processes(initiator, backup_id=backup_id) >= 1
|
||||||
|
|
||||||
no_trash_checker.expect_unfinished_backups = [backup_id]
|
no_trash_checker.allow_unfinished_backups = [backup_id]
|
||||||
no_trash_checker.allow_errors = [
|
no_trash_checker.allow_errors = [
|
||||||
"FAILED_TO_SYNC_BACKUP_OR_RESTORE",
|
"FAILED_TO_SYNC_BACKUP_OR_RESTORE",
|
||||||
"KEEPER_EXCEPTION",
|
"KEEPER_EXCEPTION",
|
||||||
@ -674,7 +667,7 @@ def test_long_disconnection_stops_backup():
|
|||||||
# A backup is expected to fail, but it isn't expected to fail too soon.
|
# A backup is expected to fail, but it isn't expected to fail too soon.
|
||||||
print(f"Backup failed after {time_to_fail} seconds disconnection")
|
print(f"Backup failed after {time_to_fail} seconds disconnection")
|
||||||
assert time_to_fail > 3
|
assert time_to_fail > 3
|
||||||
assert time_to_fail < 30
|
assert time_to_fail < 35
|
||||||
|
|
||||||
|
|
||||||
# A backup must NOT be stopped if Zookeeper is disconnected shorter than `failure_after_host_disconnected_for_seconds`.
|
# A backup must NOT be stopped if Zookeeper is disconnected shorter than `failure_after_host_disconnected_for_seconds`.
|
||||||
@ -695,7 +688,7 @@ def test_short_disconnection_doesnt_stop_backup():
|
|||||||
backup_id = random_id()
|
backup_id = random_id()
|
||||||
initiator.query(
|
initiator.query(
|
||||||
f"BACKUP TABLE tbl ON CLUSTER 'cluster' TO {get_backup_name(backup_id)} SETTINGS id='{backup_id}' ASYNC",
|
f"BACKUP TABLE tbl ON CLUSTER 'cluster' TO {get_backup_name(backup_id)} SETTINGS id='{backup_id}' ASYNC",
|
||||||
settings={"backup_restore_failure_after_host_disconnected_for_seconds": 6},
|
settings={"backup_restore_failure_after_host_disconnected_for_seconds": 10},
|
||||||
)
|
)
|
||||||
|
|
||||||
assert get_status(initiator, backup_id=backup_id) == "CREATING_BACKUP"
|
assert get_status(initiator, backup_id=backup_id) == "CREATING_BACKUP"
|
||||||
@ -703,13 +696,13 @@ def test_short_disconnection_doesnt_stop_backup():
|
|||||||
|
|
||||||
# Dropping connection for less than `failure_after_host_disconnected_for_seconds`
|
# Dropping connection for less than `failure_after_host_disconnected_for_seconds`
|
||||||
with PartitionManager() as pm:
|
with PartitionManager() as pm:
|
||||||
random_sleep(3)
|
random_sleep(4)
|
||||||
node_to_drop_zk_connection = random_node()
|
node_to_drop_zk_connection = random_node()
|
||||||
print(
|
print(
|
||||||
f"Dropping connection between {get_node_name(node_to_drop_zk_connection)} and ZooKeeper"
|
f"Dropping connection between {get_node_name(node_to_drop_zk_connection)} and ZooKeeper"
|
||||||
)
|
)
|
||||||
pm.drop_instance_zk_connections(node_to_drop_zk_connection)
|
pm.drop_instance_zk_connections(node_to_drop_zk_connection)
|
||||||
random_sleep(3)
|
random_sleep(4)
|
||||||
print(
|
print(
|
||||||
f"Restoring connection between {get_node_name(node_to_drop_zk_connection)} and ZooKeeper"
|
f"Restoring connection between {get_node_name(node_to_drop_zk_connection)} and ZooKeeper"
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user