Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
I get the following error when trying to run update.php (`drush updb`):
$> drush updb -y
ultimate_cron module :
7203 - Fix index sizes.
Do you wish to run all pending updates? (y/n): y
SQLSTATE[HY000]: General error: 1089 Incorrect prefix key; the used [error]
key part isn't a string, the used length is longer than the key part,
or the storage engine doesn't support unique prefix keys
Performed update: ultimate_cron_update_7203 [ok]
The db is stuck on this update hook. Please advise.
Comments
Comment #2
arnested CreditAttribution: arnested at Reload commentedWhat database are you using? MySQL, PostgreSQL? And which version? In case of MySQL which storage backend are you using (MyISAM, InnoDB)?
Comment #3
Chris CharltonMySQL 5.5; InnoDB tables.
Comment #4
arnested CreditAttribution: arnested at Reload commentedThat is weird.
What version are you upgrading from?
Comment #5
bighappyface CreditAttribution: bighappyface as a volunteer commentedGetting the same thing in my dev environment:
Going to update and try again
Comment #6
bighappyface CreditAttribution: bighappyface as a volunteer commentedGetting it in MySQL 5.5.51 too
Comment #7
arnested CreditAttribution: arnested at Reload commentedI tried to reproduce this with MariaDB 10.1.16 and MySQL 5.5.51). But with no success.
How is the
ultimate_cron_log
defined before running the update? And which indexes are defined?This is what I have when doing a clean install of Drupal 7.50 and Ultimate Cron 7.x-2.0-rc1:
After upgrading to Ultimate Cron 7.x-2.0-rc3 I have:
How many rows do you have in your
ultimate_cron_log
table?Is there anything in the tables
name
field that doesn't look like a regular text string?Comment #8
arnested CreditAttribution: arnested at Reload commentedClosing this issue due to inactivity.