【问题标题】:solrj very strange error with query resultsolrj 查询结果非常奇怪的错误
【发布时间】:2013-08-06 19:07:50
【问题描述】:

您好,我在使用 solr 查询结果时遇到了奇怪的错误。 现在我添加一个简单的 txt 文件,其中包含一个单词“anna”,重新启动 solr 服务器,然后尝试搜索该文档。但我没有任何结果?但是如果我添加另一个内容为“anna”的文档,然后重新启动 solr。我只有一个结果。所以 solr 中有一个错误,或者我不知道什么?

我正在使用卢克,一切都很好,我有两个索引文档,当我使用卢克尝试这个查询时,一切都很好,我得到了 2 个结果。我也在检查我的 for 循环,但一切都很好。所以也许 solrj 有问题?我正在使用 solr-core 和 solrj ver 4.4.0。这是我的代码:

  QueryResponse qr;
        try {
            qr = fs.execute(solrServer);



            System.out.println("QYERY RESPONSE : " + qr);

            for (Entry<String, Object> r : qr.getResponse()) {
                System.out.println("RESPONSE: " + r.getKey() + " -> " + r.getValue());
            }
            SolrDocumentList dl = qr.getResults();
            System.out.println("--RESULT SIZE:[ " + dl.size() );


        } catch (SolrServerException e) {
            e.printStackTrace();
        }

这很奇怪,因为这是我的系统输出:

{numFound=2,start=1,docs=[SolrDocument{file_id=9882, 文件名=luk-search2.txt,文件创建用户=-1,文件部门=10, file_mime_type=text/plain, file_extension=.txt, file_parents_folder=[5021, 4781, 341, -20, -1], 版本=1442647024934584320}]}

找到的数字是 2,但我只有一个结果,所以 solrj 库中存在错误?

【问题讨论】:

    标签: solr solrj solr4


    【解决方案1】:

    在查看响应时,它显示了一个正在传入的start=1 值。start 的默认值是0,请参阅CommonQueryParameters 以供参考。由于您的查询只有两个结果,并且起始值从零开始,因此通过指定 start=1 您只要求第二个文档。将此参数更改为start=0,您将返回两个结果。

    【讨论】:

      猜你喜欢
      • 2018-09-01
      • 2015-08-27
      • 2017-11-06
      • 2013-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多