I think you have some invalid data in your journal_settings
table, specifically settings that have a mix of localized (language-specific) and non-localized content. Did you work with data in that table manually? What do you get for the following query?
SELECT DISTINCT a.setting_name FROM journal_settings a JOIN journal_settings b ON (a.setting_name = b.setting_name AND a.locale IS NULL and b.locale IS NOT NULL);
Regards,
Alec Smecher
Public Knowledge Project Team