Solr 3.5仅搜索索引文件的一部分

时间:2013-08-02 15:35:30

标签: solr

所以,我使用solr 3.5索引一些大文件(~30,000行)。每个文件的内容都被索引为字段filecontents。按名称搜索文件显示此索引字段包含文件的完整内容。

但是,如果我在此字段中查询某个字词,例如使用filecontents:fred,那么只有当该字词出现在每个文件的前2000行左右时,我才会受到影响。因此,例如,如果术语“fred”在第200行,我会受到打击,但如果它只在文件的第4000行,则不会。

知道为什么没有正确搜索其余的filecontents索引,或者我如何进一步调查这个?我已经在下面附加了schema.xml文件的相关部分。有趣的是,使用solr 4.3我们没有看到同样的问题。

       <fieldType name="default" class="solr.TextField">
        <analyzer type="index">
            <tokenizer class="solr.StandardTokenizerFactory" />
            <filter class="solr.ClassicFilterFactory" />
            <filter class="solr.LowerCaseFilterFactory" />
            <filter class="solr.StopFilterFactory" />
        </analyzer>
        <analyzer type="query">
            <tokenizer class="solr.StandardTokenizerFactory" />
            <filter class="solr.ClassicFilterFactory" />
            <filter class="solr.LowerCaseFilterFactory" />
            <filter class="solr.StopFilterFactory" />
        </analyzer>
    </fieldType> 

<field name="filecontents" type="default" indexed="true" stored="true" multiValued="true" omitNorms="false" termVectors="false"/>

1 个答案:

答案 0 :(得分:1)

将solrconfig.xml中的<maxFieldLength>更改为更大的数字。 <maxFieldLength>位于<mainIndex><indexDefaults>