Hello all,
I just moved my wiki database (character set latin1, collation
latin1_swedish_ci, engine InnoDB) to another database server using a MySQL dump
(with the --default-character-set=latin1 option). I also upgraded the
MediaWiki version from 1.11.2 to 1.13.3 at the same time (so I've been using
the MediaWiki update.php script from the maintenance directory).
Now any page that uses the DynamicPageList extension produces variations of the
following errors:
The DPL extension (version 1.7.4) produced a SQL statement which lead to a
Database error.
The reason may be an internal error of DPL or an error which you made,
especially when using DPL options like titleregexp.
Query text is:
SELECT DISTINCT `page`.page_namespace as page_namespace,`page`.page_title as
page_title, REPLACE(REPLACE(CONCAT( IF(`page`.page_namespace=0, , CONCAT(CASE
`page`.page_namespace WHEN 1 THEN 'Talk' WHEN 2 THEN 'User' WHEN 3 THEN
'User_talk' WHEN 4 THEN 'SST_Wiki' WHEN 5 THEN 'SST_Wiki_talk' WHEN 6 THEN
'Image' WHEN 7 THEN 'Image_talk' WHEN 8 THEN 'MediaWiki' WHEN 9 THEN
'MediaWiki_talk' WHEN 10 THEN 'Template' WHEN 11 THEN 'Template_talk' WHEN 12
THEN 'Help' WHEN 13 THEN 'Help_talk' WHEN 14 THEN 'Category' WHEN 15 THEN
'Category_talk' WHEN 100 THEN 'Portal' WHEN 101 THEN 'Portal_talk' END, ':')),
`page`.page_title), '_', ' '),'♣','⣣') COLLATE utf8_general_ci as sortkey FROM
`page` INNER JOIN `categorylinks` AS cl0 ON `page`.page_id=cl0.cl_from AND
(cl0.cl_to='Geomodeling') WHERE 1=1 AND `page`.page_is_redirect=0 ORDER BY
sortkey ASC LIMIT 0, 500
Error message is:
Illegal mix of collations (utf8_general_ci,COERCIBLE) and (latin1_bin,IMPLICIT)
for operation 'concat' (server)
Or:
Error in numRows(): Illegal mix of collations (utf8_general_ci,COERCIBLE) and
(latin1_bin,IMPLICIT) for operation 'concat' (hotce10)
Backtrace:
#0
/d/web01/wiki/shared_wiki/extensions/DynamicPageList/DynamicPageList2.php(2942):
Database->numRows(false)
#1
/d/web01/wiki/shared_wiki/extensions/DynamicPageList/DynamicPageList2.php(856):
ExtDynamicPageList2::dynamicPageList('?uses=Template:...', Array,
Object(Parser), Array, 'tag')
#2 [internal function]: ExtDynamicPageList2::dplTag('?uses=Template:...',
Array, Object(Parser))
#3 /d/web01/wiki/shared_wiki/includes/parser/Parser.php(3287):
call_user_func_array(Array, Array)
#4 /d/web01/wiki/shared_wiki/includes/parser/Preprocessor_DOM.php(982):
Parser->extensionSubstitution(Array, Object(PPFrame_DOM))
#5 /d/web01/wiki/shared_wiki/includes/parser/Parser.php(2678):
PPFrame_DOM->expand(Object(PPNode_DOM), 0)
#6 /d/web01/wiki/shared_wiki/includes/parser/Parser.php(966):
Parser->replaceVariables('<table border="...')
#7 /d/web01/wiki/shared_wiki/includes/parser/Parser.php(321):
Parser->internalParse('<table border="...')
#8 /d/web01/wiki/shared_wiki/includes/Article.php(3384): Parser->parse('<table
border="...', Object(Title), Object(ParserOptions), true, true, 16287)
#9 /d/web01/wiki/shared_wiki/includes/Article.php(865):
Article->outputWikiText('<table border="...')
#10 /d/web01/wiki/shared_wiki/includes/Wiki.php(437): Article->view()
#11 /d/web01/wiki/shared_wiki/includes/Wiki.php(59):
MediaWiki->performAction(Object(OutputPage), Object(Article), Object(Title),
Object(User), Object(WebRequest))
#12 /d/web01/wiki/shared_wiki/index.php(93):
MediaWiki->initialize(Object(Title), Object(Article), Object(OutputPage),
Object(User), Object(WebRequest))
#13 {main}
I've tried changing the database character set to utf8 (which is the default
for the new database server), and even changing the engine to MyISAM. My
$wgDBmysql5 variable is set to false in LocalSettings.php
I've been working on this issue for a couple of days and would really
appreciate any help you could offer.
Thanks!
David Baker
_______________________________________________
MediaWiki-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-l