You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by duriku <ku...@gmail.com> on 2019/10/17 10:58:25 UTC

groupingSearch does not return all the groups when using SortedSetDocValuesField

Hi,

I managed to retrive the groups using the *SortedSetDocValuesField* in
*GroupingSearch* by initialising the groupsearch with *SortedSetFieldSource*

The problem is when a document has multiple values in the field
"SortedSetDocValuesField" than not the grouping query does not return all
the groups.

Let me demonstrate it in my example

// indexing, the first object has the category "one" and the second object
has category "two" and "three"

Document doc = new Document();
doc.add(new FacetField("Author", "Bob"));
doc.add(new SortedSetDocValuesField("category", new BytesRef("one")));
indexWriter.addDocument(config.build(taxoWriter, doc));

doc = new Document();
doc.add(new FacetField("Author", "Lisa"));
doc.add(new SortedSetDocValuesField("category", new BytesRef("two")));
doc.add(new SortedSetDocValuesField("category", new BytesRef("three")));
indexWriter.addDocument(config.build(taxoWriter, doc));

// initializing the grouping search
ValueSource vs = new SortedSetFieldSource(groupField);
groupingSearch = new GroupingSearch(vs, new HashMap<>());

// performing the group search
TopGroups groups = groupingSearch.search(searcher, new MatchAllDocsQuery(),
0, 100);


It returns 2 groups only and I would expect 3 groups ("one", "two" and
"three")


*Is it a bug or am I using the API in a wrong way?*


Regards,
Juraj



--
Sent from: https://lucene.472066.n3.nabble.com/Lucene-Java-Developer-f564358.html

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org