Dovecot Full Text Search results in SolrException: undefined field text [SERIOUS]

Kevin Laurie superinterstellar at gmail.com
Thu Mar 5 08:51:53 UTC 2015


Below is my schema.xml




<!--
For fts-solr:

Tested with dovecot 2 and Solr 4.10

This is the Solr schema file, place it into solr/conf/schema.xml.

by Adrian Jon kriel
-->
<schema name="dovecot" version="1.5">

  <field name="_version_" type="long" indexed="true" stored="true"/>
  <field name="_root_" type="string" indexed="true" stored="false"/>

  <types>
    <!-- IMAP has 32bit unsigned ints but java ints are signed, so use longs -->
    <fieldType name="string" class="solr.StrField" omitNorms="true"/>
    <fieldType name="long" class="solr.LongField" omitNorms="true"/>
    <fieldType name="slong" class="solr.SortableLongField" omitNorms="true"/>
    <fieldType name="float" class="solr.FloatField" omitNorms="true"/>
    <fieldType name="boolean" class="solr.BoolField" omitNorms="true"/>

    <fieldType name="text" class="solr.TextField" positionIncrementGap="100">
      <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt"/>
        <filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1" catenateWords="1"
catenateNumbers="1" catenateAll="0"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <!-- DEPRECATED VALUE
        <filter class="solr.EnglishPorterFilterFactory"
protected="protwords.txt"/>
        -->
        <filter class="solr.SnowballPorterFilterFactory"
protected="protwords.txt"/>
        <filter class="solr.NGramFilterFactory" minGramSize="3"
maxGramSize="15"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.SynonymFilterFactory"
synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
        <filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt"/>
        <filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1" catenateWords="0"
catenateNumbers="0" catenateAll="0"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <!-- DEPRECATED VALUE
        <filter class="solr.EnglishPorterFilterFactory"
protected="protwords.txt"/>
        -->
        <filter class="solr.SnowballPorterFilterFactory"
protected="protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
    </fieldType>
 </types>


 <fields>
   <field name="id" type="string" indexed="true" stored="true"
required="true" />
   <field name="uid" type="slong" indexed="true" stored="true"
required="true" />
   <field name="box" type="string" indexed="true" stored="true"
required="true" />
   <field name="user" type="string" indexed="true" stored="true"
required="true" />

   <field name="hdr" type="text" indexed="true" stored="false" />
   <field name="body" type="text" indexed="true" stored="false" />

   <field name="from" type="text" indexed="true" stored="false" />
   <field name="to" type="text" indexed="true" stored="false" />
   <field name="cc" type="text" indexed="true" stored="false" />
   <field name="bcc" type="text" indexed="true" stored="false" />
   <field name="subject" type="text" indexed="true" stored="false" />
 </fields>

 <uniqueKey>id</uniqueKey>
 <defaultSearchField>body</defaultSearchField>
 <solrQueryParser defaultOperator="AND" />
</schema>


On Thu, Mar 5, 2015 at 3:48 PM, Leon Kyneur <leon at dexterous.org> wrote:
> In your schema.XML check you have defined:
>
> <field name="text" type="text_general" indexed="true" stored="false"
> multiValued="true"/>
>
> On 05/03/2015 7:11 PM, "Kevin Laurie" <superinterstellar at gmail.com> wrote:
>>
>> Hello,
>> My dovecot constantly runs into this error.
>> I want to fix this one last time, I am tired of troubleshooting so
>> please someone give me a lasting and proper solution for this error. I
>> think its a problem with the dovecot-solr module.
>>
>> Please tell me how do I find the root of this problem with Dovecot.
>> There is a problem with the body search text field. It always
>> fails(with no result), other searches work(ie. search date, subject
>> etc, ) The field-text I believe is missing. Please help. Desperate
>> here!
>>
>>
>>
>>
>> 2/25/2015, 11:32:30 PM ERROR SolrCore
>> org.apache.solr.common.
>> SolrException: undefined field text
>>
>> org.apache.solr.common.SolrException: undefined field text
>> at
>> org.apache.solr.schema.IndexSchema.getDynamicFieldType(IndexSchema.java:1269)
>> at
>> org.apache.solr.schema.IndexSchema$SolrQueryAnalyzer.getWrappedAnalyzer(IndexSchema.java:434)
>> at
>> org.apache.lucene.analysis.DelegatingAnalyzerWrapper$DelegatingReuseStrategy.getReusableComponents(DelegatingAnalyzerWrapper.java:74)
>> at org.apache.lucene.analysis.Analyzer.tokenStream(Analyzer.java:175)
>> at
>> org.apache.lucene.util.QueryBuilder.createFieldQuery(QueryBuilder.java:207)
>> at
>> org.apache.solr.parser.SolrQueryParserBase.newFieldQuery(SolrQueryParserBase.java:374)
>> at
>> org.apache.solr.parser.SolrQueryParserBase.getFieldQuery(SolrQueryParserBase.java:742)
>> at
>> org.apache.solr.parser.SolrQueryParserBase.handleBareTokenQuery(SolrQueryParserBase.java:541)
>> at org.apache.solr.parser.QueryParser.Term(QueryParser.java:299)
>> at org.apache.solr.parser.QueryParser.Clause(QueryParser.java:185)
>> at org.apache.solr.parser.QueryParser.Query(QueryParser.java:107)
>> at org.apache.solr.parser.QueryParser.TopLevelQuery(QueryParser.java:96)
>> at
>> org.apache.solr.parser.SolrQueryParserBase.parse(SolrQueryParserBase.java:151)
>> at org.apache.solr.search.LuceneQParser.parse(LuceneQParser.java:50)
>> at org.apache.solr.search.QParser.getQuery(QParser.java:141)
>> at
>> org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:148)
>> at
>> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:197)
>> at
>> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
>> at org.apache.solr.core.SolrCore.execute(SolrCore.java:1967)
>> at
>> org.apache.solr.core.QuerySenderListener.newSearcher(QuerySenderListener.java:64)
>> at org.apache.solr.core.SolrCore$5.call(SolrCore.java:1739)
>> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>> at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>> at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>> at java.lang.Thread.run(Thread.java:745)


More information about the dovecot mailing list