Last modified: 2014-09-23 23:13:03 UTC
LOWER(img_name) does not search in binary fields LOWER(CONVERT(img_name USING latin1)) < solves the problem see attachment on line 43 -- # MySQL-Server Version: 5.1.33-community # PHP Version: 5.2.9
Created attachment 8119 [details] Change on Line 43
The contents of the fields is utf8, so it should be something like CONVERT(img_name USING utf8). This would presumably break other databases though.
*Bulk BZ Change: +Patch to open bugs with patches attached that are missing the keyword*
b.wilhelm, have you had time to respond to Bryan Tong Minh's comment about your patch? I hope you'll update it to work against current trunk. Thank you!
(In reply to comment #4) > b.wilhelm, have you had time to respond to Bryan Tong Minh's comment about your > patch? I hope you'll update it to work against current trunk. Thank you! in mediawiki 1.17 and 1.18RC1 in file includes\specials\SpecialListfiles.php search "LOWER(img_name)" replace "LOWER(CONVERT(img_name USING utf8))" (without quotes)
Is this still reproducible?
Code hasn't really changed: https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/core.git;a=blob;f=includes/specials/SpecialListfiles.php;h=cc05522124dba4e939f4557f1c887bbbe137a19e;hb=HEAD#l84
The neatest solution would be to introduce a CONVERT() wrapper in DatabaseBase, but I'm not sure that is such a good idea, since there is so limited use for this. This could probably be fixed by using a mysql only exception in SpecialListfiles, but that is not really nice.