mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-21 09:10:48 +00:00
Loosen safety threshold on amount of ALTER changes [#METR-21615].
This commit is contained in:
parent
168ca22435
commit
e8ffd48e49
@ -72,7 +72,9 @@ struct MergeTreeSettings
|
||||
size_t max_suspicious_broken_parts = 10;
|
||||
|
||||
/// Не выполнять ALTER, если количество файлов для модификации (удаления, добавления) больше указанного.
|
||||
size_t max_files_to_modify_in_alter_columns = 5;
|
||||
size_t max_files_to_modify_in_alter_columns = 50;
|
||||
/// Не выполнять ALTER, если количество файлов для удаления больше указанного.
|
||||
size_t max_files_to_remove_in_alter_columns = 10;
|
||||
|
||||
/// Максимальное количество ошибок при загрузке кусков, при котором ReplicatedMergeTree соглашается запускаться.
|
||||
size_t replicated_max_unexpected_parts = 3;
|
||||
@ -116,12 +118,14 @@ struct MergeTreeSettings
|
||||
SET_SIZE_T(merge_parts_at_night_inc);
|
||||
SET_SIZE_T(max_replicated_merges_in_queue);
|
||||
SET_SIZE_T(old_parts_lifetime);
|
||||
SET_SIZE_T(temporary_directories_lifetime);
|
||||
SET_SIZE_T(parts_to_delay_insert);
|
||||
SET_DOUBLE(insert_delay_step);
|
||||
SET_SIZE_T(replicated_deduplication_window);
|
||||
SET_SIZE_T(replicated_logs_to_keep);
|
||||
SET_SIZE_T(max_suspicious_broken_parts);
|
||||
SET_SIZE_T(max_files_to_modify_in_alter_columns);
|
||||
SET_SIZE_T(max_files_to_remove_in_alter_columns);
|
||||
SET_SIZE_T(replicated_max_unexpected_parts);
|
||||
SET_SIZE_T(replicated_max_unexpectedly_merged_parts);
|
||||
SET_SIZE_T(replicated_max_missing_obsolete_parts);
|
||||
|
@ -674,7 +674,16 @@ MergeTreeData::AlterDataPartTransactionPtr MergeTreeData::alterDataPart(
|
||||
bool force_update_metadata;
|
||||
createConvertExpression(part, part->columns, new_columns, expression, transaction->rename_map, force_update_metadata);
|
||||
|
||||
if (!skip_sanity_checks && transaction->rename_map.size() > settings.max_files_to_modify_in_alter_columns)
|
||||
size_t num_files_to_modify = transaction->rename_map.size();
|
||||
size_t num_files_to_remove = 0;
|
||||
|
||||
for (const auto & from_to : transaction->rename_map)
|
||||
if (from_to.second.empty())
|
||||
++num_files_to_remove;
|
||||
|
||||
if (!skip_sanity_checks
|
||||
&& (num_files_to_modify > settings.max_files_to_modify_in_alter_columns
|
||||
|| num_files_to_remove > settings.max_files_to_remove_in_alter_columns))
|
||||
{
|
||||
transaction->clear();
|
||||
|
||||
@ -686,7 +695,7 @@ MergeTreeData::AlterDataPartTransactionPtr MergeTreeData::alterDataPart(
|
||||
for (const auto & from_to : transaction->rename_map)
|
||||
{
|
||||
if (!first)
|
||||
exception_message << ", ";
|
||||
exception_message << ", ";
|
||||
exception_message << "from '" << from_to.first << "' to '" << from_to.second << "'";
|
||||
first = false;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user