Extension:SphinxSearch/Troubleshooting

This troubleshooting page should work as a kind of first aid, when SphinxSearch don't seemed to work. The content on this page is taken from the talk page and condensed in a form so it can be used as check list for things that can go wrong. Any one with a particular experience in how to minimize installation hurdles can share his/her advice here (so others don't have to suffer). For particular problems, please use the talk page or bugzilla report instead.

Did I copy the right sphinxapi.php file?
With every new Sphinx Search Engine (0.9.9, 1.10, 2.0.1 etc.) a new sphinxapi.php is deployed, therefore it is necessary that the sphinxapi.php corresponds with the downloaded sphinx package.

How can I check the connection between Sphinx Search Engine and Mediawiki?
In order to check if a connection can be established between Sphinx and Mediawiki, you can run the searchd deamon in a command shell so that something like below appears when executing the following command. %~dp0bin\searchd.exe --console --config "%~dp0sphinx.conf" --pidfile Sphinx 1.10-beta (r2420) Copyright (c) 2001-2010, Andrew Aksyonoff Copyright (c) 2008-2010, Sphinx Technologies Inc ...

using config file '...\Sphinx\sphinx.conf'... listening on 127.0.0.1:9312 listening on all interfaces, port=9312 precaching index 'wiki_main' precaching index 'wiki_incremental' precached 2 indexes in 0.048 sec accepting connections

If those information do not appear, you need to check your sphinx.conf and index files.

When executing a search in Mediawiki, information as below should appear in your command shell.



If those information do not appear in the command shell, the probability is high that their is no connection between Mediawiki and Sphinx. You should check your installation settings:
 * Configuration of sphinx.conf (database setting etc., password )
 * Run indexer
 * sphinxapi.php file
 * LocalSettings.php ( $wgSearchType = 'SphinxMWSearch'; $wgSphinxSearch_host = '127.0.0.1';, etc.).

Default namespaces
$wgNamespacesToBeSearchedDefault describes how to change the default search namespaces setting (to include other namespaces by default).

Search result output
Search output such as "+I-.I��K�(���J�L�PH�" can be the result of LocalSettings.php settings $wgCompressRevisions = true; (see also forum 7016) Using the Manual:CompressOld.php script periodically instead of $wgCompressRevisions should allow current revision text to be readable (non-compressed text is necessary for Sphinx) with only old revisions to be compressed.

Sphinx as windows service
According to the parameter binlog_path should be maintained within sphinx.conf to avoid problems with writing permissions when running Sphinx as a windows service. binlog_path = C:\Sphinx\log For more information, see
 * 1) Binary log (aka transaction log) files path

localhost vs. 127.0.0.1
Windows Vista and Windows 7 showed problems when $wgSphinxSearch_host is maintained as localhost therefore it is recommended that instead of localhost one uses 127.0.0.1 instead. The standard configuration should look like: $wgSphinxSearch_host = '127.0.0.1'; $wgSphinxSearch_port = 9312;
 * 1) Host and port on which searchd deamon is tunning

Copy the sphinx.conf file from the extension folder
Please ensure that when using Sphinx, you copied the sphinx.conf from the extension folder into the appropriate folder (e.g. ). Sometimes it happens that people displace the sphinx.conf file and can therefore not establish any connection between Mediawiki and Sphinx.

Windows 7 and Indexer
Some users reported that the file Msvcr71.dll is necessary for running the Indexer successful on Windows 7, on how to solve this problem see.