[Dovecot] [BUG] Lucene plugin breaks header substring search

Dave Abrahams dave at boostpro.com
Tue Oct 16 06:45:53 EEST 2012


on Mon Oct 15 2012, Timo Sirainen <tss-AT-iki.fi> wrote:

> On 16.10.2012, at 1.35, Dave Abrahams wrote:
>
>> According to the IMAP spec if I do a search for "TO isocpp.org" it
>> should find all the messages whose To: field contains the string
>> "isocpp.org", but dovecot is returning me an empty list.  However, a
>> search for "TO tm at isocpp.org" produces a long list of messages.
>
> This specific problem can be solved by:
>
> plugin {
>   fts_lucene = whitespace_chars=@.
> }

OK, Google tells me that's documented at
http://wiki2.dovecot.org/Plugins/FTS/Lucene but I only found it now
because I knew what to look for.  I suggest doing something to make that
more discoverable.

This might be good enough for me, but still doesn't make it conforming
to the IMAP spec, right?  IIUC the spec says you can search for
arbitrary strings without regard to word boundaries.

>> This behavior is present if I *even load* the lucene fts plugin.
>> Note that lucene isn't in use (fts = squat); it's merely loaded.
>> This behavior goes away if I don't load fts_lucene.
>
> I don't really see how that's possible. Although a quick test shows me
> that fts_squat seems to be completely broken with me for some reason.

I don't know what to tell ya.  Tests confirm it for me.

-- 
Dave Abrahams
BoostPro Computing                  Software Development        Training
http://www.boostpro.com             Clang/LLVM/EDG Compilers  C++  Boost



More information about the dovecot mailing list