mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-22 15:42:02 +00:00
Recreate database at each run
This commit is contained in:
parent
652ff82ae9
commit
43482c4ed0
@ -1,40 +1,35 @@
|
||||
import pytest
|
||||
|
||||
from helpers.cluster import ClickHouseCluster
|
||||
|
||||
cluster = ClickHouseCluster(__file__)
|
||||
|
||||
node1 = cluster.add_instance(
|
||||
"node1", main_configs=["configs/distributed_servers.xml"], with_zookeeper=True
|
||||
"node1", with_zookeeper=True, main_configs=["configs/distributed_servers.xml"]
|
||||
)
|
||||
node2 = cluster.add_instance(
|
||||
"node2", with_zookeeper=True, main_configs=["configs/distributed_servers.xml"]
|
||||
)
|
||||
|
||||
def fill_nodes(nodes):
|
||||
for node in nodes:
|
||||
node.query(
|
||||
"""
|
||||
DROP DATABASE IF EXISTS test;
|
||||
CREATE DATABASE test;
|
||||
CREATE TABLE test.local_table(id UInt32, val String) ENGINE = MergeTree ORDER BY id;
|
||||
CREATE TABLE test.distributed(id UInt32, val String) ENGINE = Distributed(test_cluster, test, local_table);
|
||||
INSERT INTO test.local_table VALUES ({pos}, '{replica}');
|
||||
""".format(
|
||||
pos=node.name[4:], replica=node.name
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@pytest.fixture(scope="module")
|
||||
def started_cluster():
|
||||
try:
|
||||
cluster.start()
|
||||
|
||||
for node in (node1, node2):
|
||||
node.query(
|
||||
"""
|
||||
CREATE DATABASE test;
|
||||
CREATE TABLE test.local_table(id UInt32, val String) ENGINE = MergeTree ORDER BY id
|
||||
"""
|
||||
)
|
||||
|
||||
node1.query("INSERT INTO test.local_table VALUES (1, 'node1')")
|
||||
node2.query("INSERT INTO test.local_table VALUES (2, 'node2')")
|
||||
|
||||
node1.query(
|
||||
"CREATE TABLE test.distributed(id UInt32, val String) ENGINE = Distributed(test_cluster, test, local_table)"
|
||||
)
|
||||
node2.query(
|
||||
"CREATE TABLE test.distributed(id UInt32, val String) ENGINE = Distributed(test_cluster, test, local_table)"
|
||||
)
|
||||
|
||||
yield cluster
|
||||
|
||||
finally:
|
||||
@ -42,6 +37,8 @@ def started_cluster():
|
||||
|
||||
|
||||
def test_truncate_database_distributed(started_cluster):
|
||||
fill_nodes([node1, node2])
|
||||
|
||||
query1 = "SELECT count() FROM test.distributed WHERE (id, val) IN ((1, 'node1'), (2, 'a'), (3, 'b'))"
|
||||
query2 = "SELECT sum((id, val) IN ((1, 'node1'), (2, 'a'), (3, 'b'))) FROM test.distributed"
|
||||
assert node1.query(query1) == "1\n"
|
||||
|
@ -6,6 +6,7 @@ def fill_nodes(nodes, shard):
|
||||
for node in nodes:
|
||||
node.query(
|
||||
"""
|
||||
DROP DATABASE IF EXISTS test;
|
||||
CREATE DATABASE test;
|
||||
|
||||
CREATE TABLE test.test_table(date Date, id UInt32)
|
||||
@ -33,8 +34,6 @@ def start_cluster():
|
||||
try:
|
||||
cluster.start()
|
||||
|
||||
fill_nodes([node1, node2, node3], 1)
|
||||
|
||||
yield cluster
|
||||
|
||||
except Exception as ex:
|
||||
@ -45,6 +44,8 @@ def start_cluster():
|
||||
|
||||
|
||||
def test_truncate_database_replicated(start_cluster):
|
||||
fill_nodes([node1, node2, node3], 1)
|
||||
|
||||
node1.query(
|
||||
"INSERT INTO test.test_table SELECT number, toString(number) FROM numbers(100)"
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user