jeboehm / docker-mailserver

Docker Mailserver based on the famous ISPMail guide
MIT License
368 stars 97 forks source link

Enable fulltext search xapian #150

Closed agittins closed 2 years ago

agittins commented 2 years ago

Enable support for the fts-xapian dovecot full-text-search plugin.

Tested on a 2GB linode with their old hdd-backed block storage - slow, but doesn't run out of RAM.

Not sure how you want to implement the variables etc, so have just started with this. I'd expect a user might want to tweak the two memory limit settings, I exposed the entire plugin argument as FTS_ARGS because I lost patience trying to work out how to do just the lowmemory param in the templating language! Suggestions welcome :-)

Bumped the alpine version to get the dovecot-fts-xapian plugin package - it first appears in 3.13 if there's a need to hold back the version.

I wasn't sure how you wanted to handle the documentation in the wiki, happy to add entries to the envar table to describe the options (for as far as I understand them, descriptions are somewhat opaque in some places).

This PR addresses issue #99

jeboehm commented 2 years ago

Hi @agittins this looks really promising! I think in a first step it's okay to expose the whole FTS_ARGS variable. So no suggestions here. The tests are failing currently, because the tool I wrote to count emails in an imap directory doesn't seem to run under the newest php versions. I'll try to fix that soon and merge your pull request.

Thanks a lot!

jeboehm commented 2 years ago

@agittins the test suite is working fine again! Do you have any ideas how an automated test could save the fts integration?

jeboehm commented 2 years ago

This was merged to the develop branch. Will be released soon! Thank you very much for your work. <3