无效的 UUID 字符串 solr
Invalid UUID String solr
我正在使用 solr 为大量文档编制索引。我的要求之一是每个文档都需要有一个唯一的 id,我尝试使用 Unique Key 的方式来实现。但是,当我尝试使用 "post" 命令正常索引文档时,我得到很多
<response>
<lst name="responseHeader"><int name="status">400</int><int name="QTime">15</int></lst><lst name="error"><lst name="metadata"><str name="error-class">org.apache.solr.common.SolrException</str><str name="root-error-class">org.apache.solr.common.SolrException</str></lst><str name="msg">Invalid UUID String: '/Volumes/filePlace/file1.html'</str><int name="code">400</int></lst>
</response>
在输出中,没有文档被索引。我该如何解决这个问题?
我使用的post命令是常规语法:
post -c NewCore .
在哪里。是包含所有文件的当前文件夹。
我发现我的错误是我使用 solr 中包含的 post
工具为富文档编制索引。但是,当使用 post
索引 html 等富文档时,HTTP POST 请求需要将 literal.id
指定给某些内容,否则它不会 运行 . post
工具自动将 literal.id 设置为文件位置,并且由于字段 id
设置为 UUID 类型,这会导致错误。我现在已将 managedschema 文件中的 id
切换为字符串类型,并决定使用单独的 post 命令,例如
post -c NewCore -params literal.id=55 /Volumes/mainVolume/thingy.html
并在索引之前为每个富文档分配一个 ID。
我正在使用 solr 为大量文档编制索引。我的要求之一是每个文档都需要有一个唯一的 id,我尝试使用 Unique Key 的方式来实现。但是,当我尝试使用 "post" 命令正常索引文档时,我得到很多
<response>
<lst name="responseHeader"><int name="status">400</int><int name="QTime">15</int></lst><lst name="error"><lst name="metadata"><str name="error-class">org.apache.solr.common.SolrException</str><str name="root-error-class">org.apache.solr.common.SolrException</str></lst><str name="msg">Invalid UUID String: '/Volumes/filePlace/file1.html'</str><int name="code">400</int></lst>
</response>
在输出中,没有文档被索引。我该如何解决这个问题?
我使用的post命令是常规语法:
post -c NewCore .
在哪里。是包含所有文件的当前文件夹。
我发现我的错误是我使用 solr 中包含的 post
工具为富文档编制索引。但是,当使用 post
索引 html 等富文档时,HTTP POST 请求需要将 literal.id
指定给某些内容,否则它不会 运行 . post
工具自动将 literal.id 设置为文件位置,并且由于字段 id
设置为 UUID 类型,这会导致错误。我现在已将 managedschema 文件中的 id
切换为字符串类型,并决定使用单独的 post 命令,例如
post -c NewCore -params literal.id=55 /Volumes/mainVolume/thingy.html
并在索引之前为每个富文档分配一个 ID。