Page MenuHomePhabricator

Cannot search with mediawiki 1.16
Closed, InvalidPublic

Description

Author: fgmreg

Description:
I use SQlite database in my webhost company. I upgraded the wiki to v1.16. However, I still cannot use the search function of the mediawiki to search for the whole wiki installed. It always gives no return. How to solve the problem?


Version: 1.16.x
Severity: critical

Details

Reference
bz25242

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 11:12 PM
bzimport added a project: MediaWiki-Search.
bzimport set Reference to bz25242.

Is your SQLite compiled with FTS3 support?

You can learn this by running php maintenance/eval.php

and then typing:
$db=new DatabaseSqliteStandalone(':memory:'); var_dump($db->getFulltextSearchModule());

And have you tried running php maintenance/rebuildtextindex.php ?

fgmreg wrote:

I used only a free webhost provider, I don't know where to type in

$db=new DatabaseSqliteStandalone(':memory:');
var_dump($db->getFulltextSearchModule());

Did you run the updater after uploading the 1.16 files?

fgmreg wrote:

I tried to clear the wiki and re-install it again. However, I still could not use the search function.

Created attachment 7696
FTS3 support checker

Then looks like your SQLite is compiled without the FTS3 module, which is needed for search. Gotta add this information to Special:Version for clarity.

If you want to verify that this is really the case, put the attached file to your MediaWiki installation root (where index.php is) and visit it with a browser.

The requirement of FTS3 is documented here: http://www.mediawiki.org/wiki/SQLite#Search_engine

Attached:

fgmreg wrote:

my website is tested, and it does not support. Is it true that I can do nothing? or just wait until there is a new version?

All versions of SQLite starting from 3.5.3 released in November 2007 are built with FTS3 by default. I don't know when PHP started using it, but it seems to have happened long ago. So either your PHP is outdated, or it was explicitly built without FTS3 by "smart" packagers or server admins.