0

有人知道如何在使用 Solr 更新后检查文档是否被很好地索引?

在调用 SolrServer 的 add() 方法后,我尝试读取响应,但它似乎不起作用:

SolrInputDocument doc = new SolrInputDocument();
/*
 * Processing on document to add fields ...
 */
UpdateResponse response = server.add(doc);


if(response.getStatus()==0){
System.out.println("File Added");
}
else{
System.out.println("Error when Adding File");
}

在 javadoc 中,无法知道 add() 方法返回什么。它总是返回 0 吗?在这种情况下,在更新后检查文件是否索引良好的最佳方法是什么?

感谢

科伦廷

4

2 回答 2

1

您需要执行提交才能看到添加的文档。
添加只是将文档添加到索引中。
但是,除非您提交,否则该文档仍不会作为搜索结果返回。
当您将文档索引到 solr 时,您所做的任何更改(添加/删除/更新)都不会出现,直到您运行 commit 命令。

A commit operation makes index changes visible to new search requests.

还要检查以更高性能方式执行的 软提交。

于 2013-07-04T04:36:05.120 回答
1

为了补充 Jayendra 的答案,您可能会尝试再次索引现有文档。例如,测试不同的索引时间链的分析器。

在这些情况下,如果没有内容更改,您可能无法推断文档是否再次被索引。

在这种情况下,_version_现场可能会来救援。_version_当文档再次被索引时,字段总是改变它的值。请在此处参考我的答案以了解有关_version_字段的更多信息。

于 2018-09-06T15:19:28.890 回答