Solr 7.5 Limiting Facet с определенными терминами нельзя заказать по счету? - PullRequest
0 голосов
/ 19 января 2019

Я бы хотел использовать поле location.authorIds для авторов таблицы Solr, но также ограничить его определенными терминами.

Я сделал это, как и в учебниках по Solr 7.5, http://lucene.apache.org/solr/guide/7_5/faceting.html,, но результаты, возвращенные из Solr , не сортировались по счету, кто-нибудь знает почему?

Вот мой запрос Solr:

http://127.0.0.1:8080/solr/authors/select?q=*:*&fl=handle&fq=search.resourcetype:2&start=0&rows=0&facet.field={!terms=27J001,J027,J132,J107,J225,J141,J092,J191,J224,J198,J062,J051,J143,J208,J119,J031,J057,J030,J134,J144,J158,J058,J181,J222,J153,J002,J203,J012,J045,J014,J186,J011,J064,J065,J147,J112,J192,J167,J066,J135,J096,J082,J075,J009,J193,J217,J168,J121,J059,J034,J213,J148,J169,J133,J013,J161,J093,J097,J162,J021,J170,J171,J083,J187,J178,J077,J194,J078,J098,J067,J047,J052,J172,J005,J113,J079,J099,J114,J100,J115,J068,J173,J084,J214,J101,J060,J025,J122,J195,J188,J196,J116,J102,J159,J197,J029,J094,J123,J053,J043,J189,J124,J015,J085,J174,J004,J044,J182,J088,J007}location.authorIds&facet=true&facet.sort=count

Вот результаты, вы можете видеть, что они не отсортированы по количеству.

enter image description here

1 Ответ

0 голосов
/ 21 января 2019

После того, как я выполнил тестирование и отладку кода, я ясно увидел, что это ошибка в коде.

org.apache.solr.request.SimpleFacets#getListedTermCounts

for (String term : terms) {    
      int count = searcher.numDocs(ft.getFieldQuery(null, sf, term), parsed.docs);
      res.add(term, count);
}

Что явно не так, поскольку он просто перебирает список и предоставляет счетчикив точном порядке того, что вы указали в параметрах запроса.

Я создал проблему Solr - https://issues.apache.org/jira/browse/SOLR-13156 - и предоставил исправление.Это было совершено и скоро будет доступно в Solr

...