ClickHouse/tests/integration/test_log_query_probability/test.py
Nikolay Degterinsky 58773c9ef3 Add test
2021-08-30 12:53:56 +03:00

47 lines
1.7 KiB
Python

import pytest
from helpers.cluster import ClickHouseCluster
cluster = ClickHouseCluster(__file__, name="log_quries_probability")
node1 = cluster.add_instance('node1', with_zookeeper=False)
node2 = cluster.add_instance('node2', with_zookeeper=False)
@pytest.fixture(scope="module")
def start_cluster():
try:
cluster.start()
yield cluster
finally:
cluster.shutdown()
def test_log_quries_probability_one(start_cluster):
for i in range(100):
node1.query("SELECT 12345", settings={"log_queries_probability":0.5})
node1.query("SYSTEM FLUSH LOGS")
assert node1.query("SELECT count() < (2 * 100) FROM system.query_log WHERE query LIKE '%12345%' AND query NOT LIKE '%system.query_log%'") == "1\n"
assert node1.query("SELECT count() > 0 FROM system.query_log WHERE query LIKE '%12345%' AND query NOT LIKE '%system.query_log%'") == "1\n"
assert node1.query("SELECT count() % 2 FROM system.query_log WHERE query LIKE '%12345%' AND query NOT LIKE '%system.query_log%'") == "0\n"
node1.query("TRUNCATE TABLE system.query_log")
def test_log_quries_probability_two(start_cluster):
for i in range(100):
node1.query("SELECT 12345 FROM remote('node2', system, one)", settings={"log_queries_probability":0.5})
node1.query("SYSTEM FLUSH LOGS")
node2.query("SYSTEM FLUSH LOGS")
ans1 = node1.query("SELECT count() FROM system.query_log WHERE query LIKE '%12345%' AND query NOT LIKE '%system.query_log%'")
ans2 = node2.query("SELECT count() FROM system.query_log WHERE query LIKE '%12345%' AND query NOT LIKE '%system.query_log%'")
assert ans1 == ans2
node1.query("TRUNCATE TABLE system.query_log")
node2.query("TRUNCATE TABLE system.query_log")