diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index a6d887b4ce2..5034a34a1a5 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -468,6 +468,8 @@ Bug Fixes * SOLR-4744: Update failure on sub shard is not propagated to clients by parent shard (Anshum Gupta, yonik, shalin) + +* SOLR-5039: Admin/Schema Browser displays -1 for term counts for multiValued fields. Other Changes ---------------------- diff --git a/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java b/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java index 6e3bc260b05..69b3177ce95 100644 --- a/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java +++ b/solr/core/src/java/org/apache/solr/handler/admin/LukeRequestHandler.java @@ -596,13 +596,13 @@ public class LukeRequestHandler extends RequestHandlerBase BytesRef text; int[] buckets = new int[HIST_ARRAY_SIZE]; while ((text = termsEnum.next()) != null) { + ++tiq.distinctTerms; int freq = termsEnum.docFreq(); // This calculation seems odd, but it gives the same results as it used to. int slot = 32 - Integer.numberOfLeadingZeros(Math.max(0, freq - 1)); buckets[slot] = buckets[slot] + 1; if (freq > tiq.minFreq) { UnicodeUtil.UTF8toUTF16(text, spare); String t = spare.toString(); - tiq.distinctTerms = new Long(terms.size()).intValue(); tiq.add(new TopTermQueue.TermInfo(new Term(field, t), termsEnum.docFreq())); if (tiq.size() > numTerms) { // if tiq full