Problem/Motivation

Field translations are not being removed from the config table when a field is removed from a view.

To reproduce, add a field to a view. Create a translation of this field. Now remove the field from the view.

If you then `select * from config where name = 'views.view.yourview' - you'll see the translations for the field you have removed still exist in config, for languages where the field has been translated.

In my example view, it's using a table layout, and I have additional columns in the table, from the old translation data, that should not exist.

I marked this as Major as translated field config is being left in the config table for a translated field for a view.

Proposed resolution

User interface changes

None

API changes

Data model changes

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

willwh created an issue. See original summary.

willwh’s picture

Issue summary: View changes
willwh’s picture

Issue summary: View changes
willwh’s picture

Status: Active » Needs review
FileSize
918 bytes

filterNestedArray is a recursive function. This patch addresses the $changed variable being incorrectly set.

I've confirmed this properly removes translated content config from fields, when they are removed from a view.

Lendude’s picture

Version: 8.2.x-dev » 8.1.x-dev
Status: Needs review » Needs work
Issue tags: +Needs tests

Nice find! This will still need tests though.

As a bug fix this can go against 8.1.x

alexpott’s picture

Getting deja-vu... This is a duplicate of something... digging to find it.

alexpott’s picture

Issue tags: +Configuration system
alexpott’s picture

Status: Needs work » Closed (duplicate)
Related issues: +#2750167: Config translation synchronization fails