1

We see certain documents in WCS SOLR response that are not relevant for given search keyword, but are part of the current customer/site catalog and categories. I do see SOLR debugging information, parser queries, filters, etc.. but trying to know if it's possible to know why a document was included in the response. I do see explain string and haven't spent time understanding whole algorithm behind it, would like to see if there is a quick way of knowing why the document was in the result/response list. This may help identifying catalog/categories data structure issue or any bugs in our SOLR implementation.

Is it possible to see the debug information at each returned document level in the response, if that helps understanding how SOLR is configured and working in the environment?

Thanks,

cnu
  • 461
  • 8
  • 19

1 Answers1

2

When you pass debugQuery=true in the request you can see in the debug/explain node of the response the reason for the score of each document. The information will look more or less like this:

...
"debug": {
  ...
  "explain": {
    "id:1": "info about the score for document 1",
    "id:2": "info about the score for document 2",
    "id:3": "info about the score for document 2",
    "id:4": "info about the score for document 4",
    ...
  }
}

The information is not exactly easy to parse and decipher but it might be a good place to start.

I explain in this blog post more about how to read the information in the explain section: https://library.brown.edu/DigitalTechnologies/understanding-scoring-of-documents-in-solr/

Hector Correa
  • 26,290
  • 8
  • 57
  • 73
  • Is this specific to a SOLR version since I don't see similar information in Solr 4.10.3 bundled with WebSphere Commerce? – cnu Apr 13 '19 at 03:03
  • I know this is available in Solr 4....but I am not sure about the WebSphere Commerce. – Hector Correa Apr 13 '19 at 15:32
  • Are you directly querying the solr-instance or going via some ibm urls provided? The latter would not necessarily guarantee that your additional parameter is passed to the actual solr query. You could also try to directly set the debugQuery=true parameter within the solrconfig.xml on the respective request handler. – awagen Apr 13 '19 at 17:40
  • I am querying solr instance directly by passing debugQueery=true in the URL. – cnu Apr 14 '19 at 02:49
  • @HectorCorrea, sure. I will check our configuration again to see what's going on. – cnu Apr 14 '19 at 02:49