У меня были похожие проблемы при попытке обновить версии magento.Пожалуйста, попробуйте добавить следующую строку в начало этого сценария установки:
$this->getConnection()->disallowDdlCache();
Также я не думаю, что это имеет большое значение, но для хорошей меры попробуйте также очистить кэш DDL:
$this->getConnection()->resetDdlCache();
Это длинный выстрел, но он может сработать в вашем случае.
Отредактируйте в ответ на ваш комментарий:
Magento кеширует операторы DDL под обложками.Это означает, что он сможет выполнять некоторые операторы SQL немного быстрее.Но иногда это вызывает проблемы во время обновлений.Я думаю, что это как-то связано с внешними ключами и недействительными данными кэша.