8e1eaf849ce4668c0941338e3e3671db159da575 |
|
11-Dec-2017 |
Sergey Kitov <sergey.kitov@open-xchange.com> |
fts: Retry indexing for tika backend in case of internal server error |
72d301f5751986396533088b769a9e74735a467c |
|
11-Dec-2017 |
Sergey Kitov <sergey.kitov@open-xchange.com> |
fts: Extend parser's deinit function interface with retriable_err_msg_r parameter
the new parameter will be set to a error string in case indexing may
need retrying, so it will be logged later when decision about retry will be made. |
0dffa25d211be541ee3c953b23566a1a990789df |
|
06-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: unsigned int:1 -> bool:1
perl -i -pe 's/unsigned int ([^,:;]+):1;/bool $1:1;/' **/*.[ch] |
4ac43ad128cb9b22f1c936659a1ff62e5b6c8bc3 |
|
16-Feb-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
fts: Code cleanup - moved fts_header_has_language() to a global function |
4ef1f9f3293965734e6e3c38c191ceb2246a721f |
|
09-May-2015 |
Teemu Huovila <teemu.huovila@dovecot.fi> |
fts: Create tokenizers differently
Create tokenizers earlier. Create separate tokenizers for search
and indexing. Enable configuration of tokenizers. Add some helpers
in fts-tokenizer.h api. Change tokenizer unit tests to match
those changes.
lib-fts: Refactor lib-fts settings a bit
Turned address tokenizer settings into "boolean" values. Changed
have_parent to "no_parent" and added "search" setting. Added
documentation in fts-tokenizer.h. Change unit tests accordingly. |
1537d20b852cbbf0d6971790b84e0cce5ca61307 |
|
20-Apr-2015 |
Timo Sirainen <tss@iki.fi> |
fts: Added FTS_BACKEND_FLAG_TOKENIZED_INPUT, which is implemented via lib-fts. |
263d455e9198e8aa45c7a99601ad6a5a9dcdd915 |
|
16-Sep-2014 |
Timo Sirainen <tss@iki.fi> |
doveadm fts rescan: For virtual namespaces just mark the last indexed UID to 0. |
117fb8c00336dc54bab9cfa547249df7a4970611 |
|
08-Aug-2014 |
Timo Sirainen <tss@iki.fi> |
fts: Added fts_no_autofuzzy setting to require exact matches for found results.
This is done by using the FTS search results as only filters on which the
regular non-FTS search is done. |
c51afc0ab251923fbfcad5059af27a7fefab3502 |
|
27-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
Reversed recent "short utf8" changes.
Solr code needs to parse the UTF8 input explicitly anyway to encode the XML
characters. And all the character checks were already done in it. |
119cbc046f3c6c245d1f5ad4f5d14ea20d520bdc |
|
27-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
fts: Added FTS_BACKEND_FLAG_BUILD_SHORT_UTF8 to require sending only short UTF8 data to backend. |
d9076f5939edf5d20a261494b1a861dcbb0d32e2 |
|
15-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
Replaced "decomposed titlecase" conversions with more generic normalizer function.
Plugins can now change mail_user.default_normalizer. Specific searches can
also use different normalizers by changing mail_search_context.normalizer. |
b66d803de86bfb411165b3465b0d9ef64ecfe2a1 |
|
25-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Avoid using (void)s by adding ATTR_NOWARN_UNUSED_RESULT attributes and other ways. |
e51bfe0db17f1a2e44932d0d6d3958ae409a8bcf |
|
28-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Show SEARCH=FUZZY in IMAP capabilities only when FTS backend actually supports it. |
84f447a23beceb6ab5898083052e1b5bae51f033 |
|
05-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Added FTS_BACKEND_FLAG_BUILD_FULL_WORDS for sending data to backends only in full words. |
d50ba81550df09e5a7dc33b0a0afc4c4cdb2bef1 |
|
31-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Removed unused code. |
421d30619384e72a27e2a5d13ff6525aff4d17fe |
|
31-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
Redesigned mail precaching APIs.
There's no longer a one monolithic mailbox_sync(MAILBOX_SYNC_FLAG_PRECACHE)
call, but rather one mail_precache() call for each mail to be precached.
This allows the callers to show the progress and in general is cleaner. |
b7fdf4fe23801de680e0be5aca0596a3c9ea3f8f |
|
30-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Added lookup_done() API call. Lucene uses it to close the index.
This way it Lucene doesn't keep the index files unnecessarily open forever. |
54d437dea655b338e45a8917880f3d3a2a7b698d |
|
28-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Changed private fts_index_header accessing APIs |
de62ce819d59a529530da4b57be1b8d6dad13d6b |
|
25-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
Moved GUID code to liblib. Use guid_128_t type consistently everywhere. |
e9257b4538b9f464693c5d5e548486f6d292301c |
|
16-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Added fts_indexer_cmd() for easily sending commands to indexer. |
a569c6df4ffe05acc242e269d926449e50702d59 |
|
12-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Added fts_backend_rescan() |
a0475b241a56220714d96a41f11a174c11a48bfa |
|
04-Aug-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Tell backends if we're currently in the code because we're syncing.
That basically means it's either indexer process or doveadm index. |
0fbea4dd37f44d2fcfcd4a36a36a6e545696f0e6 |
|
26-Jul-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Convert input text to decomposed titlecase only for Squat backend.
Lucene and Solr can handle case-insensitivity internally. |
8d587838c414c48a331f0b54cd7ffd97e5024abd |
|
22-Jul-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
The changes include:
- Only indexer process and "doveadm index" do FTS indexing now. Other
processes connect to the indexer process via UNIX socket and request
indexing a specific mailbox.
- FTS backends can now index/search any search key. Current backends
implement indexing for some specific header fields (Subject, From, To, Cc,
Bcc), but it would also be possible to add indexing for e.g. message size
or date.
- CLucene support is fixed and fully functional.
- Solr is split to "solr" and "solr_old" backends. The new "solr" backend
supports the new header fields. It also uses mailbox GUIDs as mailbox
identifiers, so that renaming a mailbox doesn't require reindexing.
The "solr_old" uses the old Solr schema and doesn't support any new features. |
de11cf486e0d0448537b1b5d546496ab85e7cda8 |
|
27-Jun-2011 |
Timo Sirainen <tss@iki.fi> |
fts: Replaced unnecessary lock()/unlock() from API with refresh() |
2116e38edb504e72eadaf5a51c3dd9b1a81039ea |
|
22-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
fts: Give binary MIME part data only to FTS backends that support it.
--HG--
branch : HEAD |
12055678401e913f4be130fa41b22fbeb626cc7e |
|
17-May-2010 |
Timo Sirainen <tss@iki.fi> |
fts: Backends can now index non-text body parts if they support it.
--HG--
branch : HEAD |
b86dc9680d4a15312c5f0607c80402a19f659eb6 |
|
07-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
fts: Fixed crashing with Squat.
A better solution would be for Squat to use existing mailboxes' Squat
indexes, but for now this isn't done.
--HG--
branch : HEAD |
3852872e6954b7132e637294132005e86b8ebd4a |
|
29-Nov-2008 |
Timo Sirainen <tss@iki.fi> |
Finished making full text search indexes work fast with virtual mailboxes.
--HG--
branch : HEAD |
a0c453a8edaec90fb0d945c874de0b1845bc7d7e |
|
13-Jul-2008 |
Timo Sirainen <tss@iki.fi> |
Added support for sorting by X-SCORE. Currently it's only set by fts-solr.
--HG--
branch : HEAD |
809923ba26218971792182ae8894936f9ac99364 |
|
13-Jul-2008 |
Timo Sirainen <tss@iki.fi> |
fts: Added a new lookup API where the backend can look up all the fields
using a single query. Implemented it to fts-solr.
--HG--
branch : HEAD |
99f580865076d29cc21cc96abfe60537e757910f |
|
13-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Compile fix with some compilers
--HG--
branch : HEAD |
b8eb818164de41d0b8e90b390242e6e523f91a47 |
|
13-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Compile fix with some compilers
--HG--
branch : HEAD |
459c61c9a0beaa6986958d55b059b2d246032c4c |
|
03-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Keep struct mailbox pointer in struct fts_backend.
--HG--
branch : HEAD |
1b0cfbf3cc77a670b92fff5c30f7b1eb17a63ab1 |
|
02-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
FTS API changes and Squat rewrite. Squat is still missing expunge handling.
--HG--
branch : HEAD |
c25356d5978632df6203437e1953bcb29e0c736f |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Changed .h ifdef/defines to use <NAME>_H format.
--HG--
branch : HEAD |
bc93929cdd9000ca560a5f42a27f50ab307f1efb |
|
25-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
Don't crash if another search is started while we're still building the
index for the first search.
--HG--
branch : HEAD |
20b136f04257b0ba338e49f31a999c0d4b243647 |
|
15-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
Separate headers and body in building and searching. Added support for
Lucene to index/search them separately.
--HG--
branch : HEAD |
eb0ede66120bb63c0212bad69e67efca1eb47324 |
|
20-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Added support for X-BODY-FAST and X-TEXT-FAST SEARCH arguments. FTS plugin
now allows loading two backends: exact and fast. Fast backend (Lucene) can
be used to optimize only those searches, while exact backend (Squat) can be
used to optimize normal BODY and TEXT searches as well.
--HG--
branch : HEAD |
3d4450c252790b03bb5ce054987ac91110f1ff62 |
|
06-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Added lock/unlock backend operations.
--HG--
branch : HEAD |
85a4ae7e8df7ea45a7665828e5edf48a5fc85730 |
|
01-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Added fts_backend_expunge_finish() virtual backend function.
--HG--
branch : HEAD |
fda168427e1950518acd6d600f1a10a29a5baef0 |
|
25-Oct-2006 |
Timo Sirainen <tss@iki.fi> |
ADd support for expunges
--HG--
branch : HEAD |
c06cd6539a3dbd68eb546464076187be6bc4290f |
|
25-Oct-2006 |
Timo Sirainen <tss@iki.fi> |
Added fts_backend_get_last_uid() which is first used to check if
build_init() needs to be called.
--HG--
branch : HEAD |
c63544d7d2580c680b07f9569e87e9cebee383d5 |
|
25-Oct-2006 |
Timo Sirainen <tss@iki.fi> |
Let FTS backend init function take a struct mailbox instead of path.
--HG--
branch : HEAD |
94f90df2cfb7587bb5af432b2ba065d1c364e1f7 |
|
18-Sep-2006 |
Timo Sirainen <tss@iki.fi> |
API updates and some fixes
--HG--
branch : HEAD |
2793e3bd31d212d6506686aa70773e13d9d98195 |
|
17-Sep-2006 |
Timo Sirainen <tss@iki.fi> |
Added full text search plugin framework. Still missing support for handling
expunges. Also it could use better logic with more complex SEARCH queries to
figure out when the FTS index should be used.
--HG--
branch : HEAD |