You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Paresh Khandelwal <kh...@gmail.com> on 2019/07/09 05:43:48 UTC

Understanding DebugQuery

Hi All,

I tried to get the debug information about the query for my INNER JOIN and
ACROSS JOIN and trying to understand it.

See the query below - 1487 msec
        {
          "responseHeader":{
            "status":0,             "QTime":1487,
            "params":{              "q":"*:*",
              "fq.op":"AND",               "indent":"on",
              "fl":"TC_0Y0_Item_ID",
              "fq":["TC_0Y0_Occurrence_Name:\"6935 style rear MY11+\"",
                "TC_0Y0_ProductScope:xtWNf_fTAaLUgD",
                "{!join to=TC_0Y0_Item_ID
from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id
fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773"],
              "wt":"json",               "debugQuery":"on",
              "group.field":"TC_0Y0_Item_ID", ......
          "debug":{
            "join":{
              "{!join from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id
to=TC_0Y0_Item_ID
fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773":{
                "time":955,
                "fromSetSize":3,
                "toSetSize":14560,
                "fromTermCount":6632106,
                "fromTermTotalDf":6632106,
                "fromTermDirectCount":6632106,
                "fromTermHits":1,
                "fromTermHitsTotalDf":1,
                "toTermHits":1,
                "toTermHitsTotalDf":14560,
                "toTermDirectCount":0,
                "smallSetsDeferred":1,
                "toSetDocsAdded":14560}},
            "rawquerystring":"*:*",
            "querystring":"*:*",
            "parsedquery":"MatchAllDocsQuery(*:*)",
            "parsedquery_toString":"*:*",
            "explain":{
              "AZD1uV0qgj6GxC":"\n1.0 = *:*, product of:\n  1.0 = boost\n
 1.0 = queryNorm\n"},
            "QParser":"LuceneQParser",
            "filter_queries":["TC_0Y0_Occurrence_Name:\"6935 style rear
MY11+\"",
              "TC_0Y0_ProductScope:xtWNf_fTAaLUgD",
              "{!join to=TC_0Y0_Item_ID
from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id
fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773"],
            "parsed_filter_queries":["TC_0Y0_Occurrence_Name:6935 style
rear MY11+",
              "TC_0Y0_ProductScope:xtWNf_fTAaLUgD",
              "JoinQuery({!join
from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id to=TC_0Y0_Item_ID
fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773)"],
            "timing":{
              "time":1487.0,  ......

I am trying to see why fromTermCount is so high when fromSetSize and
toSetSize is less?

Where can I find the details about all the contents of debugQuery and how
to read each component?

Any help is appreciated.

Regards,
Paresh

Re: Understanding DebugQuery

Posted by Charlie Hull <ch...@flax.co.uk>.
Hi Paresh,

There are various tools available for breaking down the Debug query: 
www.splainer.io (disclaimer, I work for OSC who wrote this) and a few 
others - check out section 4 of this post for more 
http://www.flax.co.uk/blog/2018/11/15/defining-relevance-engineering-part-4-tools/

Cheers

Charlie

On 09/07/2019 06:43, Paresh Khandelwal wrote:
> Hi All,
>
> I tried to get the debug information about the query for my INNER JOIN and
> ACROSS JOIN and trying to understand it.
>
> See the query below - 1487 msec
>          {
>            "responseHeader":{
>              "status":0,             "QTime":1487,
>              "params":{              "q":"*:*",
>                "fq.op":"AND",               "indent":"on",
>                "fl":"TC_0Y0_Item_ID",
>                "fq":["TC_0Y0_Occurrence_Name:\"6935 style rear MY11+\"",
>                  "TC_0Y0_ProductScope:xtWNf_fTAaLUgD",
>                  "{!join to=TC_0Y0_Item_ID
> from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id
> fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773"],
>                "wt":"json",               "debugQuery":"on",
>                "group.field":"TC_0Y0_Item_ID", ......
>            "debug":{
>              "join":{
>                "{!join from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id
> to=TC_0Y0_Item_ID
> fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773":{
>                  "time":955,
>                  "fromSetSize":3,
>                  "toSetSize":14560,
>                  "fromTermCount":6632106,
>                  "fromTermTotalDf":6632106,
>                  "fromTermDirectCount":6632106,
>                  "fromTermHits":1,
>                  "fromTermHitsTotalDf":1,
>                  "toTermHits":1,
>                  "toTermHitsTotalDf":14560,
>                  "toTermDirectCount":0,
>                  "smallSetsDeferred":1,
>                  "toSetDocsAdded":14560}},
>              "rawquerystring":"*:*",
>              "querystring":"*:*",
>              "parsedquery":"MatchAllDocsQuery(*:*)",
>              "parsedquery_toString":"*:*",
>              "explain":{
>                "AZD1uV0qgj6GxC":"\n1.0 = *:*, product of:\n  1.0 = boost\n
>   1.0 = queryNorm\n"},
>              "QParser":"LuceneQParser",
>              "filter_queries":["TC_0Y0_Occurrence_Name:\"6935 style rear
> MY11+\"",
>                "TC_0Y0_ProductScope:xtWNf_fTAaLUgD",
>                "{!join to=TC_0Y0_Item_ID
> from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id
> fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773"],
>              "parsed_filter_queries":["TC_0Y0_Occurrence_Name:6935 style
> rear MY11+",
>                "TC_0Y0_ProductScope:xtWNf_fTAaLUgD",
>                "JoinQuery({!join
> from=TC_0Y0_ItemRevision_0Y0_awp0Item_item_id to=TC_0Y0_Item_ID
> fromIndex=collection1}TC_0Y0_ItemRevision_0Y0_awp0Item_item_id:92138773)"],
>              "timing":{
>                "time":1487.0,  ......
>
> I am trying to see why fromTermCount is so high when fromSetSize and
> toSetSize is less?
>
> Where can I find the details about all the contents of debugQuery and how
> to read each component?
>
> Any help is appreciated.
>
> Regards,
> Paresh
>

-- 
Charlie Hull
Flax - Open Source Enterprise Search

tel/fax: +44 (0)8700 118334
mobile:  +44 (0)7767 825828
web: www.flax.co.uk