Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从SOLR 6.6更新到8.2后,缺少SOLR自定义字段类型_Solr - Fatal编程技术网

从SOLR 6.6更新到8.2后,缺少SOLR自定义字段类型

从SOLR 6.6更新到8.2后,缺少SOLR自定义字段类型,solr,Solr,SOLR不是我的日常业务,但我必须将SOLR核心从6.6更新到8.2。 更新后,缺少自定义字段类型 在阅读了SOLR指南中的相关部分后,我看不到模式语法有任何变化 新的SOLR 8.2 schema.xml <schema name="tx_solr-10-0-0--20191010" version="1.6"> <uniqueKey>id</uniqueKey> <!-- xinclude fields --> <xi:includ

SOLR不是我的日常业务,但我必须将SOLR核心从6.6更新到8.2。 更新后,缺少自定义字段类型

在阅读了SOLR指南中的相关部分后,我看不到模式语法有任何变化

新的SOLR 8.2 schema.xml

<schema name="tx_solr-10-0-0--20191010" version="1.6">

<uniqueKey>id</uniqueKey>
<!--  xinclude fields  -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../general_schema_types.xml"/>
<!--   xinclude fields -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../general_schema_fields.xml"/>

<dynamicField name="*_textEdgeNgram1S" type="textEdgeNgram1" indexed="true" stored="true" multiValued="false"/>
<dynamicField name="*_textEdgeNgram1M" type="textEdgeNgram1" indexed="true" stored="true" multiValued="true"/>

<!-- Language-sensitive string field allowing proper sorting -->
<fieldType name="string_collated" class="solr.ICUCollationField" locale="de" strength="primary"/>

<!-- A text field that uses WordDelimiterFilter to enable splitting and matching of
    words on case-change, alpha numeric boundaries, and non-alphanumeric chars,
    so that a query of "wifi" or "wi fi" could match a document containing "Wi-Fi".
    Synonyms and stopwords are customized by external files, and stemming is enabled.
    Duplicate tokens at the same position (which may result from Stemmed Synonyms or
    WordDelim parts) are removed. -->
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.WordDelimiterGraphFilterFactory"
                generateWordParts="1"
                generateNumberParts="1"
                catenateWords="1"
                catenateNumbers="1"
                catenateAll="0"
                splitOnCaseChange="1"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.FlattenGraphFilterFactory"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory"
                dictionary="german/german-common-nouns.txt"
                minWordSize="5"
                minSubwordSize="4"
                maxSubwordSize="15"
                onlyLongestMatch="false"
        />
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.WordDelimiterGraphFilterFactory"
                generateWordParts="1"
                generateNumberParts="1"
                catenateWords="0"
                catenateNumbers="0"
                catenateAll="0"
                splitOnCaseChange="1"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>
<!-- Less flexible matching, but less false matches.    Probably not ideal for product names,
    but may be good for SKUs.   Can insert dashes in the wrong place and still match. -->
<fieldType name="textTight" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.FlattenGraphFilterFactory"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory"
                dictionary="german/german-common-nouns.txt"
                minWordSize="5"
                minSubwordSize="4"
                maxSubwordSize="15"
                onlyLongestMatch="false"
        />
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.WordDelimiterGraphFilterFactory"
                generateWordParts="0"
                generateNumberParts="0"
                catenateWords="1"
                catenateNumbers="1"
                catenateAll="0"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory"
                dictionary="german/german-common-nouns.txt"
                minWordSize="5"
                minSubwordSize="4"
                maxSubwordSize="15"
                onlyLongestMatch="false"
        />
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.WordDelimiterGraphFilterFactory"
                generateWordParts="0"
                generateNumberParts="0"
                catenateWords="1"
                catenateNumbers="1"
                catenateAll="0"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>

<!-- Exact matching of words like textWhiteSpaceTokenized,
    but with enabled Synonym and Stop Filter
 -->
<fieldType name="textExact" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.FlattenGraphFilterFactory"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>

        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>
<!-- Setup simple analysis for spell checking -->
<fieldType name="textSpell" class="solr.TextField" positionIncrementGap="100" omitNorms="true">
    <analyzer type="index">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory"
                dictionary="german/german-common-nouns.txt"
                minWordSize="5"
                minSubwordSize="4"
                maxSubwordSize="15"
                onlyLongestMatch="false"
        />

        <!-- no synonyms here because we do not want to add them as spell suggestion -->
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymGraphFilterFactory" managed="german"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>

