mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 10:02:01 +00:00
dbms: fixing error with 'nonincrement_block_numbers' [#METR-18139].
This commit is contained in:
parent
0b0fb3a594
commit
0f8b651fe8
@ -41,6 +41,7 @@ private:
|
|||||||
void clearOldBlocks();
|
void clearOldBlocks();
|
||||||
|
|
||||||
/// TODO Удаление старых quorum/failed_parts
|
/// TODO Удаление старых quorum/failed_parts
|
||||||
|
/// TODO Удаление старых nonincrement_block_numbers
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -2060,7 +2060,25 @@ void StorageReplicatedMergeTree::searchForMissingPart(const String & part_name)
|
|||||||
* Специально из-за этого приходится отдельно иметь nonincrement_block_numbers.
|
* Специально из-за этого приходится отдельно иметь nonincrement_block_numbers.
|
||||||
*
|
*
|
||||||
* Кстати, если мы здесь сдохнем, то слияния не будут делаться сквозь эти отсутствующие куски.
|
* Кстати, если мы здесь сдохнем, то слияния не будут делаться сквозь эти отсутствующие куски.
|
||||||
|
*
|
||||||
|
* А ещё, не будем добавлять, если:
|
||||||
|
* - потребовалось бы создать слишком много (больше 1000) узлов;
|
||||||
|
* - кусок является первым в партиции или был при-ATTACH-ен.
|
||||||
|
* NOTE Возможно, добавить также условие, если запись в очереди очень старая.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
if (part_length_in_blocks > 1000)
|
||||||
|
{
|
||||||
|
LOG_ERROR(log, "Won't add nonincrement_block_numbers because part spans too much blocks (" << part_length_in_blocks << ")");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (part_info.left <= RESERVED_BLOCK_NUMBERS)
|
||||||
|
{
|
||||||
|
LOG_ERROR(log, "Won't add nonincrement_block_numbers because part is one of first in partition");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const auto partition_str = part_name.substr(0, 6);
|
const auto partition_str = part_name.substr(0, 6);
|
||||||
for (auto i = part_info.left; i <= part_info.right; ++i)
|
for (auto i = part_info.left; i <= part_info.right; ++i)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user