[MCOL-5603] Online alter can break data consistency Created: 2023-11-07 Updated: 2024-01-16 |
|
| Status: | Stalled |
| Project: | MariaDB ColumnStore |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Critical |
| Reporter: | Nikita Malyavin | Assignee: | Roman |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Description |
|
Online alter (LOCK=NONE, which is default) works as follows: This means that now MCS can end up with inconsistent data if some concurrent writes were executed during alter table:
this may end up in the record y inserted twice in the resulting table. Context: MDL – Metadata lock, multi-granular lock that protects table metadata. Represented by MDL_request class and TABLE_LIST::mdl_request field respectively. See enum_mdl_type for the granularity types and MDL_lock::MDL_object_lock::m_granted_incompatible for the compatibility matrix. Reproduction:
|
| Comments |
| Comment by Roman [ 2023-11-07 ] | |
|
Simplified description of the repro case:
| |
| Comment by Nikita Malyavin [ 2023-11-14 ] | |
|
Changed to critical since it's a regression |