no results when selecting "missing items" in a dropdown list with more than 60 values

Created on 1 March 2023, over 1 year ago

Problem/Motivation

Imagine a facet displayed as a dropdown list. This facet has the "Show missing" option enabled. If you select the "missing items" entry of this list and there are more than 60 other values in the list, then the result is an empty result page.

Steps to reproduce

Starting with a functional Search API config, create an index on a content type which holds more than 60 nodes. At least 61 nodes should have a different value in the field you want to link to the facet, and at least 1 node should have no value in this field.

Create a search view as a page to display the results, then create the facet as a dropdown widget. Check the "Ensure that only one result can be displayed" and "Show missing" options and add the facet to a block that will be displayed on the search page.

Navigate to the search page and select the "missing items" entry (by default a single "!" character). The URL in the address bar should look like this:
https://mysite.xyz/myview?f[0]=myfield%3A!(value1|value2|value3|...|valueN)
and the content region of the page is empty.

Edit your nodes until you have less than 60 values remaining in the facet list. Now when you select the "missing items" entry, the result page works as expected.

Proposed resolution

Is there a hard-coded value somewhere in the module that limits the number argument values or am I missing something?

Remaining tasks

User interface changes

API changes

Data model changes

🐛 Bug report
Status

Active

Version

3.0

Component

Code

Created by

🇨🇭Switzerland boregar

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024