From 8ea6217b8b40dc8a3d3d5bc2dbb4782af6262d72 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Mon, 30 May 2005 09:55:14 +0000 Subject: [PATCH] * Fix rebuildtextindex.inc for new schema --- RELEASE-NOTES | 1 + maintenance/rebuildtextindex.inc | 13 +++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index a21567426b..fd39faa73f 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -223,6 +223,7 @@ Various bugfixes, small features, and a few experimental things: (somewhat experimental; currently needs memcached) * (bug 2262) Hide math preferences when TeX is not enabled * (bug 2267) Don't generate thumbnail at the same size as the source image. +* Fix rebuildtextindex.inc for new schema === Caveats === diff --git a/maintenance/rebuildtextindex.inc b/maintenance/rebuildtextindex.inc index 13f4608127..beac559448 100644 --- a/maintenance/rebuildtextindex.inc +++ b/maintenance/rebuildtextindex.inc @@ -35,9 +35,9 @@ function createTextIndex( &$database ) function rebuildTextIndex( &$database ) { - extract( $database->tableNames( 'cur', 'searchindex' ) ); + extract( $database->tableNames( 'page', 'revision', 'text', 'searchindex' ) ); - $sql = "SELECT MAX(cur_id) AS count FROM $cur"; + $sql = "SELECT MAX(page_id) AS count FROM $page"; $res = $database->query($sql, "rebuildTextIndex" ); $s = $database->fetchObject($res); $count = $s->count; @@ -47,11 +47,16 @@ function rebuildTextIndex( &$database ) while ( $n < $count ) { print "$n\n"; $end = $n + RTI_CHUNK_SIZE - 1; - $sql = "SELECT cur_id, cur_namespace, cur_title, cur_text FROM $cur WHERE cur_id BETWEEN $n AND $end"; + $sql = "SELECT page_id, page_namespace, page_title, old_flags, old_text + FROM $page, $revision, $text + WHERE page_id BETWEEN $n AND $end + AND page_latest=rev_id + AND rev_text_id=old_id"; $res = $database->query($sql, "rebuildTextIndex" ); while( $s = $database->fetchObject($res) ) { - $u = new SearchUpdate( $s->cur_id, $s->cur_title, $s->cur_text ); + $revtext = Revision::getRevisionText( $s ); + $u = new SearchUpdate( $s->page_id, $s->page_title, $revtext ); $u->doUpdate(); } $database->freeResult( $res ); -- 2.20.1