未验证 提交 ac802a8e 编写于 作者: A alesapin 提交者: GitHub

Merge pull request #12543 from ClickHouse/fix_marks_type_on_mutation

Fix incorrect adaptive granularity by default
......@@ -46,7 +46,7 @@ MergedBlockOutputStream::MergedBlockOutputStream(
{
MergeTreeWriterSettings writer_settings(
storage.global_context.getSettings(),
storage.canUseAdaptiveGranularity(),
data_part->index_granularity_info.is_adaptive,
aio_threshold,
blocks_are_granules_size);
......
......@@ -6,6 +6,9 @@ cluster = ClickHouseCluster(__file__)
node1 = cluster.add_instance('node1', with_zookeeper=True)
node2 = cluster.add_instance('node2', with_zookeeper=True)
# no adaptive granularity by default
node3 = cluster.add_instance('node3', image='yandex/clickhouse-server:19.9.5.36', with_installed_binary=True, stay_alive=True)
@pytest.fixture(scope="module")
def start_cluster():
try:
......@@ -47,3 +50,29 @@ def test_attach_detach(start_cluster):
assert node1.query("SELECT COUNT() FROM test") == "4\n"
assert node2.query("SELECT COUNT() FROM test") == "4\n"
def test_mutate_with_mixed_granularity(start_cluster):
node3.query("""
CREATE TABLE test (date Date, key UInt64, value1 String, value2 String)
ENGINE = MergeTree
ORDER BY key PARTITION BY date""")
node3.query("INSERT INTO test SELECT toDate('2019-10-01') + number % 5, number, toString(number), toString(number * number) FROM numbers(500)")
assert node3.query("SELECT COUNT() FROM test") == "500\n"
node3.restart_with_latest_version()
assert node3.query("SELECT COUNT() FROM test") == "500\n"
node3.query("ALTER TABLE test MODIFY SETTING enable_mixed_granularity_parts = 1")
node3.query("INSERT INTO test SELECT toDate('2019-10-01') + number % 5, number, toString(number), toString(number * number) FROM numbers(500, 500)")
assert node3.query("SELECT COUNT() FROM test") == "1000\n"
assert node3.query("SELECT COUNT() FROM test WHERE key % 100 == 0") == "10\n"
node3.query("ALTER TABLE test DELETE WHERE key % 100 == 0", settings={"mutations_sync": "2"})
assert node3.query("SELECT COUNT() FROM test WHERE key % 100 == 0") == "0\n"
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册