[
https://issues.apache.org/jira/browse/LUCENE-9444?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17200529#comment-17200529
]
Ankur edited comment on LUCENE-9444 at 9/23/20, 4:34 AM:
---------------------------------------------------------
Thanks [~mikemccand], I incorporated the code review feedback and
* Replaced {{assert} with {{IllegalArgumentException}} for invalid inputs
* Added javadoc notes explaining that returned _FacetLabels_ may not be in the
same order in which they were indexed.
* Enhanced {{TestTaxonomyFacetCount.testRandom()}} method to exercise the API
to get facet labels for each matching document.
* Here is the updated PR -
https://github.com/apache/lucene-solr/pull/1893/commits/75ff251ebac9034c93edbb43dcf5d8dd0f1058ae
was (Author: goankur):
[~mikemccand], I incorporated the code review feedback and
* Replaced {{assert} with {{IllegalArgumentException}} for invalid inputs
* Added javadoc notes explaining that returned _FacetLabels_ may not be in the
same order in which they were indexed.
* Enhanced {{TestTaxonomyFacetCount.testRandom()}} method to exercise the API
to get facet labels for each matching document.
* Here is the updated PR -
https://github.com/apache/lucene-solr/pull/1893/commits/75ff251ebac9034c93edbb43dcf5d8dd0f1058ae
> Need an API to easily fetch facet labels for a field in a document
> ------------------------------------------------------------------
>
> Key: LUCENE-9444
> URL: https://issues.apache.org/jira/browse/LUCENE-9444
> Project: Lucene - Core
> Issue Type: Improvement
> Components: modules/facet
> Affects Versions: 8.6
> Reporter: Ankur
> Priority: Major
> Labels: facet
> Attachments: LUCENE-9444.patch, LUCENE-9444.patch,
> LUCENE-9444.v2.patch
>
> Time Spent: 1h 40m
> Remaining Estimate: 0h
>
> A facet field may be included in the list of fields whose values are to be
> returned for each hit.
> In order to get the facet labels for each hit we need to
> # Create an instance of _DocValuesOrdinalsReader_ and invoke
> _getReader(LeafReaderContext context)_ method to obtain an instance of
> _OrdinalsSegmentReader()_
> # _OrdinalsSegmentReader.get(int docID, IntsRef ordinals)_ method is then
> used to fetch and decode the binary payload in the document's BinaryDocValues
> field. This provides the ordinals that refer to facet labels in the
> taxonomy.**
> # Lastly TaxonomyReader.getPath(ord) is used to fetch the labels to be
> returned.
>
> Ideally there should be a simple API - *String[] getLabels(docId)* that hides
> all the above details and gives us the string labels. This can be part of
> *TaxonomyFacets* but that's just one idea.
> I am opening this issue to get community feedback and suggestions.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]