[MediaWiki-l] New Search Backend Available

Nikolas Everett neverett at wikimedia.org
Fri Aug 30 15:24:27 UTC 2013


Chad Horohoe and I've been working on a new search backend for
MediaWiki for the past few months and it is finally ready for people
to try out!  Project goals:

1.  Parity or better than the MWSearch/lsearchd combination used inside WMF.
2.  Easier install than the MWSearch/lsearchd combination used inside WMF.
3.  Expand templates before indexing.
4.  Horizontal scalability for query performance (read this as sharded indexes)

It is currently running in WMF's beta environment
(http://beta.wmflabs.org/) and on test2.wikipedia.org and as an option
on mediawiki.org (you have to add the super secret url parameter
"srbackend=CirrusSearch".)

We think we've hit goals 2, 3, and 4 already.  We're far enough along
with goal 1 that any features missing are being filed as bug
(https://bugzilla.wikimedia.org/buglist.cgi?list_id=230108&resolution=---&query_format=advanced&component=CirrusSearch&product=MediaWiki%20extensions)

We'd love for some guinea pigs to give it a shot on wikis outside of
WMF.  To set it up you'd need to:
1. Install elasticsearch (http://elasticsearch.org/)
2. Setup Mediawiki from the master branch:
  git clone https://gerrit.wikimedia.org/r/mediawiki/core
<the rest of setup>
3. Clone CirrusSearch:
  cd mediawiki/extensions
  git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/CirrusSearch
4. Update the submodule in CirrusSearch:
  cd CirrusSearch
  git submodule init
  git submodule update)
5. Turn on CirrusSearch and configure it in LocalSettings.php by adding:
  require_once( "$IP/extensions/CirrusSearch/CirrusSearch.php" );
  $wgCirrusSearchServers = array(
'the_server_on_which_you_installed_elasticsearch');
6. Run two scripts to set up the index:
  php updateSearchConfig.php
  php forceSearchIndex.php

At some point we'll update mediawiki-vagrant to handle all that
automatically....

Please us me know what you think.

Nik Everett



More information about the MediaWiki-l mailing list