Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.5(EOL), 10.0(EOL), 10.1(EOL)
Description
Currently, changing delay_key_write option for MyISAM table using ALTER TABLE statement copies all table rows to a temporary table during alteration. However, it is totally unnecessary. Changing this attribute should not copy rows.
One can just create a table with the same structure and this option set and then copy/rename .frm file, but why to rely on workaround when this can be implemented by server itself?
See https://bugs.mysql.com/bug.php?id=45492 upstream MySQL bug also.
Attachments
Issue Links
- relates to
-
MDEV-12836 Avoid table rebuild when removing of auto_increment settings
-
- Closed
-
-
MDEV-13636 ALTER TABLE ... DELAY_KEY_WRITE=1 creates table copy for MyISAM table with DATA DIRECTORY/INDEX DIRECTORY options
-
- Closed
-
- links to
Activity
Field | Original Value | New Value |
---|---|---|
Labels | MyISAM upstream |
Fix Version/s | 10.1 [ 16100 ] |
Affects Version/s | 5.5 [ 15800 ] | |
Affects Version/s | 10.0 [ 16000 ] | |
Affects Version/s | 10.1 [ 16100 ] |
Assignee | Sergei Golubchik [ serg ] |
Remote Link | This issue links to "Bug #45492 changing delay_key_write option should not copy rows (Web Link)" [ 27957 ] |
Link |
This issue relates to |
Status | Open [ 1 ] | In Progress [ 3 ] |
Status | In Progress [ 3 ] | Stalled [ 10000 ] |
Fix Version/s | 10.1.24 [ 22541 ] | |
Fix Version/s | 10.2.7 [ 22543 ] | |
Fix Version/s | 10.1 [ 16100 ] | |
Resolution | Fixed [ 1 ] | |
Status | Stalled [ 10000 ] | Closed [ 6 ] |
Link |
This issue relates to |
Workflow | MariaDB v3 [ 78425 ] | MariaDB v4 [ 151252 ] |
Zendesk Related Tickets | 182220 |
This is a bit tricky. delay_key_write option is stored in the MYI file and MyISAM does not support rewriting MYI header only, it has to recreate the whole MYI file.