在solr组搜索中执行group.format和group.main时是否不处理group.offset?

时间:2015-11-13 05:34:13

标签: solr lucene

我已将document_type_id(可能的值1,2,3,4)字段编入索引。

我想在solr中进行分页,这样我的第一页就可以从每种文档类型中找出2个文档。

所以我已经在像这样的文档字段中进行了分组

fq=document_type_id:(1 2 3 4)&group=true&group.field=document_type_id&group.limit=2&group.offset=0

这导致了4个不同组中的8个文档。这很酷,现在如果我想将它放在一个列表中我做

fq=document_type_id:(1 2 3 4)&group=true&group.field=document_type_id&group.limit=2&group.offset=0&group.format=simple 

这也很有效。

现在,对于我的第二页,如果我设置group.offset=2,则分组结果很好但是当我group.format=simple时,结果再次与第一页相同。

即无论group.offset的值是多少,如果您应用group.format=simplegroup.main=true

,则返回始终相同

1 个答案:

答案 0 :(得分:0)

我认为这是不可能的:(

Github Solr Source

//From TopGroupsShardRequestFactory class in Solr

// If group.format=simple group.offset doesn't make sense
    Grouping.Format responseFormat = rb.getGroupingSpec().getResponseFormat();
    if (responseFormat == Grouping.Format.simple || rb.getGroupingSpec().isMain()) {
      sreq.params.remove(GroupParams.GROUP_OFFSET);
    }