-
Incident report
-
Resolution: Won't fix
-
Major
-
None
-
3.2.0
-
- Debian 8 x64
- MySQL 5.5.52 (InnoDB disabled)
- Upgrade Zabbix from 3.0.4 to 3.2.0
Hi,
I tried to upgrade my small Zabbix environment from 3.0.4 to 3.2.0. MySQL with MyISAM is used. And the database upgrade failed with
19091:20160919:202200.725 current database version (mandatory/optional): 03010037/03010037
19091:20160919:202200.725 required mandatory version: 03020000
19091:20160919:202200.725 starting automatic database upgrade
19091:20160919:202200.726 [Z3005] query failed: [1071] Specified key was too long; max key length is 1000 bytes [create index problem_tag_2 on problem_tag (tag,value)]
19091:20160919:202200.726 database upgrade failed
Table was created with:
mysql> show create table problem_tag \G *************************** 1. row *************************** Table: problem_tag Create Table: CREATE TABLE `problem_tag` ( `problemtagid` bigint(20) unsigned NOT NULL, `eventid` bigint(20) unsigned NOT NULL, `tag` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '', `value` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '', PRIMARY KEY (`problemtagid`), KEY `problem_tag_1` (`eventid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci 1 row in set (0.00 sec) mysql>
Following Query works fine and Kombination 167+166 is the maximum for the key length in this case:
create index problem_tag_2 on problem_tag (tag(167),value(166));
So far as I know maximum key length of MySQL is not configurable. So upgrade logic need a check for this.
Regards,
Marcel