[ 
https://issues.apache.org/jira/browse/LUCENE-8019?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16227118#comment-16227118
 ] 

Robert Muir commented on LUCENE-8019:
-------------------------------------

OK, I think thats expected: for such a use case its good to see the low-level 
scorers? I think it also relates to my comment about "climbing" to organize the 
output better, if you think of it as a network you can "climb" via 
scorer.getWeight() to have the weight nodes? And from there you can climb up to 
weight.getQuery() too if needed. The challenge is probably just organizing the 
output to be nice.

> Add a root failure cause to Explanation 
> ----------------------------------------
>
>                 Key: LUCENE-8019
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8019
>             Project: Lucene - Core
>          Issue Type: New Feature
>            Reporter: Mike Sokolov
>         Attachments: LUCENE_8019.patch
>
>
> If you need to analyze the root cause of a query's failure to match some 
> document, you can use the Weight.explain() API. If you want to do some gross 
> analysis of a whole batch of queries, say scraped from a log, that once 
> matched, but no longer do, perhaps after some refactoring or other 
> large-scale change, the Explanation isn't very good for that. You can try 
> parsing its textual output, which is pretty regular, but instead I found it 
> convenient to add some boolean structure to Explanation, and use that to find 
> failing leaves on the Explanation tree, and report only those.
> This patch adds a "condition" to each Explanation, which can be REQUIRED, 
> OPTIONAL, PROHIBITED, or NONE. The conditions correspond in obvious ways to 
> the Boolean Occur, except for NONE, which is used to indicate a node which 
> can't be further decomposed. It adds new Explanation construction methods for 
> creating Explanations with conditions (defaulting to NONE with the existing 
> methods).
> Finally Explanation.getFailureCauses() returns a list of Strings that are the 
> one-line explanations of the failing queries that, if some of them had 
> succeeded, would have made the original overall query match.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to