luckydog xf
2019-Apr-23  02:57 UTC
SolrCore 'dovecot' is not available due to init failure: fieldType 'text_general' not found in the schema
Hello, it seems an  mismatch of schema file provided by dovecot-2.3.5.2
[root at mail conf]# pwd
/var/solr/data/dovecot/conf
# Below solrconfig.xml is from Solr-8.0.0.
[root at mail conf]# grep text_general solrconfig.xml
    <str name="queryAnalyzerFieldType">text_general</str>
       field types. Text content will be indexed as "text_general" as
      <str name="fieldType">text_general</str>
# schema is from /usr/share/doc/dovecot/solr-schema.xml
dovecot-2.3.5.2 and the latest solr-8.0.0.
It seems XMLs do not match each other. How can I fix this problem?
Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://dovecot.org/pipermail/dovecot/attachments/20190423/193d9032/attachment.html>
luckydog xf
2019-Apr-23  03:18 UTC
SolrCore 'dovecot' is not available due to init failure: fieldType 'text_general' not found in the schema
Here is solrconfig.xml, I removed comments.
--------------------
<?xml version="1.0" encoding="UTF-8"?>
<config>
  <luceneMatchVersion>8.0.0</luceneMatchVersion>
  <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib"
regex=".*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/dist/"
regex="solr-cell-\d.*\.jar"/>
  <lib
dir="${solr.install.dir:../../../..}/contrib/clustering/lib/"
regex=".*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/dist/"
regex="solr-clustering-\d.*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/"
regex=".*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/dist/"
regex="solr-langid-\d.*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib"
regex=".*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/dist/"
regex="solr-velocity-\d.*\.jar"/>
  <lib dir="${solr.install.dir:../../../..}/dist/"
regex="solr-ltr-\d.*\.jar"/>
  <dataDir>${solr.data.dir:}</dataDir>
  <directoryFactory name="DirectoryFactory"
class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}"/>
  <codecFactory class="solr.SchemaCodecFactory"/>
  <indexConfig>
    <lockType>${solr.lock.type:native}</lockType>
  </indexConfig>
  <jmx/>
  <updateHandler class="solr.DirectUpdateHandler2">
    <updateLog>
      <str name="dir">${solr.ulog.dir:}</str>
      <int
name="numVersionBuckets">${solr.ulog.numVersionBuckets:65536}</int>
    </updateLog>
    <autoCommit>
      <maxTime>${solr.autoCommit.maxTime:15000}</maxTime>
      <openSearcher>false</openSearcher>
    </autoCommit>
    <autoSoftCommit>
      <maxTime>${solr.autoSoftCommit.maxTime:-1}</maxTime>
    </autoSoftCommit>
  </updateHandler>
  <query>
   
<maxBooleanClauses>${solr.max.booleanClauses:1024}</maxBooleanClauses>
    <filterCache class="solr.FastLRUCache" size="512"
initialSize="512"
autowarmCount="0"/>
    <queryResultCache class="solr.LRUCache" size="512"
initialSize="512"
autowarmCount="0"/>
    <documentCache class="solr.LRUCache" size="512"
initialSize="512"
autowarmCount="0"/>
    <cache name="perSegFilter"
class="solr.search.LRUCache" size="10"
initialSize="0" autowarmCount="10"
regenerator="solr.NoOpRegenerator"/>
    <enableLazyFieldLoading>true</enableLazyFieldLoading>
    <queryResultWindowSize>20</queryResultWindowSize>
    <queryResultMaxDocsCached>200</queryResultMaxDocsCached>
    <listener event="newSearcher"
class="solr.QuerySenderListener">
      <arr name="queries"/>
    </listener>
    <listener event="firstSearcher"
class="solr.QuerySenderListener">
      <arr name="queries"/>
    </listener>
    <useColdSearcher>false</useColdSearcher>
  </query>
  <requestDispatcher>
    <httpCaching never304="true"/>
  </requestDispatcher>
  <requestHandler name="/select"
class="solr.SearchHandler">
    <lst name="defaults">
      <str name="echoParams">explicit</str>
      <int name="rows">10</int>
    </lst>
  </requestHandler>
  <requestHandler name="/query"
