[MDEV-14219] Allow online table rebuild when encryption or compression parameters change Created: 2017-10-30  Updated: 2021-10-26  Resolved: 2017-10-31

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - InnoDB, Storage Engine - XtraDB
Affects Version/s: 10.1.0, 10.2.0, 10.3.0
Fix Version/s: 10.1.29, 10.2.11, 10.3.3

Type: Bug Priority: Major
Reporter: Marko Mäkelä Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: compression, encryption, online-ddl

Issue Links:
Duplicate
is duplicated by MDEV-13639 Server crashes in prepare_inplace_alt... Closed
is duplicated by MDEV-13865 InnoDB unnecessarily uses ALGORITHM=C... Closed
Problem/Incident
causes MDEV-15116 Wrong error code/message 1478: 'Table... Open
Relates
relates to MDEV-14016 Allow instant ADD COLUMN, ADD INDEX, ... Closed

 Description   

When MariaDB 10.1.0 introduced table options for encryption and compression, it unnecessarily changed ha_innobase::check_if_supported_inplace_alter() so that ALGORITHM=COPY is forced when these parameters differ.
A better solution would be to move the check to innobase_need_rebuild(). In that way, the ALGORITHM=INPLACE interface (yes, the syntax is very misleading) can be used for rebuilding the table much more efficiently, with merge sort, with no undo logging, and allowing concurrent DML operations.


Generated at Thu Feb 08 08:11:51 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.