We are running FogBugz Version 7.1.13 (DB 737, Build 1493) on MySQL 5.0.90-community-nt. We started on FogBugz 5 and have been updating steadily, though we have not yet applied the recent 7.3 release.
This morning FogBugz maintenance service reported the following error (of which I am only including the first part):
5/19/2010 10:58 AM (GMT-07:00): The Fog Creek Maintenance Service has reported an error. (200) CCmd: Illegal mix of collations (latin1_bin,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' SQL:
SELECT ixToken, nLatestDoc FROM SorterToken WHERE sToken = ?
I hunted around for information on this and could not find anything on the FogBugz knowledge base.
I used the MySQL maintenance tools to repair the database tables, indices, etc, then restarted IIS and Maintenance Service. No change. Maintenance Service kept crashing.
I finally found some information on a MySQL site which suggested the following schema change
alter table SorterToken convert to character set utf8 collate utf8_swedish_ci;
After applying the schema change, I restarted IIS, Maintenance Service, and reset the Autosort and Searcher functions. This time Maintenance Service started and the errors went away.
As I noted above, we started in an earlier version of FogBugz so our database tables are set up for character set latin1 and collation latin1_swedish_ci. This did not seem to be a problem after the last upgrade where we had to also upgrade MySQL to 5.0.90. The site ran fine. However, the SorterToken table is now using a different collation from the rest of the database after the schema change.
Is this going to pose a problem in the long run? Should I have changed the default character set to utf8 and utf8_swedish_ci across the board?