SOLR 单元格是否以任何方式限制导入 solr.TextField 的字符数量?

Does SOLR cell in any way limit the amount of characters imported into a solr.TextField?

我正在使用带有 Windows 命令提示符的 curl 命令使用 Solr Cell 索引一个大 HTML 页面,如下所示:

curl http://localhost:8987/solr/myexample/update/extract -d @test.html -H 'Content-type:html'

我发现在查询时我的字段中缺少数据(文本)(query?q=*:*&q.op=OR&indent= true) 它们在 SOLR 的管理菜单中。 示例:我有一堆 lorem ipsum

标签,但在我的 HTML 页面末尾,我有另一个段落标签 Hello world,这不会显示在SOLR 管理员。

我在 old wiki.

上找到了以下内容

Large individual fields.

It is possible to store megabytes of text in one record. These fields are clumsy to work with. By default the number of characters stored is clipped.

它没有详细说明如何防止文本被剪切,也就是说,如果这就是导致问题的原因,因为在剪切之前我什至无法在字段中获取 MB 的数据.

schema.xml

    <field name="main" type="text_general" indexed="true" stored="true"/>
    <field name="div" type="text_general" indexed="true" stored="true"/>
    <field name="doc_id" type="string" uninvertible="true" indexed="true" stored="true"/>
    <field name="date_pub" type="pdate" uninvertible="true" indexed="true" stored="true"/>
    <field name="p" type="text_general" uninvertible="true" indexed="true" stored="true"/>
    <field name="_text_" type="text_general" indexed="true" stored="true" multiValued="true"/>
    <copyField source="*" dest="_text_"/>

solrconfig.xml

  <requestHandler name="/update/extract"
    class="org.apache.solr.handler.extraction.ExtractingRequestHandler">
    <lst name="defaults">
      <str name="lowernames">true</str>
      <str name="uprefix">ignored_</str>
      <str name="fmap.content">content</str>
      <str name="capture">div</str>
      <str name="fmap.div">div</str>
      <str name="capture">h1</str>
      <str name="fmap.h1">h1</str>
      <str name="capture">h2</str>
      <str name="fmap.h2">h2_t</str>
      <str name="capture">p</str>
      <str name="fmap.p">p</str>
    </lst>
  </requestHandler>

Solr 版本:8.10.1

SOLR 单元似乎没有限制字符,但是,不要问我为什么,罪魁祸首是我在下面使用的 curl 命令:

curl http://localhost:8987/solr/myexample/update/extract -d @test.html -H 'Content-type:html'

解决方案: 以下命令提取所有文本而不截断任何文本(将路径替换为 post.jar 和 HTML 文件所在的位置) :

java -jar -Dc=myexample -Dauto example\exampledocs\post.jar example\exampledocs\sample.html

值得注意的是,这些是用于命令提示符的 Window 命令。