github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

notanumber / xapian-haystack

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 37
    • 9
  • Source
  • Commits
  • Network (9)
  • Issues (2)
  • Downloads (10)
  • Wiki (4)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (1)
    • master ✓
  • Tags (9)
    • xapian-haystack-1.1.3BETA
    • xapian-haystack-1.1.2BETA
    • xapian-haystack-1.1.1BETA
    • xapian-haystack-1.1.0BETA
    • xapian-haystack-1.0BETA
    • xapian-haystack-1.0.1BETA
    • xapian-haystack-0.7.0ALPHA
    • xapian-haystack-0.6.0ALPHA
    • xapian-haystack-0.5.0ALPHA
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

A Xapian backend for Haystack — Read more

  cancel

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Added BACKEND_NAME='xapian' constant to remain consistent with Haystack 
notanumber (author)
Tue Feb 09 18:09:33 -0800 2010
commit  46764499d7b5064913ba263861820585118d76f7
tree    2b05616dfc17f8bd7e329be687ae42fff9352140
parent  e794f53c99ddd4eeaa0e326aadb189403a1bc17f
xapian-haystack /
name age
history
message
file .gitignore Mon Dec 07 08:14:17 -0800 2009 Updated .gitignore to ignore MANIFEST [notanumber]
file AUTHORS Loading commit data...
file LICENSE Tue Dec 01 12:55:22 -0800 2009 Updated to GPLv3 to maintain compatibility with... [notanumber]
file MANIFEST.in
file README.rst
file RELEASES Wed Jan 27 16:43:21 -0800 2010 Updated RELEASES with changes in last merge [notanumber]
file TODO Wed Jan 27 16:44:49 -0800 2010 Updated TODO. Was really outdated... [notanumber]
file setup.py Wed Jan 27 06:18:42 -0800 2010 Updated version number to 1.1.3beta [notanumber]
directory tests/ Tue Feb 09 11:04:53 -0800 2010 Rewrote __starts_with filter to be much more ef... [notanumber]
file xapian_backend.py Tue Feb 09 18:09:33 -0800 2010 Added BACKEND_NAME='xapian' constant to remain ... [notanumber]
README.rst

Xapian-Haystack -- A backend for Django-Haystack

Overview

xapian-haystack is a backend for use with the Django Haystack search API and the Xapian search engine.

  • More information on Haystack can be found here: haystackserach.org.
  • More information on Xapian can be found here: xapian.org.

Requirements

  • Python 2.4 (May work with 2.3, but untested)
  • Django 1.0.x
  • Django-Haystack 1.0
  • 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 (issue #364), when 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

Testing

The easiest way to test xapian-haystack is to symlink or copy the xapian_haystack/tests folder into the haystack/tests folder so that your source tree resembles this layout:

django-haystack
    +---haystack
    |       |
    |       +---backends
    |              |
    |              +---solr_backend.py
    |              +---whoosh_backend.py
    |              +---xapian_backend.py
    +---tests
            |
            +---core
            +---solr_tests
            +---whoosh_tests
            +---xapian_tests

Once this is done, the tests can be executed in a similar fashion as the rest of the Haystack test-suite:

django-admin.py test xapian_tests --settings=xapian_settings

Source

The latest source code can always be found here: github.com/notanumber/xapian-haystack

Credits

xapian-haystack is maintained by David Sauve, and is funded by Trapeze.

License

xapian-haystack is Copyright (c) 2009-2010 David Sauve, Trapeze. It is free software, and may be redistributed under the terms specified in the LICENSE file.

Questions, Comments, Concerns:

Feel free to open an issue here: github.com/notanumber/xapian-haystack/issues Alternatively, ask questions on the django-haystack mailing list or irc channel.

Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server