Did you change or not set the database character encoding settings in config.php.
They need to match your previous install, including being blank if you previous install did not have them set.
I did not overwrite or change config.php at all, since the upgrade instructions said I should keep it. Should I upload the new one?
You should find out what character set your database is in and try to match it with the charset constant in the new config.php
Copy all other config values over verbatim.
For some reason UTF8 worked before, but the db was latin1. Does bbPress create the tables in latin1?
Anyway, changing to the right latin1 table in config.php did the trick. Weird that I didn’t have the issue before the upgrade though.
Thanks!
bbPress will create tables using the character set and collation specified in the config.php file. However it won’t change the tables character set or collation if they are already created, as in the case with upgrades like yours.
In fact, once installed, the collation value is not used at all, but the character set value is forced on every connection to the database with “SET NAMES ‘foo'”, where ‘foo’ is the character set (if it is specified).
So if your database is ‘latin1’, and for some reason we don’t address it that way you will get improper character mapping of your data to characters.
So it’s likely that my database was latin1 all along, when created in admin, since I haven’t touched it and the only thing that could have is bbPress’ install or upgrade script? I don’t understand why I didn’t get the problems after install then, since UTF8 was specified in config.php, while getting the problem after the upgrade forced me to change it to latin1 in config.php. Have I stumbled onto a bug, or is it something else?
Edit: I’m no database ninja, so sorry if I’m not getting things.
I’d say it was latin1 all along.
I’m not sure how well older versions of bbPress handled character sets. But it works properly now at least.
There are other factors that could have influenced things as well, but the permutations are a little too numerous to list.