[Mailman-Users] Indexing mail right after delivery

Mark Sapiro mark at msapiro.net
Fri Feb 26 02:08:06 CET 2010

Cedric Jeanneret wrote:
>I'm trying to create a xapian[1] indexer for our mailing list. As mailman is written in Python and there are python bindings for xapian, I guess I can maybe create a plugin for that.
>My first question is : is there already such a thing ? I searched on the net, but nothing appeared
>My second one : can we create a plugin for mailman, if so, where should I go to have some doc ? seems there's nothing in the wiki (http://wiki.list.org/dosearchsite.action?searchQuery.queryString=plugin&searchQuery.spaceKey=conf_all)
>Just to explain why I'd like to do that: we already have a xapian search engine in here, indexing a fileserver, request tracker queues and moinmoin wikis... so we'd like to aggregate all our stuff in one app for searching.

This will be quite doable with Mailman 3 which is still in development.

There are problems trying to do this in Mailman 2.1.x. There is a
plugin capability of sorts in the form of custom handlers that can be
added to the incoming message processing pipeline. See the FAQ at
<http://wiki.list.org/x/l4A9>. However, archiving is asynchronous with
incoming message processing, so it is not possible for a custom
handler to know the URL that will ultimately retrieve the message from
the archive.

A different approach which might be workable is to use the

PUBLIC_EXTERNAL_ARCHIVER = '/path/to/script.py'
PRIVATE_EXTERNAL_ARCHIVER = '/path/to/script.py'

in mm_cfg.py, then that script will be invoked do do the archiving. The
script in turn could invoke the standard pipermail archiving process
and then invoke xapian to index the archived message.

Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

More information about the Mailman-Users mailing list