• Hi everyone,

    I noticed recently in my server logs a lot of Transposh errors of the type:
    [host mydomain.com] FastCGI: server "/homez.646/mydomain/www/wp-admin/admin-ajax.php" stderr: PHP message: WordPress database error Illegal mix of collations (utf8_bin,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation '=' for query SELECT translated, source FROM wp_translations WHERE ...

    It seems that all the strings that trigger this error contain a smiley (the standard wordpress :) smiley, that gets replaced with an emoji). These strings don’t get translated by Transposh. When I open the manual translation box on them, the upper textbox of Transposh displays a square instead of the emoji.

    I have read that WordPress moved from utf8 to utf8mb4, so I tried to convert my database tables to utf8mb4. However, when I try to do it with Transposh tables, it generates errors because of some fields populated with a date full of zeros. I tried to convert wp_translations from utf8_bin to utfmb64_bin (they need to be _bin and not _ci, as the translation is case sensitive).

    Can anyone suggest what to do? My database has various encodings and collations, for example the database collation doesn’t match the translation table collation, and the columns inside it have again a different one. I’m also afraid to lose data while converting tables.

    Thanks,

    jb

  • The topic ‘Database collation, utf8 vs utfmb4’ is closed to new replies.