Последнее обновление
Проблемы целостности данных
В этом документе описаны распространённые проблемы целостности данных, возникающие при использовании Doris. Документ будет периодически обновляться.
Под «дублированием ключей в таблице» понимается появление данных с повторяющимися ключами в таблице Unique с merge-on-write. Дублирование ключей в таблицах Unique с merge-on-write можно устранить запуском full compaction, а другие проблемы целостности могут потребовать отдельных решений в зависимости от ситуации. За помощью обращайтесь в сообщество.
| Описание проблемы | Условия возникновения | Затронутые версии | Версии с исправлением | Область воздействия | PR с исправлением |
|---|---|---|---|---|---|
| Частичное обновление столбцов в таблице Unique с merge-on-write восстанавливает ранее удалённые данные | При частичном обновлении столбцов указан столбец __DORIS_DELETE_SIGN__, а ранее записанные данные содержат строки, помеченные как удалённые с помощью столбца __DORIS_DELETE_SIGN__ | <2.1.8, <3.0.4 | >=2.1.8, >=3.0.4 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, частичное обновление столбцов | #46194 |
| Дублирование ключей в таблице | Параллельные загрузки в таблицу Unique с merge-on-write в режиме с разделением вычислений и хранения | <3.0.4 | >=3.0.4 | Режим с разделением вычислений и хранения | #46039 |
| Дублирование ключей в таблице | Параллельное выполнение нескольких загрузок, а также загрузки и compaction в таблице Unique с merge-on-write в режиме с разделением вычислений и хранения | <3.0.4 | >=3.0.4 | Режим с разделением вычислений и хранения | #44975 |
| Генерируемые системой значения столбца с автоинкрементом равны 0 или повторяются | Сетевые сбои между BE и FE | <2.1.8, <3.0.3 | >=2.1.8, >=3.0.3 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, столбец с автоинкрементом | #43774 |
Загрузка через Stream Load не удаляет данные, соответствующие условию delete, в таблице Unique с merge-on-write | Загрузка через Stream Load с параметрами merge_type: MERGE, partial_columns: true и delete | <2.0.15, <2.17, <3.0.3 | >=2.0.15, >=2.17, >=3.0.3 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, частичное обновление столбцов | #40730 |
| Частичное обновление столбцов приводит к непреднамеренному изменению значений столбца с автоинкрементом | В таблице автоинкремент задан для столбца Value, а при загрузке с частичным обновлением столбцов значения для этого столбца не указаны | <2.1.6, <3.0.2 | >=2.1.6, >=3.0.2 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, столбец с автоинкрементом | #39996 |
| Дублирование ключей в таблице | Пользователь добавляет поддержку столбца sequence в таблицу Unique с merge-on-write, в которой такие столбцы не поддерживаются, с помощью ALTER TABLE tbl ENABLE FEATURE "SEQUENCE_LOAD" WITH ..., а затем выполняет новую загрузку | <2.0.15, <2.1.6, <3.0.2 | >=2.0.15, >=2.1.6, >=3.0.2 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения | #39958 |
| Дублирование ключей в таблице | Параллельные загрузки либо параллельное выполнение загрузок и compaction в таблице Unique с merge-on-write в режиме с разделением вычислений и хранения | <3.0.1 | >=3.0.1 | Режим с разделением вычислений и хранения | #39018 |
| Загрузка с частичным обновлением столбцов приводит к повреждению данных в таблице Unique с merge-on-write | Параллельные частичные обновления столбцов в таблице Unique с merge-on-write и перезапуск BE во время загрузки | <2.0.15, <2.1.6, <3.0.2 | >=2.0.15, >=2.1.6, >=3.0.2 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, частичное обновление столбцов | #38331 |
| Дублирование ключей в таблице | Параллельное выполнение загрузок и compaction в таблице Unique с merge-on-write в режиме с разделением вычислений и хранения | <3.0.2 | >=3.0.2 | Режим с разделением вычислений и хранения | #37670, #41309, #39791 |
| Дублирование ключей в таблице | Одна загрузка большого объёма данных в таблицу Unique с merge-on-write и столбцом sequence запускает segment compaction | <2.0.15, <2.1.6, <3.0.2 | >=2.0.15, >=2.1.6, >=3.0.2 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения | #38369 |
| Дублирование ключей в таблице | Сбой full clone таблицы Unique с merge-on-write в режиме с совмещением вычислений и хранения | <2.0.13, <2.1.5, <3.0.0 | >=2.0.13, >=2.1.5, >=3.0.0 | Режим с совмещением вычислений и хранения | #37001 |
| Дублирование ключей в таблице | Загрузки через Stream Load с внутренними повторными попытками в таблицу Unique с merge-on-write в режиме с разделением вычислений и хранения | <3.0.0 | >=3.0.0 | Режим с разделением вычислений и хранения | #36670 |
| Несогласованность данных между репликами таблицы Unique с merge-on-write | Загрузка с частичным обновлением столбцов с указанием столбца __DORIS_DELETE_SIGN__ в таблицу Unique с merge-on-write, при которой степень выполнения Base Compaction различается между репликами | <2.0.15, <2.1.5, <3.0.0 | >=2.0.15, >=2.1.5, >=3.0.0 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, частичное обновление столбцов | #36210 |
| Дублирование ключей в таблице | Параллельные частичные обновления столбцов и перезапуск BE во время загрузок в таблицу Unique с merge-on-write | <2.0.11, <2.1.4, <3.0.0 | >=2.0.11, >=2.1.4, >=3.0.0 | Режим с совмещением вычислений и хранения, режим с разделением вычислений и хранения, частичное обновление столбцов | #35739 |