class="solr.SearchHandler">
    <lst name="defaults">
      <str name="echoParams">explicit</str>
      <str name="wt">json</str>
      <str name="indent">true</str>
    </lst>
  </requestHandler>
  <requestHandler name="/browse"
class="solr.SearchHandler"
useParams="query,facets,velocity,browse">
    <lst name="defaults">
      <str name="echoParams">explicit</str>
    </lst>
  </requestHandler>
  <initParams
path="/update/**,/query,/select,/tvrh,/elevate,/spell,/browse">
    <lst name="defaults">
      <str name="df">_text_</str>
    </lst>
  </initParams>
  <requestHandler name="/update/extract" startup="lazy"
class="solr.extraction.ExtractingRequestHandler">
    <lst name="defaults">
      <str name="lowernames">true</str>
      <str name="fmap.content">_text_</str>
    </lst>
  </requestHandler>
  <searchComponent name="spellcheck"
class="solr.SpellCheckComponent">
    <str name="queryAnalyzerFieldType">text_general</str>
    <lst name="spellchecker">
      <str name="name">default</str>
      <str name="field">_text_</str>
      <str
name="classname">solr.DirectSolrSpellChecker</str>
      <str name="distanceMeasure">internal</str>
      <float name="accuracy">0.5</float>
      <int name="maxEdits">2</int>
      <int name="minPrefix">1</int>
      <int name="maxInspections">5</int>
      <int name="minQueryLength">4</int>
      <float name="maxQueryFrequency">0.01</float>
    </lst>
  </searchComponent>
  <requestHandler name="/spell"
class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
      <str name="spellcheck.dictionary">default</str>
      <str name="spellcheck">on</str>
      <str name="spellcheck.extendedResults">true</str>
      <str name="spellcheck.count">10</str>
      <str name="spellcheck.alternativeTermCount">5</str>
      <str name="spellcheck.maxResultsForSuggest">5</str>
      <str name="spellcheck.collate">true</str>
      <str
name="spellcheck.collateExtendedResults">true</str>
      <str name="spellcheck.maxCollationTries">10</str>
      <str name="spellcheck.maxCollations">5</str>
    </lst>
    <arr name="last-components">
      <str>spellcheck</str>
    </arr>
  </requestHandler>
  <searchComponent name="tvComponent"
class="solr.TermVectorComponent"/>
  <requestHandler name="/tvrh" class="solr.SearchHandler"
startup="lazy">
    <lst name="defaults">
      <bool name="tv">true</bool>
    </lst>
    <arr name="last-components">
      <str>tvComponent</str>
    </arr>
  </requestHandler>
  <searchComponent name="terms"
class="solr.TermsComponent"/>
  <requestHandler name="/terms"
class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
      <bool name="terms">true</bool>
      <bool name="distrib">false</bool>
    </lst>
    <arr name="components">
      <str>terms</str>
    </arr>
  </requestHandler>
  <searchComponent name="elevator"
class="solr.QueryElevationComponent">
    <str name="queryFieldType">string</str>
  </searchComponent>
  <requestHandler name="/elevate"
class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
      <str name="echoParams">explicit</str>
    </lst>
    <arr name="last-components">
      <str>elevator</str>
    </arr>
  </requestHandler>
  <searchComponent class="solr.HighlightComponent"
name="highlight">
    <highlighting>
      <fragmenter name="gap" default="true"
class="solr.highlight.GapFragmenter">
        <lst name="defaults">
          <int name="hl.fragsize">100</int>
        </lst>
      </fragmenter>
      <fragmenter name="regex"
