Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-16496

provide option for Query Elevation Component to bypass filters

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 9.2
    • None

    Description

      The Query Elevation Component respects the fq parameter.

      A document listed in elevate.xml or specified via the elevateIds parameter must match the provided filter queries in order to be included in the result set for a given query. Documents that don't match the filter queries will be excluded regardless of whether they are supposed to be "elevated."

      In some cases, this behavior is desirable; in other cases, it is not. For example, an ecommerce landing page might filter products according to whether they are in stock (fq=inStock:true) but might wish to show certain promoted products regardless of inventory.

      This ticket asks for an elevateFilteredDocs parameter that could be set to true to include elevated documents in the result set regardless of whether they match the provided filter queries. The default would be false, in accordance with the current behavior.

      This parameter would allow elevated documents to "bypass" the provided filters, while keeping the filters in place for non-elevated documents.

      From an implementation standpoint, this parameter could be supported with code in QueryElevationComponent#setQuery that updates the filter queries in similar way to how the main query is updated. When elevateFilteredDocs=true, each filter query would become a boolean "OR" of the original filter query with a second query matching the elevated documents by id.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rseitz Rudi Seitz
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 6h 10m
                  6h 10m