Missing Schema information

Created on 14 July 2017, over 7 years ago
Updated 30 September 2024, 3 months ago

The module does not provide a configuration schema for the Search API processor and the Facets widget provided by the module.

Steps to reproduce

  1. Configure the glossary processor for a Search API index and configure a facet using the Glossary AZ widget.
  2. Install and enable config_inspector module.
  3. Go to Reports > Configuration Inspector.
  4. Search for the configuration of your Search API index. The name should be search_api.index.index_id, where index_id is the id of your index.
  5. In the schema column for the configuration of your index, you should see a number of errors. If you don't use any other module that extends Search API (the configuration of other modules that extend Search API might also result in additional schema errors), the value of the column should be 3 errors with the current schema of the module and Correct once this issue has been fixed.
  6. Click on List for your index config.
  7. Search the page for processor_settings.glossary.glossarytable, which is the first configuration setting used by the processor provided by this module. With the current schema, you should see an error message in the Error column for this setting. The additional config settings of the processor provided by this module should follow in the next rows and also have errors with the current schema of the module. All these errors should be resolved once this issue has been fixed correctly.
  8. Search for the configuration of your Glossary facet. The name should be facets.facet.facet_id, where facet_id is the id of your facet. The process is then similar to checking the Search API index config, only the settings are different. Once the issue is fixed, the value in the Schema column should also be Correct for this config.

Note: If you get an error like variable type is integer but applied schema class is Drupal\Core\TypedData\Plugin\DataType\StringData, one possible explanation is that the schema is still not entirely correct. But Durpal will also take an existing config schema into account when saving the configuration, so another explanation is, that the schema is now correct, but the configuration has not been resaved with the correct schema. This might be the case for integer vs string vs boolean configuration values. If you are unsure, resave the affected configuration and check the report again.

🐛 Bug report
Status

Needs work

Version

4.0

Component

Code

Created by

🇬🇧United Kingdom somersoft

Live updates comments and jobs are added and updated live.
  • Needs manual testing

    The change/bugfix cannot be fully demonstrated by automated testing, and thus requires manual testing in a variety of environments.

Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • 🇩🇪Germany FeyP

    This is still an issue in 8.x-4.x.

    Added STR to the IS, removing tag.

    When I configured the processor to use processor_settings.glossary.grouping_defaults.grouping_other, I got variable type is integer but applied schema class is Drupal\Core\TypedData\Plugin\DataType\StringData for the other two options. So it looks like this still needs to be tweaked a bit. Setting to Needs work, also to possibly convert to an MR?

    Note that there are ways to test the config schema automatically using GitLab CI, if you are okay with using config_inspector as a dependency. For now, leaving "Needs manual testing" tag in place.

Production build 0.71.5 2024