<fieldType name="textEdgeNgram1" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.LowerCaseTokenizerFactory"/>
        <filter class="solr.EdgeNGramFilterFactory" minGramSize="1" maxGramSize="15"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.LowerCaseTokenizerFactory"/>
    </analyzer>
</fieldType>

身份证件

Old SOLR 6.6 schmema.xml

<schema name="tx_solr-8-0-0--20171020" version="1.6">

<uniqueKey>id</uniqueKey>
<!--  xinclude fields  -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../general_schema_types.xml"/>
<!--   xinclude fields -->
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../general_schema_fields.xml"/>

<dynamicField name="*_textEdgeNgram1S" type="textEdgeNgram1" indexed="true" stored="true" multiValued="false"/>
<dynamicField name="*_textEdgeNgram1M" type="textEdgeNgram1" indexed="true" stored="true" multiValued="true"/>

<!-- Language-sensitive string field allowing proper sorting -->
<fieldType name="string_collated" class="solr.ICUCollationField" locale="de" strength="primary"/>
    <fieldType name="text" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.WordDelimiterFilterFactory"
                generateWordParts="1"
                generateNumberParts="1"
                catenateWords="1"
                catenateNumbers="1"
                catenateAll="0"
                splitOnCaseChange="1"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymFilterFactory" managed="german"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory"
                dictionary="german/german-common-nouns.txt"
                minWordSize="5"
                minSubwordSize="4"
                maxSubwordSize="15"
                onlyLongestMatch="false"
        />
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.WordDelimiterFilterFactory"
                generateWordParts="1"
                generateNumberParts="1"
                catenateWords="0"
                catenateNumbers="0"
                catenateAll="0"
                splitOnCaseChange="1"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymFilterFactory" managed="german"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>

<fieldType name="textTight" class="solr.TextField" positionIncrementGap="100">
    <analyzer>
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymFilterFactory" managed="german"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory"
                dictionary="german/german-common-nouns.txt"
                minWordSize="5"
                minSubwordSize="4"
                maxSubwordSize="15"
                onlyLongestMatch="false"
        />
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.WordDelimiterFilterFactory"
                generateWordParts="0"
                generateNumberParts="0"
                catenateWords="1"
                catenateNumbers="1"
                catenateAll="0"
                preserveOriginal="1"
                protected="german/protwords.txt"
        />
        <filter class="solr.GermanNormalizationFilterFactory"/>
        <filter class="solr.SnowballPorterFilterFactory" language="German2" protected="german/protwords.txt"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>

<fieldType name="textExact" class="solr.TextField" positionIncrementGap="100">
    <analyzer>
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymFilterFactory" managed="german"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>
<!--  Setup simple analysis for spell checking  -->
<fieldType name="textSpell" class="solr.TextField" positionIncrementGap="100" omitNorms="true">
    <analyzer type="index">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.DictionaryCompoundWordTokenFilterFactory" dictionary="german/german-common-nouns.txt"
                minWordSize="5" minSubwordSize="4" maxSubwordSize="15" onlyLongestMatch="false"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.StandardFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.StandardTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.ManagedSynonymFilterFactory" managed="german"/>
        <filter class="solr.ManagedStopFilterFactory" managed="german"/>
        <filter class="solr.StandardFilterFactory"/>
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
</fieldType>

<fieldType name="textEdgeNgram1" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
        <tokenizer class="solr.LowerCaseTokenizerFactory"/>
        <filter class="solr.EdgeNGramFilterFactory" minGramSize="1" maxGramSize="15"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.LowerCaseTokenizerFactory"/>
    </analyzer>
</fieldType>

身份证件

谢谢你的帮助:) 你的
Florian

您确定您配置的
schema.xml
正在加载吗?检查您的配置目录中是否有
managed schema
目录-如果有,Solr将不会读取
schema.xml
文件-而是使用managed schema。如果您突然以云模式运行(从管理界面中的名称是
collections
而不是
cores
),配置文件存储在Zookeeper中,而不是从配置目录中的常规位置读取。谢谢您的输入。SOLR在托管Mittwald服务器上运行。因此,我只能上载schema.xml、data-config.xml和solrconfig.xml。在Solr admin中检索模式会给您带来什么?它是否显示了您的新模式?定义的字段列表是否显示您的字段类型?如建议的,检查正在加载的架构。您的solrconfig.xml看起来怎么样?看看这个,谢谢你们。SOLR是为schema.xml配置的。我比较了新旧solrconfig.xml。我添加了这一行:现在它可以工作了。