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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8003
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1 <?xml version="1.0" encoding="UTF-8" ?>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 <!--
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
4 For fts-solr:
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
6 This is the Solr schema file, place it into solr/conf/schema.xml. You may
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7 want to modify the tokenizers and filters.
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
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
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10 <types>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
11 <!-- IMAP has 32bit unsigned ints but java ints are signed, so use longs -->
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
12 <fieldType name="string" class="solr.StrField" omitNorms="true"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
13 <fieldType name="long" class="solr.LongField" omitNorms="true"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
14 <fieldType name="slong" class="solr.SortableLongField" omitNorms="true"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
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
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
17
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
18 <fieldType name="text" class="solr.TextField" positionIncrementGap="100">
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
19 <analyzer type="index">
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
20 <tokenizer class="solr.WhitespaceTokenizerFactory"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
21 <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
22 <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
23 <filter class="solr.LowerCaseFilterFactory"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
24 <filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25 <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26 </analyzer>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
27 <analyzer type="query">
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
28 <tokenizer class="solr.WhitespaceTokenizerFactory"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
29 <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
30 <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
31 <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
32 <filter class="solr.LowerCaseFilterFactory"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
33 <filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
34 <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
35 </analyzer>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
36 </fieldType>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
37 </types>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
38
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
39
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
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
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
54 </fields>
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
55
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
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
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
58 <solrQueryParser defaultOperator="AND" />
d6d7be735b40 Moved Solr schema.xml to doc/.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
59 </schema>