Allow config items to have database driver overrides

Created on 24 September 2024, about 2 months ago

Problem/Motivation

The config items (yaml files) from the views module are specific to the database tables that the view is based on. As MongoDB stores entity instances in JSON documents, instead of the relational database system that the by Drupal core supported databases are using, has the result that those config items (views) are different compared to those for a relational database. This was not a big problem. The MongoDB database driver would change the yaml file for the view before it was saved to the database. Now that does not work any more, because we have recipies. When you install a recipe, Drupal will check if you have one or more config items from the recipe already installed on your site. If so, then the recipe install process will check if you have changed that config item. With view config items on MongoDB that will have happend. When the config item on file is not the same to the one loaded on your site, the recipe install process will stop with an error that you have changed the config item. This has the result that recipes with views on MongoDB do not work.

Proposed resolution

Allow config directories in a module, profiles, themes and recipes to have a subdirectory with the databse driver name that contains the database specific overrides for a number of config items for the given module, profiles, themes or recipes.

An example is the dblog module where the watchdog view has a database specific override for the MongoDB.

Remaining tasks

TBD

User interface changes

None

Introduced terminology

TBD

API changes

None

Data model changes

None

Release notes snippet

TBD

📌 Task
Status

Active

Version

11.0 🔥

Component

base system

Created by

🇳🇱Netherlands daffie

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

Comments & Activities

Production build 0.71.5 2024