Wiki Down for Upgrade

The Wiki is down at the moment – we’re trying the upgrade to MediaWiki 1.4 – among other things, this should start to cut back spam – it uses the nofollow trick to make spamming Wikis less useful, so with a bit of luck some of the spammers will start cheking versions before wasting their time. If all goes well, it will be back soon.

Current status: Database backup done. Old version moved. New version uploaded. Upgrade done. Re-added images. Hit problem…

When changing pages, getting “Database error, Internal error” messages. The change is saved ok, and does appear in Recent Changes. Searching, but not finding any answers…

If anyone has any ideas on this, please let me know. I’m thinking now that the best move is to go live again even with the error and just hope we can fix it later -everything does seem to work, and reverting everything to the old version and trying to restore the database from the previous backup seems like a lot of work in the wrong direction.

Update: We’ve gone ahead and made it live again, error and all. We just hope we can find a fix for this soon. In the mean time, if you change anything, the save will appear to fail. The page will be saved, though. Creating new pages works, but the link to them seems to keep saying they don’t exist, and tries to create them again. ‘Recent changes’ shows the page with a working link.

Update2: With some help from the MediaWiki admin’s mailing list, I’ve got the actual error now…

A database query syntax error has occurred. This may indicate a bug in the software. The last attempted database query was:

SELECT cur_id,cur_namespace,cur_title FROM ‘cur’,’links’ WHERE cur_id=l_to AND l_from=1081 FOR UPDATE

(where ‘cur’,’links’ are backquotes. Markdown wants to translate them away to nothing.)

from within function “LinkCache::preFill”. MySQL returned error “1064: You have an error in your SQL syntax near ‘FOR UPDATE’ at line 3 (localhost)”.

Only problem is, I’ve no idea what’s wrong with that.

Update3: Well, Zigger on the MediaWiki mailing list seems to have found the answer – FOR UPDATE wasn’t supportedin MySQL unitl 3.23.36, and we’re running 3.23.33. I’ve sent a support request to our hosts (AIT) to see if we can get updated a bit. It’s an old version now, but we’ve had the site running for a long time, so they probably just don’t upgrade the database unless you request it – seems sensible, otherwise the new versions could keep breaking people’s sites, and they’d spend all their time apologising 😉

Update4: It turns out that the old version of MySQL is all AIT will provide on the managed platform, so we either switch to self-managed, find a new host, or revert to MediaWiki 1.3. For now, at least, we’ve reverted to 1.3. A new host would be a big hassle, and I like the big dollop of data transfer AIT include (current plan gives us 1.2 terrabytes a month). Going self-managed would mean I’d have to worry about security and updates and such, which I now don’t have to worry about. I’m only a wannabe-geek, so actually running a real Linux box out here on t’interweb is a bit of a worrying prospect.

3 thoughts on “Wiki Down for Upgrade

  1. Hey, I’m running MediaWiki 1.4 as well, and seeing the same Internal Error things w/ no details. Could you point me to how to see the actual error messages so I can troubleshoot this?


  2. Sorry, probably should document that here too, in case anyone else is looking – you need to add a line to your LocalSettings.php file…

    $wgShowSQLErrors = true;

    …then you should start seeing the real errors rather than the unhelpful ‘internal error’. MediaWiki hides real error by default, in case they could give out information useful to hackers. We’re back up and running with 1.3 for now – reverted to backup just now. Fortunately, rather than do an in-place upgrade, I’d renamed the old wiki folder, and did a fresh install, so two renames was all it took to move the wiki back. Similar with the database, and all was switched back over.

Comments are closed.