Overview -------- xapian-haystack is a backend for use with the Django Haystack search API. More information on Haystack can be found here: http://haystacksearch.org/ xapian-haystack is licensed under the GPL, please see the included LICENSE file for more information. Requirements ------------ - Python 2.4 (May work with 2.3, but untested) - Django 1.0.x - Django-Haystack 1.0BETA - Xapian 1.0.13+ (May work with earlier versions, but untested) - mod_wsgi 1.3.X Notes ----- - Due to an issue with mod_python possibly causing deadlocks with Xapian (http://trac.xapian.org/ticket/364), when the Python is not invoked through the "main interpreter", mod_python is not supported with xapian-haystack. It may work, with some tweaking, but your mileage will vary. - Because Xapian does not support simultaneous WritableDatabase connections, it is *strongly* recommended that users take care when using RealTimeSearchIndex to either set `WSGIDaemonProcess processes=1` or use some other way of ensuring that there are not multiple attempts to write to the indexes. Alternatively, use SearchIndex and a cronjob to reindex content at set time intervals (sample cronjob can be found here: http://gist.github.com/216247) or derive your own SearchIndex to implement some other form of keeping your indexes up to date. Installation ------------ 1. Copy or symlink `xapian_backend.py` into `haystack/backends/` or install it by running one of the following commands:: python setup.py install # or pip install xapian-haystack # or easy_install xapian-haystack 2. Add `HAYSTACK_XAPIAN_PATH` to `settings.py` 3. Set `HAYSTACK_SEARCH_ENGINE` to `xapian` Source ------ The latest source code can always be found here: http://github.com/notanumber/xapian-haystack/ Testing ------- Provided that Django, Haystack, and xapian-haystack are all in your Python path, simply change to the xapian-haystack folder and execute: django-admin.py test tests --settings=tests.settings Questions, Comments, Concerns: ------------------------------ Feel free to open an issue here: http://github.com/notanumber/xapian-haystack/issues