Page MenuHomePhabricator

After upgrading from 1.15 to 1.23 get "Error: 1267 Illegal mix of collations"
Closed, DeclinedPublic

Description

Author: gs1994

Description:
I have upgraded our wiki from 1.15 to latest 1.23 version. All seems fine except for one page. When I try to edit it or open Discussion page for it, I get error message:

"A database query error has occurred. This may indicate a bug in the software."

The page in question:

http://gsbelarus.com/gs/wiki/index.php/Документация._ГИВЦ_Минсельхозпрода


Version: 1.23.0
Severity: normal

Details

Reference
bz66277

Event Timeline

bzimport raised the priority of this task from to Needs Triage.Nov 22 2014, 3:22 AM
bzimport set Reference to bz66277.
bzimport added a subscriber: Unknown Object (MLST).

Thanks for reporting this!

Please see http://www.mediawiki.org/wiki/Manual:How_to_debug for how to get debugging information (this might end up as a support question on https://www.mediawiki.org/wiki/Project:Support_desk instead, in the end).

Also, I don't see such an error on the URL that you have provided...

Oops, you wrote "when you edit it", sorry - can reproduce.
In any case, more debugging information is needed.

gs1994 wrote:

I can reproduce it every time. Tested in two browsers, in two different networks. Please, try again:

  1. Open the page:

http://gsbelarus.com/gs/wiki/index.php/Документация._ГИВЦ_Минсельхозпрода

  1. Click "Edit" tab. The error message will appear.

gs1994 wrote:

There is a debug info I have got:

A database query error has occurred. This may indicate a bug in the software.

Query:
SELECT lc_value FROM `mw_l10n_cache` WHERE lc_lang = 'en' AND lc_key = 'messages:editnotice-0-Документация._ГИВЦ_Минсельхозпрода' LIMIT 1
Function: LCStoreDB::get
Error: 1267 Illegal mix of collations (utf8_general_ci,IMPLICIT) and (cp1251_general_ci,COERCIBLE) for operation '=' (localhost)

Backtrace:

#0 /home/meatby/public_html/gsbelarus/gs/wiki/includes/db/Database.php(1123): DatabaseBase->reportQueryError('Illegal mix of ...', 1267, 'SELECT lc_valu...', 'LCStoreDB::get', false)
#1 /home/meatby/public_html/gsbelarus/gs/wiki/includes/db/Database.php(1590): DatabaseBase->query('SELECT lc_valu...', 'LCStoreDB::get')
#2 /home/meatby/public_html/gsbelarus/gs/wiki/includes/db/Database.php(1679): DatabaseBase->select('l10n_cache', Array, Array, 'LCStoreDB::get', Array, Array)
#3 /home/meatby/public_html/gsbelarus/gs/wiki/includes/cache/LocalisationCache.php(1162): DatabaseBase->selectRow('l10n_cache', Array, Array, 'LCStoreDB::get')
#4 /home/meatby/public_html/gsbelarus/gs/wiki/includes/cache/LocalisationCache.php(385): LCStoreDB->get('en', 'messages:editno...')
#5 /home/meatby/public_html/gsbelarus/gs/wiki/includes/cache/LocalisationCache.php(283): LocalisationCache->loadSubitem('en', 'messages', 'editnotice-0-??...')
#6 /home/meatby/public_html/gsbelarus/gs/wiki/languages/Language.php(2342): LocalisationCache->getSubitem('en', 'messages', 'editnotice-0-??...')
#7 /home/meatby/public_html/gsbelarus/gs/wiki/includes/cache/MessageCache.php(825): Language->getMessage('editnotice-0-??...')
#8 /home/meatby/public_html/gsbelarus/gs/wiki/includes/cache/MessageCache.php(752): MessageCache->getMessageFromFallbackChain(Object(Language), 'editnotice-0-??...', 'Editnotice-0-??...', true)
#9 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Message.php(1003): MessageCache->get('editnotice-0-??...', true, Object(Language))
#10 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Message.php(780): Message->fetchMessage()
#11 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Title.php(4953): Message->exists()
#12 /home/meatby/public_html/gsbelarus/gs/wiki/includes/EditPage.php(2422): Title->getEditNotices(0)
#13 /home/meatby/public_html/gsbelarus/gs/wiki/includes/EditPage.php(2228): EditPage->showHeader()
#14 /home/meatby/public_html/gsbelarus/gs/wiki/includes/EditPage.php(452): EditPage->showEditForm()
#15 /home/meatby/public_html/gsbelarus/gs/wiki/includes/actions/EditAction.php(50): EditPage->edit()
#16 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Wiki.php(428): EditAction->show()
#17 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Wiki.php(292): MediaWiki->performAction(Object(Article), Object(Title))
#18 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Wiki.php(588): MediaWiki->performRequest()
#19 /home/meatby/public_html/gsbelarus/gs/wiki/includes/Wiki.php(447): MediaWiki->main()
#20 /home/meatby/public_html/gsbelarus/gs/wiki/index.php(46): MediaWiki->run()
#21 {main}

Did you only upgrade MediaWiki, or also your database backend? :)
I assume you use the MySQL backend?

Error: 1267 Illegal mix of collations (utf8_general_ci,IMPLICIT) and
(cp1251_general_ci,COERCIBLE) for operation '=' (localhost)

For a similar bug report, see e.g. https://bugzilla.wikimedia.org/show_bug.cgi?id=5620#c3

Other info: http://automatthias.wordpress.com/2008/12/26/fixing-character-sets-in-mysql/ (and http://dev.mysql.com/doc/refman/5.5/en/charset-collate.html for general info).

Andrei: Can you answer comment 5 please?

gs1994 wrote:

I had upgraded both, Mediawiki and MySQL.

Anyway, I have reverted to 1.19 version. It works fine for me.
So, you could close the issue.