import pytest from helpers.cluster import ClickHouseCluster cluster = ClickHouseCluster(__file__) node1 = cluster.add_instance('node1', main_configs=['configs/remote_servers.xml'], with_zookeeper=True) node2 = cluster.add_instance('node2', main_configs=['configs/remote_servers.xml'], with_zookeeper=True) @pytest.fixture(scope="module") def started_cluster(): try: cluster.start() for node in (node1, node2): node.query(''' CREATE TABLE default.t1_local ( event_date Date DEFAULT toDate(event_time), event_time DateTime, log_type UInt32, account_id String ) ENGINE = MergeTree(event_date, (event_time, account_id), 8192); ''') node.query(''' CREATE TABLE default.t1 AS default.t1_local ENGINE = Distributed('two_shards', 'default', 't1_local', rand()); ''') yield cluster finally: cluster.shutdown() def test_read(started_cluster): assert node1.query('''SELECT event_date, event_time, log_type FROM default.t1 WHERE (log_type = 30305) AND (account_id = '111111') LIMIT 1''').strip() == ''