squeen wrote:What was the fix?
Code: Select all
# myisamchk --silent --force --fast --update-state searchindex.MYI
myisamchk: MyISAM file searchindex.MYI
myisamchk: warning: Table is marked as crashed
myisamchk: warning: 2 clients are using or haven't closed the table properly
# php rebuildall.php
** Rebuilding fulltext search index (if you abort this will break searching; run this script again to fix):
Rebuilding index fields for 1992 pages...
Rebuild the index...
** Rebuilding recentchanges table:
Loading from page and revision tables...
$wgRCMaxAge=604800 (7 days)
Updating links and size differences...
Loading from user, page, and logging tables...
Flagging bot account edits...
Flagging auto-patrolled edits...
** Rebuilding links tables -- this can take a long time. It should be safe to abort via ctrl+C if you get bored.
Refreshing links table.
Starting from page_id 1 of 1992.
It's the only MyISAM table I'm still using; I moved nearly everything to InnoDB years ago to prevent splats like that.
That table may have been marked as crashed before the server move - there was a power outage a couple weeks ago that dropped the O350 on its butt (another advantage of a smaller system is I can keep it up on a UPS nearly indefinitely). If it happens again for some reason I'll see about moving that table to InnoDB as well.
Edit: Bummer. According to the MediaWiki docs, the searchindex has to be MyISAM. Guess that's why I left it that way
Interestingly, I found this via Google:
TODO: MediaWiki’s MySQL search backend
Some problems and solutions…
Problem 2: The table crashes sometimes
People often get mystified when the searchindex table is marked crashed.
Catch the error: try a REPAIR TABLE transparently, and display a friendlier error if that fails.
... this is apparently a known issue.