Hi all, I found an error and stack trace occurred when I set a 'TextField' type field to a 'group.field' parameter and got group facets. According to the manual,we can set 'StrField' or 'TextField' type field to 'group.field' parameter. (See https://solr.apache.org/guide/solr/latest/query-guide/result-grouping.html) So I just tried to set a 'TextField' type field to the 'group.field' parameter. But the error occured.
The reproduction procedure using sample_techproducts is as follows. 1. Modify solrconfig.xml to show facets. - Added 3 lines below the rows parameter <requestHandler name="/select" class="solr.SearchHandler"> <lst name="defaults"> <str name="echoParams">explicit</str> <int name="rows">10</int> <str name="facet">on</str> <!-- added -> <str name="facet.mincount">1</str> <!-- added -> <str name="facet.limit">-1</str> <!-- added -> </lst> - Removed comments("<!--", "-->") and enabled the following <lst name="invariants"> <str name="facet.field">cat</str> <str name="facet.field">manu_exact</str> <str name="facet.query">price:[* TO 500]</str> <str name="facet.query">price:[500 TO *]</str> </lst> 2. Modify managed-schema to define the manu_keyword field. The type of manu_keyword field is Text.Field using only KeywordTokenizer. - Add the following 7 lines just before the "</schema>" <fieldType name="text_keyword" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="solr.KeywordTokenizerFactory"/> </analyzer> </fieldType> <field name="manu_keyword" type="text_keyword" stored="true" indexed="true" docValues="false" multiValued="false" /> <copyField source="manu" dest="manu_keyword"/> 3. Indexing(re-index) 4. Execute this query 'http://localhost:8983/solr/techproducts/select?fl=id,name&q=solr+memory&gro up=true&group.field=manu_keyword&group.facet=true' 5. The following error appears. "msg":"unexpected docvalues type SORTED_SET for field 'manu_keyword' (expected=SORTED). Re-index with correct docvalues type.", "trace":"java.lang.IllegalStateException: unexpected docvalues type SORTED_SET for field 'manu_keyword' (expected=SORTED). Re-index with correct docvalues type. at org.apache.lucene.index.DocValues.checkField(DocValues.java:218) ... No error occurred when using 'http://localhost:8983/solr/techproducts/select?fl=id,name&q=solr+memory&gro up=true&group.field=manu_exact&group.facet=true' In addition, even if I re-index, it does not solve. I guess only 'StrField' type field are allowed in the 'group.field' parameter. I have confirmed that this error occurs on Solr 8.11 and Solr 9.0. I would be grateful if anyone could give me useful information.