Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
8.2
-
None
-
None
-
New
Description
I managed to retrieve the groups using the SortedSetDocValuesField in
GroupingSearch by initializing 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?