Mercurial > dovecot > core-2.2
annotate doc/solr-schema.xml @ 13101:7b9978eb6f91
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.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 22 Jul 2011 13:21:59 +0300 |
parents | 3e70abe7ee36 |
children | fa852748e601 |
rev | line source |
---|---|
8003 | 1 <?xml version="1.0" encoding="UTF-8" ?> |
2 | |
3 <!-- | |
4 For fts-solr: | |
5 | |
6 This is the Solr schema file, place it into solr/conf/schema.xml. You may | |
7 want to modify the tokenizers and filters. | |
8 --> | |
13101
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
9 <schema name="dovecot" version="2.1"> |
8003 | 10 <types> |
11 <!-- IMAP has 32bit unsigned ints but java ints are signed, so use longs --> | |
12 <fieldType name="string" class="solr.StrField" omitNorms="true"/> | |
13 <fieldType name="long" class="solr.LongField" omitNorms="true"/> | |
14 <fieldType name="slong" class="solr.SortableLongField" omitNorms="true"/> | |
15 <fieldType name="float" class="solr.FloatField" omitNorms="true"/> | |
8492
ee1ecdda8a6b
fts-solr: Keep last_uid field updated containing the mailbox's last added UID.
Timo Sirainen <tss@iki.fi>
parents:
8003
diff
changeset
|
16 <fieldType name="boolean" class="solr.BoolField" omitNorms="true"/> |
8003 | 17 |
18 <fieldType name="text" class="solr.TextField" positionIncrementGap="100"> | |
19 <analyzer type="index"> | |
20 <tokenizer class="solr.WhitespaceTokenizerFactory"/> | |
21 <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> | |
22 <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0"/> | |
23 <filter class="solr.LowerCaseFilterFactory"/> | |
24 <filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt"/> | |
25 <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> | |
26 </analyzer> | |
27 <analyzer type="query"> | |
28 <tokenizer class="solr.WhitespaceTokenizerFactory"/> | |
29 <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/> | |
30 <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> | |
31 <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0"/> | |
32 <filter class="solr.LowerCaseFilterFactory"/> | |
33 <filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt"/> | |
34 <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> | |
35 </analyzer> | |
36 </fieldType> | |
37 </types> | |
38 | |
39 | |
40 <fields> | |
13101
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
41 <field name="id" type="string" indexed="true" stored="true" required="true" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
42 <field name="uid" type="slong" indexed="true" stored="true" required="true" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
43 <field name="box" type="string" indexed="true" stored="true" required="true" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
44 <field name="user" type="string" indexed="true" stored="true" required="true" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
45 |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
46 <field name="hdr" type="text" indexed="true" stored="false" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
47 <field name="body" type="text" indexed="true" stored="false" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
48 |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
49 <field name="from" type="text" indexed="true" stored="false" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
50 <field name="to" type="text" indexed="true" stored="false" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
51 <field name="cc" type="text" indexed="true" stored="false" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
52 <field name="bcc" type="text" indexed="true" stored="false" /> |
7b9978eb6f91
fts: Redesigned/enhanced FTS API and how virtual plugin works with it.
Timo Sirainen <tss@iki.fi>
parents:
11809
diff
changeset
|
53 <field name="subject" type="text" indexed="true" stored="false" /> |
8003 | 54 </fields> |
55 | |
56 <uniqueKey>id</uniqueKey> | |
11809
3e70abe7ee36
solr-schema: Removed all references to unused "any" field.
Timo Sirainen <tss@iki.fi>
parents:
9488
diff
changeset
|
57 <defaultSearchField>body</defaultSearchField> |
8003 | 58 <solrQueryParser defaultOperator="AND" /> |
59 </schema> |