|
Alter table. Metadata locks
|
|||
---|---|---|---|
#18+
Добрый день. Имею 2 сервера. Таблицы Innodb. File_per_table=1 1) 10.0.27-MariaDB ; innodb 5.6 ; 2) 10.3.10-MariaDB ; innodb 10.3 ; На первом сервере при выполнении ALTER TABLE `test` CHANGE `column1` `column1` MEDIUMTEXT таблица не блокируется для UPDATE/INSERT. Т.е можно свободно изменять данные таблицы, пока работает альтер. На втором сервере при попытки сделать update или insert на таблицу по которой работает альтер, получаю "Waiting for metadata lock". Т.е пока таблица альтерится, никаких изменений в неё внести не получается. Что то встал в ступр, почему так происходит. Попробовал покопаться в глобальных переменных, принципиальных различий не заметил. Может быть кто нибудь может подсказать в какую сторону копать? Хочется нормальных Online DDL. ЗЫ Знаю, что полнотекстовые индексы блокируют online ddl. Никогда их не ставил ни на один из серверов. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2019, 16:22 |
|
Alter table. Metadata locks
|
|||
---|---|---|---|
#18+
Вести с полей: Вероятно дело в том, что по умолчанию на MariaDB.10+ алгорим альтера = DEFAULT. Что означает, что мария сама решает делать альтер INPLACE или COPY. Неясно только почему для первой базы она выбирает INPLACE, а для второй - COPY. Когда пытаюсь запустить такой DDL: ALTER TABLE `test` CHANGE `column1` `column1` MEDIUMTEXT, ALGORITHM=INPLACE; Получаю ошибку: ALGORITHM=INPLACE is not supported. Reason: Cannot change column type INPLACE. Try ALGORITHM=COPY. Под ограничения onlineDDL тоже не попадаю ( https://dev.mysql.com/doc/refman/5.6/en/innodb-online-ddl-limitations.html) Продолжаю курить мануалы. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2019, 18:31 |
|
Alter table. Metadata locks
|
|||
---|---|---|---|
#18+
Разобрался. Формат колонки INPLACE можно поменять только в очень редком случае, описаным тут: https://mariadb.com/kb/en/library/innodb-online-ddl-operations-with-algorithminplace/ ... |
|||
:
Нравится:
Не нравится:
|
|||
10.05.2019, 19:10 |
|
|
start [/forum/topic.php?fid=47&fpage=36&tid=1829150]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 136ms |
0 / 0 |