On 5.3.2012, at 18.12, Charles Marcus wrote:
One last question then (couldn't find an answer on the wiki)...
I'm currently planning on using fts/clucene, but I'm thinking I'd like the following to apply also to dovecots internal indexes too...
What is the minimal number of characters that dovecots indexes are based on (I'm assuming that it doesn't index just individual characters)? 2+? 3+? Is this configurable?
Lucene doesn't really work that way. It only searches full words. But some words are "stop words" that are ignored, such as "a" or "the" in the English language. So fts-lucene won't find anything when you search for "a", but other character searches will return all messages that contain it as a full word. (Or: That's how I think it works, too lazy to test it now.)
The reason I ask is, Thunderbird has an annoying behavior where it sends a new/separate query each time a character is typed, beginning with the very first character:
https://bugzilla.mozilla.org/show_bug.cgi?id=541400
This causes massive performance degradation on my clients system that currently uses Courier-IMAP (this is the one we'll soon be converting to dovecot) when the users (usually accidentally (select the 'Body' criteria in the Quickfilter searchbox...
I doubt this is going to be a problem with Dovecot+fts. The search results will be pretty much instantaneous, even if the search matches all of the messages.
Is there a way to tell dovecot to return an *empty* result unless/until a query contains X+ characters (where X is some configurable number, I'm thinking 3 or 4)?
Nope.