Bug if Config Split and Config Ignore are installed

Created on 7 May 2024, 8 months ago

Problem/Motivation

If Config Split is installed, Config Overlay's ConfigTransformLateSubscriber runs with priority -100. If Config Ignore is also installed, ConfigIgnoreEventSubscriber runs before* that, so there can be the situation where Config Ignore removes configuration to be imported as it is in the ignore list and then Config Overlay overlays said configuration, because it is shipped resulting in the configuration not being ignored in the end.

* The priority of the Config Ignore subscriber was recently (at the time of writing) changed to -100 in 🐛 Splits: Ensure config_ignore works for everyone - set default to functional value Needs review , but (presumably due to naming) the subscriber is still run before the Config Overlay one.

Steps to reproduce

  • Have a site with a shipped node type (for example by using Standard profile) and Config Ignore, Config Overlay and Config Split
  • Configure Config Ignore to ignore node types by adding node.type.* to the ignore list
  • Delete a shipped node type
  • Attempt a configuration import

Expected result: The node type is not recreated
Actual result: The node type is recreated. Note that config_overlay.deleted does correctly record the deletion, so if you were to export the configuration prior to the import, the node type would not be re-created, but this circumvents the whole point of Config Ignore.

Proposed resolution

Make sure that the Config Overlay's late subscriber runs before Config Ignore. Due to 🐛 Splits: Ensure config_ignore works for everyone - set default to functional value Needs review this is now easier to achieve. Consider if we also want to make the priorities configurable via settings (just like Config Split and Config Ignore) or not.

🐛 Bug report
Status

Active

Version

2.0

Component

Code

Created by

🇩🇪Germany tstoeckler Essen, Germany

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

Comments & Activities

Production build 0.71.5 2024