The block module keeps failing while updating it and here is the error message:

Failed: PDOException: SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes: ALTER TABLE {block} CHANGE `weight` `weight` INT NOT NULL DEFAULT 0 COMMENT 'Block weight within region.', ADD INDEX `list` (`theme`, `status`, `region`, `weight`, `module`); Array ( ) in db_change_field() (line 2984 of /var/www/html/includes/database/database.inc).

I am upgrading it exactly as recommended in the upgrading manual.

What am I doing wrong?

Comments

skein’s picture

I had a similar issue.

There is a row in the database in the 'block' table. which contains information that is going to be too long after the table is altered. Try figuring out, which module provides the block and if that module can be uninstalled and installed after the update.

Or maybe altering the content of that row in phpMyAdmin just for the update.

mithralsun’s picture

How do I find out what row is the one?

skein’s picture

You can do MySQL query searching the column with the string length function

wiredescape’s picture