class="solr.highlight.RegexFragmenter">
        <lst name="defaults">
          <int name="hl.fragsize">70</int>
          <float name="hl.regex.slop">0.5</float>
          <str name="hl.regex.pattern">[-\w
,/\n\"']{20,200}</str>
        </lst>
      </fragmenter>
      <formatter name="html" default="true"
class="solr.highlight.HtmlFormatter">
        <lst name="defaults">
          <str
name="hl.simple.pre"><![CDATA[<em>]]></str>
          <str
name="hl.simple.post"><![CDATA[</em>]]></str>
        </lst>
      </formatter>
      <encoder name="html"
class="solr.highlight.HtmlEncoder"/>
      <fragListBuilder name="simple"
class="solr.highlight.SimpleFragListBuilder"/>
      <fragListBuilder name="single"
class="solr.highlight.SingleFragListBuilder"/>
      <fragListBuilder name="weighted" default="true"
class="solr.highlight.WeightedFragListBuilder"/>
      <fragmentsBuilder name="default" default="true"
class="solr.highlight.ScoreOrderFragmentsBuilder"/>
      <fragmentsBuilder name="colored"
class="solr.highlight.ScoreOrderFragmentsBuilder">
        <lst name="defaults">
          <str name="hl.tag.pre"><![CDATA[
               <b style="background:yellow">,<b
style="background:lawgreen">,
               <b style="background:aquamarine">,<b
style="background:magenta">,
               <b style="background:palegreen">,<b
style="background:coral">,
               <b style="background:wheat">,<b
style="background:khaki">,
               <b style="background:lime">,<b
style="background:deepskyblue">]]></str>
          <str
name="hl.tag.post"><![CDATA[</b>]]></str>
        </lst>
      </fragmentsBuilder>
      <boundaryScanner name="default" default="true"
class="solr.highlight.SimpleBoundaryScanner">
        <lst name="defaults">
          <str name="hl.bs.maxScan">10</str>
          <str name="hl.bs.chars">.,!?

</str>
        </lst>
      </boundaryScanner>
      <boundaryScanner name="breakIterator"
class="solr.highlight.BreakIteratorBoundaryScanner">
        <lst name="defaults">
          <str name="hl.bs.type">WORD</str>
          <str name="hl.bs.language">en</str>
          <str name="hl.bs.country">US</str>
        </lst>
      </boundaryScanner>
    </highlighting>
  </searchComponent>
  <updateProcessor class="solr.UUIDUpdateProcessorFactory"
name="uuid"/>
  <updateProcessor
class="solr.RemoveBlankFieldUpdateProcessorFactory"
name="remove-blank"/>
  <updateProcessor
class="solr.FieldNameMutatingUpdateProcessorFactory"
name="field-name-mutating">
    <str name="pattern">[^\w-\.]</str>
    <str name="replacement">_</str>
  </updateProcessor>
  <updateProcessor
class="solr.ParseBooleanFieldUpdateProcessorFactory"
name="parse-boolean"/>
  <updateProcessor
class="solr.ParseLongFieldUpdateProcessorFactory"
name="parse-long"/>
  <updateProcessor
class="solr.ParseDoubleFieldUpdateProcessorFactory"
name="parse-double"/>
  <updateProcessor
class="solr.ParseDateFieldUpdateProcessorFactory"
name="parse-date">
    <arr name="format">
      <str>yyyy-MM-dd['T'[HH:mm[:ss[.SSS]][z</str>
      <str>yyyy-MM-dd['T'[HH:mm[:ss[,SSS]][z</str>
      <str>yyyy-MM-dd HH:mm[:ss[.SSS]][z</str>
      <str>yyyy-MM-dd HH:mm[:ss[,SSS]][z</str>
      <str>[EEE, ]dd MMM yyyy HH:mm[:ss] z</str>
      <str>EEEE, dd-MMM-yy HH:mm:ss z</str>
      <str>EEE MMM ppd HH:mm:ss [z ]yyyy</str>
    </arr>
  </updateProcessor>
  <updateProcessor
class="solr.AddSchemaFieldsUpdateProcessorFactory"
name="add-schema-fields">
    <lst name="typeMapping">
      <str name="valueClass">java.lang.String</str>
      <str name="fieldType">text_general</str>
      <lst name="copyField">
        <str name="dest">*_str</str>
        <int name="maxChars">256</int>
      </lst>
      <bool name="default">true</bool>
    </lst>
    <lst name="typeMapping">
      <str name="valueClass">java.lang.Boolean</str>
      <str name="fieldType">booleans</str>
    </lst>
    <lst name="typeMapping">
      <str name="valueClass">java.util.Date</str>
      <str name="fieldType">pdates</str>
    </lst>
    <lst name="typeMapping">
      <str name="valueClass">java.lang.Long</str>
      <str name="valueClass">java.lang.Integer</str>
      <str name="fieldType">plongs</str>
    </lst>
    <lst name="typeMapping">
      <str name="valueClass">java.lang.Number</str>
      <str name="fieldType">pdoubles</str>
    </lst>
  </updateProcessor>
  <updateRequestProcessorChain
name="add-unknown-fields-to-the-schema"
default="${update.autoCreateFields:true}"
processor="uuid,remove-blank,field-name-mutating,parse-boolean,parse-long,parse-double,parse-date,add-schema-fields">
    <processor class="solr.LogUpdateProcessorFactory"/>
    <processor class="solr.DistributedUpdateProcessorFactory"/>
    <processor class="solr.RunUpdateProcessorFactory"/>
  </updateRequestProcessorChain>
  <queryResponseWriter name="json"
class="solr.JSONResponseWriter">
    <str name="content-type">text/plain;
charset=UTF-8</str>
  </queryResponseWriter>
  <queryResponseWriter name="velocity"
class="solr.VelocityResponseWriter"
startup="lazy">
    <str
name="template.base.dir">${velocity.template.base.dir:}</str>
    <str
name="solr.resource.loader.enabled">${velocity.solr.resource.loader.enabled:true}</str>
    <str
name="params.resource.loader.enabled">${velocity.params.resource.loader.enabled:false}</str>
  </queryResponseWriter>
  <queryResponseWriter name="xslt"
class="solr.XSLTResponseWriter">
    <int name="xsltCacheLifetimeSeconds">5</int>
  </queryResponseWriter>
</config>
On Tue, Apr 23, 2019 at 10:57 AM luckydog xf <luckydogxf at gmail.com>
wrote:
> Hello, it seems an  mismatch of schema file provided by dovecot-2.3.5.2
>
> [root at mail conf]# pwd
> /var/solr/data/dovecot/conf
>
> # Below solrconfig.xml is from Solr-8.0.0.
>
> [root at mail conf]# grep text_general solrconfig.xml
>
>     <str
name="queryAnalyzerFieldType">text_general</str>
>        field types. Text content will be indexed as
"text_general" as
>       <str name="fieldType">text_general</str>
>
> # schema is from /usr/share/doc/dovecot/solr-schema.xml
>
> dovecot-2.3.5.2 and the latest solr-8.0.0.
>
> It seems XMLs do not match each other. How can I fix this problem?
>
> Thanks.
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://dovecot.org/pipermail/dovecot/attachments/20190423/53fd25ca/attachment-0001.html>
luckydog xf
2019-Apr-23  03:31 UTC
SolrCore 'dovecot' is not available due to init failure: fieldType 'text_general' not found in the schema
https://wiki.dovecot.org/Plugins/FTS/Solr Only offers a solr-7.7.0 solrconfig.xml, does it apply to solr-8.0.0? On Tue, Apr 23, 2019 at 11:18 AM luckydog xf <luckydogxf at gmail.com> wrote:> Here is solrconfig.xml, I removed comments. > -------------------- > > <?xml version="1.0" encoding="UTF-8"?> > <config> > <luceneMatchVersion>8.0.0</luceneMatchVersion> > <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" > regex=".*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/dist/" > regex="solr-cell-\d.*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" > regex=".*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/dist/" > regex="solr-clustering-\d.*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" > regex=".*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/dist/" > regex="solr-langid-\d.*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" > regex=".*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/dist/" > regex="solr-velocity-\d.*\.jar"/> > <lib dir="${solr.install.dir:../../../..}/dist/" > regex="solr-ltr-\d.*\.jar"/> > <dataDir>${solr.data.dir:}</dataDir> > <directoryFactory name="DirectoryFactory" > class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}"/> > <codecFactory class="solr.SchemaCodecFactory"/> > <indexConfig> > <lockType>${solr.lock.type:native}</lockType> > </indexConfig> > <jmx/> > <updateHandler class="solr.DirectUpdateHandler2"> > <updateLog> > <str name="dir">${solr.ulog.dir:}</str> > <int > name="numVersionBuckets">${solr.ulog.numVersionBuckets:65536}</int> > </updateLog> > <autoCommit> > <maxTime>${solr.autoCommit.maxTime:15000}</maxTime> > <openSearcher>false</openSearcher> > </autoCommit> > <autoSoftCommit> > <maxTime>${solr.autoSoftCommit.maxTime:-1}</maxTime> > </autoSoftCommit> > </updateHandler> > <query> > <maxBooleanClauses>${solr.max.booleanClauses:1024}</maxBooleanClauses> > <filterCache class="solr.FastLRUCache" size="512" initialSize="512" > autowarmCount="0"/> > <queryResultCache class="solr.LRUCache" size="512" initialSize="512" > autowarmCount="0"/> > <documentCache class="solr.LRUCache" size="512" initialSize="512" > autowarmCount="0"/> > <cache name="perSegFilter" class="solr.search.LRUCache" size="10" > initialSize="0" autowarmCount="10" regenerator="solr.NoOpRegenerator"/> > <enableLazyFieldLoading>true</enableLazyFieldLoading> > <queryResultWindowSize>20</queryResultWindowSize> > <queryResultMaxDocsCached>200</queryResultMaxDocsCached> > <listener event="newSearcher" class="solr.QuerySenderListener"> > <arr name="queries"/> > </listener> > <listener event="firstSearcher" class="solr.QuerySenderListener"> > <arr name="queries"/> > </listener> > <useColdSearcher>false</useColdSearcher> > </query> > <requestDispatcher> > <httpCaching never304="true"/> > </requestDispatcher> > <requestHandler name="/select" class="solr.SearchHandler"> > <lst name="defaults"> > <str name="echoParams">explicit</str> > <int name="rows">10</int> > </lst> > </requestHandler> > <requestHandler name="/query" class="solr.SearchHandler"> > <lst name="defaults"> > <str name="echoParams">explicit</str> > <str name="wt">json</str> > <str name="indent">true</str> > </lst> > </requestHandler> > <requestHandler name="/browse" class="solr.SearchHandler" > useParams="query,facets,velocity,browse"> > <lst name="defaults"> > <str name="echoParams">explicit</str> > </lst> > </requestHandler> > <initParams > path="/update/**,/query,/select,/tvrh,/elevate,/spell,/browse"> > <lst name="defaults"> > <str name="df">_text_</str> > </lst> > </initParams> > <requestHandler name="/update/extract" startup="lazy" > class="solr.extraction.ExtractingRequestHandler"> > <lst name="defaults"> > <str name="lowernames">true</str> > <str name="fmap.content">_text_</str> > </lst> > </requestHandler> > <searchComponent name="spellcheck" class="solr.SpellCheckComponent"> > <str name="queryAnalyzerFieldType">text_general</str> > <lst name="spellchecker"> > <str name="name">default</str> > <str name="field">_text_</str> > <str name="classname">solr.DirectSolrSpellChecker</str> > <str name="distanceMeasure">internal</str> > <float name="accuracy">0.5</float> > <int name="maxEdits">2</int> > <int name="minPrefix">1</int> > <int name="maxInspections">5</int> > <int name="minQueryLength">4</int> > <float name="maxQueryFrequency">0.01</float> > </lst> > </searchComponent> > <requestHandler name="/spell" class="solr.SearchHandler" startup="lazy"> > <lst name="defaults"> > <str name="spellcheck.dictionary">default</str> > <str name="spellcheck">on</str> > <str name="spellcheck.extendedResults">true</str> > <str name="spellcheck.count">10</str> > <str name="spellcheck.alternativeTermCount">5</str> > <str name="spellcheck.maxResultsForSuggest">5</str> > <str name="spellcheck.collate">true</str> > <str name="spellcheck.collateExtendedResults">true</str> > <str name="spellcheck.maxCollationTries">10</str> > <str name="spellcheck.maxCollations">5</str> > </lst> > <arr name="last-components"> > <str>spellcheck</str> > </arr> > </requestHandler> > <searchComponent name="tvComponent" class="solr.TermVectorComponent"/> > <requestHandler name="/tvrh" class="solr.SearchHandler" startup="lazy"> > <lst name="defaults"> > <bool name="tv">true</bool> > </lst> > <arr name="last-components"> > <str>tvComponent</str> > </arr> > </requestHandler> > <searchComponent name="terms" class="solr.TermsComponent"/> > <requestHandler name="/terms" class="solr.SearchHandler" startup="lazy"> > <lst name="defaults"> > <bool name="terms">true</bool> > <bool name="distrib">false</bool> > </lst> > <arr name="components"> > <str>terms</str> > </arr> > </requestHandler> > <searchComponent name="elevator" class="solr.QueryElevationComponent"> > <str name="queryFieldType">string</str> > </searchComponent> > <requestHandler name="/elevate" class="solr.SearchHandler" > startup="lazy"> > <lst name="defaults"> > <str name="echoParams">explicit</str> > </lst> > <arr name="last-components"> > <str>elevator</str> > </arr> > </requestHandler> > <searchComponent class="solr.HighlightComponent" name="highlight"> > <highlighting> > <fragmenter name="gap" default="true" > class="solr.highlight.GapFragmenter"> > <lst name="defaults"> > <int name="hl.fragsize">100</int> > </lst> > </fragmenter> > <fragmenter name="regex" class="solr.highlight.RegexFragmenter"> > <lst name="defaults"> > <int name="hl.fragsize">70</int> > <float name="hl.regex.slop">0.5</float> > <str name="hl.regex.pattern">[-\w ,/\n\"']{20,200}</str> > </lst> > </fragmenter> > <formatter name="html" default="true" > class="solr.highlight.HtmlFormatter"> > <lst name="defaults"> > <str name="hl.simple.pre"><![CDATA[<em>]]></str> > <str name="hl.simple.post"><![CDATA[</em>]]></str> > </lst> > </formatter> > <encoder name="html" class="solr.highlight.HtmlEncoder"/> > <fragListBuilder name="simple" > class="solr.highlight.SimpleFragListBuilder"/> > <fragListBuilder name="single" > class="solr.highlight.SingleFragListBuilder"/> > <fragListBuilder name="weighted" default="true" > class="solr.highlight.WeightedFragListBuilder"/> > <fragmentsBuilder name="default" default="true" > class="solr.highlight.ScoreOrderFragmentsBuilder"/> > <fragmentsBuilder name="colored" > class="solr.highlight.ScoreOrderFragmentsBuilder"> > <lst name="defaults"> > <str name="hl.tag.pre"><![CDATA[ > <b style="background:yellow">,<b > style="background:lawgreen">, > <b style="background:aquamarine">,<b > style="background:magenta">, > <b style="background:palegreen">,<b > style="background:coral">, > <b style="background:wheat">,<b style="background:khaki">, > <b style="background:lime">,<b > style="background:deepskyblue">]]></str> > <str name="hl.tag.post"><![CDATA[</b>]]></str> > </lst> > </fragmentsBuilder> > <boundaryScanner name="default" default="true" > class="solr.highlight.SimpleBoundaryScanner"> > <lst name="defaults"> > <str name="hl.bs.maxScan">10</str> > <str name="hl.bs.chars">.,!? > 
</str> > </lst> > </boundaryScanner> > <boundaryScanner name="breakIterator" > class="solr.highlight.BreakIteratorBoundaryScanner"> > <lst name="defaults"> > <str name="hl.bs.type">WORD</str> > <str name="hl.bs.language">en</str> > <str name="hl.bs.country">US</str> > </lst> > </boundaryScanner> > </highlighting> > </searchComponent> > <updateProcessor class="solr.UUIDUpdateProcessorFactory" name="uuid"/> > <updateProcessor class="solr.RemoveBlankFieldUpdateProcessorFactory" > name="remove-blank"/> > <updateProcessor class="solr.FieldNameMutatingUpdateProcessorFactory" > name="field-name-mutating"> > <str name="pattern">[^\w-\.]</str> > <str name="replacement">_</str> > </updateProcessor> > <updateProcessor class="solr.ParseBooleanFieldUpdateProcessorFactory" > name="parse-boolean"/> > <updateProcessor class="solr.ParseLongFieldUpdateProcessorFactory" > name="parse-long"/> > <updateProcessor class="solr.ParseDoubleFieldUpdateProcessorFactory" > name="parse-double"/> > <updateProcessor class="solr.ParseDateFieldUpdateProcessorFactory" > name="parse-date"> > <arr name="format"> > <str>yyyy-MM-dd['T'[HH:mm[:ss[.SSS]][z</str> > <str>yyyy-MM-dd['T'[HH:mm[:ss[,SSS]][z</str> > <str>yyyy-MM-dd HH:mm[:ss[.SSS]][z</str> > <str>yyyy-MM-dd HH:mm[:ss[,SSS]][z</str> > <str>[EEE, ]dd MMM yyyy HH:mm[:ss] z</str> > <str>EEEE, dd-MMM-yy HH:mm:ss z</str> > <str>EEE MMM ppd HH:mm:ss [z ]yyyy</str> > </arr> > </updateProcessor> > <updateProcessor class="solr.AddSchemaFieldsUpdateProcessorFactory" > name="add-schema-fields"> > <lst name="typeMapping"> > <str name="valueClass">java.lang.String</str> > <str name="fieldType">text_general</str> > <lst name="copyField"> > <str name="dest">*_str</str> > <int name="maxChars">256</int> > </lst> > <bool name="default">true</bool> > </lst> > <lst name="typeMapping"> > <str name="valueClass">java.lang.Boolean</str> > <str name="fieldType">booleans</str> > </lst> > <lst name="typeMapping"> > <str name="valueClass">java.util.Date</str> > <str name="fieldType">pdates</str> > </lst> > <lst name="typeMapping"> > <str name="valueClass">java.lang.Long</str> > <str name="valueClass">java.lang.Integer</str> > <str name="fieldType">plongs</str> > </lst> > <lst name="typeMapping"> > <str name="valueClass">java.lang.Number</str> > <str name="fieldType">pdoubles</str> > </lst> > </updateProcessor> > <updateRequestProcessorChain name="add-unknown-fields-to-the-schema" > default="${update.autoCreateFields:true}" > processor="uuid,remove-blank,field-name-mutating,parse-boolean,parse-long,parse-double,parse-date,add-schema-fields"> > <processor class="solr.LogUpdateProcessorFactory"/> > <processor class="solr.DistributedUpdateProcessorFactory"/> > <processor class="solr.RunUpdateProcessorFactory"/> > </updateRequestProcessorChain> > <queryResponseWriter name="json" class="solr.JSONResponseWriter"> > <str name="content-type">text/plain; charset=UTF-8</str> > </queryResponseWriter> > <queryResponseWriter name="velocity" class="solr.VelocityResponseWriter" > startup="lazy"> > <str name="template.base.dir">${velocity.template.base.dir:}</str> > <str > name="solr.resource.loader.enabled">${velocity.solr.resource.loader.enabled:true}</str> > <str > name="params.resource.loader.enabled">${velocity.params.resource.loader.enabled:false}</str> > </queryResponseWriter> > <queryResponseWriter name="xslt" class="solr.XSLTResponseWriter"> > <int name="xsltCacheLifetimeSeconds">5</int> > </queryResponseWriter> > </config> > > > > On Tue, Apr 23, 2019 at 10:57 AM luckydog xf <luckydogxf at gmail.com> wrote: > >> Hello, it seems an mismatch of schema file provided by dovecot-2.3.5.2 >> >> [root at mail conf]# pwd >> /var/solr/data/dovecot/conf >> >> # Below solrconfig.xml is from Solr-8.0.0. >> >> [root at mail conf]# grep text_general solrconfig.xml >> >> <str name="queryAnalyzerFieldType">text_general</str> >> field types. Text content will be indexed as "text_general" as >> <str name="fieldType">text_general</str> >> >> # schema is from /usr/share/doc/dovecot/solr-schema.xml >> >> dovecot-2.3.5.2 and the latest solr-8.0.0. >> >> It seems XMLs do not match each other. How can I fix this problem? >> >> Thanks. >> >> >>-------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20190423/73fcb0d5/attachment-0001.html>