HelpOnXapian

Not logged in - Log In / Register

Using Xapian you can dramatically improve the performance of searching in moin and furthermore unlock some more features (see the search prefixes above) not possible with the legacy search engine.

Setting it up

Requirements

You must have Xapian itself and its Python bindings (xapian-core and xapian-bindings) from http://www.xapian.org/ at least in version 0.9.6 installed.

It is also recommended to install PyStemmer to be able to search for stemmed words. Please note that you need to have PyStemmer installed before building the index if you want to use this feature! You can always rebuild the index after installing it at any later time, though.

Configuration

In your wikiconfig, you have several options on how to configure Xapian:

(Re-)Building an index

You can use the supplied command line tool moin to initially build, completely rebuild and update an existing index.

To build your index the first time, execute

moin --config-dir=/where/your/configdir/is --wiki-url=wiki-url/ index build --mode=add

in your command line. You can check the status of Xapian and its index on SystemInfo.

Moreover, the following modes can be passed to the command above to control the building of the index:

/!\ Please note that you must rebuild your index if you change at least one of xapian_index_history, xapian_index_dir or xapian_stemming configuration options!

Testing

You can test if Xapian is enabled and if an index is available by checking SystemInfo. To check if searches are performed using Xapian, enable show_timings in your wikiconfig, perform a search and look for _xapianSearch on the bottom of the page.

Usage

Xapian is basically used the same way as all other search engines. Due to Xapian's advanced features some new search term prefixed were introduced which are not already available in the legacy search engine (commonly referred to as moin search). See HelpOnSearching for more information and/or use the new advanced search dialogue available on FindPage to see what's available and possible.