ClickHouse/tests/integration/test_tmp_policy/test.py

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

43 lines
1.2 KiB
Python
Raw Normal View History

2020-01-19 19:16:33 +00:00
# pylint: disable=unused-argument
# pylint: disable=redefined-outer-name
import pytest
from helpers.cluster import ClickHouseCluster
cluster = ClickHouseCluster(__file__)
node = cluster.add_instance(
"node",
main_configs=["configs/config.d/storage_configuration.xml"],
tmpfs=["/disk1:size=100M", "/disk2:size=100M"],
)
2020-01-19 19:16:33 +00:00
@pytest.fixture(scope="module")
def start_cluster():
try:
cluster.start()
yield cluster
finally:
cluster.shutdown()
2022-12-06 10:04:15 +00:00
def test_disk_selection(start_cluster):
2020-01-19 19:16:33 +00:00
query = "SELECT count(ignore(*)) FROM (SELECT * FROM system.numbers LIMIT 1e7) GROUP BY number"
settings = {
"max_bytes_before_external_group_by": 1 << 20,
"max_bytes_before_external_sort": 1 << 20,
2020-01-19 19:16:33 +00:00
}
assert node.contains_in_log("Setting up /disk1/ to store temporary data in it")
assert node.contains_in_log("Setting up /disk2/ to store temporary data in it")
node.query(query, settings=settings)
assert node.contains_in_log(
"Writing part of aggregation data into temporary file.*/disk1/"
2020-01-19 19:16:33 +00:00
)
assert node.contains_in_log(
"Writing part of aggregation data into temporary file.*/disk2/"
2020-01-19 19:16:33 +00:00
)