When I upgraded my test server to 21.0.1 RC1, this happened:
-
the upgrade itself went fine.
-
when I checked the Administration/Overview page of my site, there was a message: The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running “occ db:add-missing-indices” those missing indexes could be added manually while the instance keeps running.
-
When I issued the mentioned command, I got these errors:
Check indices of the share table.
Check indices of the filecache table.
Adding additional path index to the filecache table, this can take some time…In ExceptionConverter.php line 114:
An exception occurred while executing a query: SQLSTATE[HY000]: General error: 1089 Incorrect prefix key; the used 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
In Exception.php line 26:
SQLSTATE[HY000]: General error: 1089 Incorrect prefix key; the used 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
In Connection.php line 82:
SQLSTATE[HY000]: General error: 1089 Incorrect prefix key; the used 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
db:add-missing-indices
This is on a Debian 10.9 server, with PHP7.4 fpm and mariadb 10.3.27-0+deb10u1 installed. This did not happen before, all add-missing-indices in the past worked flawless.