Processed (with 1 error): Re: Bug#848603: Enable innodb_large_prefix
Processing control commands: > merge -1 886756 Bug #848603 [mariadb-server] Enable innodb_large_prefix Unable to merge bugs because: forwarded of #886756 is 'https://jira.mariadb.org/browse/MDEV-14904' not '' severity of #886756 is 'serious' not 'normal' blocks of #886756 is '891691' not '' package of #886756 is 'mariadb-server-10.1' not 'mariadb-server' Failed to merge 848603: Did not alter merged bugs. -- 848603: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=848603 886756: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=886756 Debian Bug Tracking System Contact ow...@bugs.debian.org with problems
Bug#848603: Enable innodb_large_prefix
2016-12-20 3:07 GMT+02:00 Christian Hofstaedtler : > pdns-backend-mysql I suggest you file a bug against this package. It should define a per-database or per-table charset if it depends it to be of a certain kind. The maintainer of that app knows best that the suitable charset is, maybe ASCII for best performance? I somehow guess the index contains domain names, which are just fine with ASCII.
Bug#848603: Enable innodb_large_prefix
* Otto Kekäläinen [161219 22:21]: > We live in a world where WordPress sites expect to be able to save > emojis in comments :) Sure, but other apps expect their indexes to work. > We have had utf8mb4 as default in Debian and Ubuntu for a many years. Possibly, but it's only now the provider for (default-)mysql-server. > You are experiencing a corner case with a single app (which one?). pdns-backend-mysql Maybe next time when flipping providers, doing an rdep build and install check is in order. Discovering that your package breaks with no upload on your side - as such, a random discovery - is not fun at all. -- christian hofstaedtler
Bug#848603: Enable innodb_large_prefix
Severity: normal We live in a world where WordPress sites expect to be able to save emojis in comments :) We have had utf8mb4 as default in Debian and Ubuntu for a many years. You are experiencing a corner case with a single app (which one?).
Bug#848603: Enable innodb_large_prefix
On 18/12/2016 23:43, Christian Hofstaedtler wrote: mariadb-server, the new default-mysql-server, breaks existing well-functioning applications that need to index columns defined as VARCHAR(255). This worked fine with mysql-server-5.6. This is caused by two questionable choices: * default character set is utf8mb4 (causing index prefix lengths quadruple). * innodb_large_prefix is OFF. I'd suggest you enable innodb_large_prefix or revert to what mysql-server-5.6 did, i.e. set the character set to utf8 (which uses "just" 3 bytes per character). Thanks, The default character set has been utf8mb4 in Debian MariaDB for a while now, so changing it back is probably not the best idea. MySQL and probably MariaDB will in future use this default, so going back just delays things. But with the current default, besides your issue, there could also be issues when moving from Debian to another distro (or installing from MariaDB's repos), even on the same version, so whatever happens won't be ideal for everyone. Setting innodb_large_prefix to ON is not possible without also changing the InnoDB file format and setting innodb_file_format to barracuda. See https://mariadb.com/kb/en/mariadb/xtradbinnodb-server-system-variables/#innodb_large_prefix Can you clarify what you mean by "breaks"? The application critically needs to make use of indexes longer than 191 characters? Or is it running slowly? See https://jira.mariadb.org/browse/MDEV-8872 for a performance issue. Realistically, the best fix may be for you to specify the character set in the configs in advance.
Bug#848603: Enable innodb_large_prefix
Package: mariadb-server Version: 10.0.28-2 Severity: serious mariadb-server, the new default-mysql-server, breaks existing well-functioning applications that need to index columns defined as VARCHAR(255). This worked fine with mysql-server-5.6. This is caused by two questionable choices: * default character set is utf8mb4 (causing index prefix lengths quadruple). * innodb_large_prefix is OFF. I'd suggest you enable innodb_large_prefix or revert to what mysql-server-5.6 did, i.e. set the character set to utf8 (which uses "just" 3 bytes per character). Thanks, -- christian hofstaedtler