Bug #85914

Errors in L10nModeUpdater with "l10n_mode = exclude" in pages_language_overlay

Added by Mathias Brodala over 1 year ago. Updated about 13 hours ago.

Status:
Resolved
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2018-08-21
Due date:
% Done:

100%

TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

Given a field in pages_language_overlay marked with 'l10n_mode' => 'exclude' the L10nModeUpdater fails to process all records when upgrading from TYPO3v7 to TYPO3v8. The error:

Child record was not processed

In our specific case the field media was marked as such since editors are not supposed to manage it in translations. (Notice that the field is actually never hidden, see #81348) When running the upgrade wizard, it constantly failed with the mentioned error message but in fact did get further by one record on each run.

While looking into this I noticed that the DataMapProcessor determines if 'l10n_mode' => 'exclude' is set for a field based on DataMapItem::getFromTableName() which is always pages for pages_language_overlay. Thus for the given example above $GLOBALS['TCA']['pages']['columns']['media']['l10n_mode'] is checked instead of $GLOBALS['TCA']['pages_language_overlay']['columns']['media']['l10n_mode'].

After moving the l10n_mode to the TCA of pages instead I noticed that this is reverted on the fly by TcaMigration::migratePageLocalizationDefinitions() which moves the l10n_mode back from pages to pages_language_overlay. So it looks like like it is in fact impossible to set l10n_mode for columns of pages/pages_language_overlay.

In the end the issue could be solved/worked around by dropping l10n_mode completely here but I think that's not how it's supposed to be.


Related issues

Related to TYPO3 Core - Bug #81314: doubled references upon related record change Resolved 2017-05-23

Associated revisions

Revision a0b9ca1e (diff)
Added by Michael Stucki about 13 hours ago

[BUGFIX] Fix language synchronization for inline relations with inline relations

If the language synchronization process is called on an inline
relation within another inline relation when there is more
than one language which should be synchronized, the process
fails with the following exception:

#1486233164: Child record was not processed

The problem happens because of a non-unique cache identifier
which leads to incomplete operation.

Resolves: #81314
Resolves: #85168
Resolves: #85914
Releases: master, 9.5, 8.7
Change-Id: Icbfc96e5dae387b620e917db168e9e14de5f3820
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60722
Tested-by: TYPO3com <>
Tested-by: Georg Ringer <>
Tested-by: Benni Mack <>
Reviewed-by: Daniel Goerz <>
Reviewed-by: Georg Ringer <>
Reviewed-by: Benni Mack <>

Revision 63b03bfc (diff)
Added by Michael Stucki about 9 hours ago

[BUGFIX] Fix language synchronization for inline relations with inline relations

If the language synchronization process is called on an inline
relation within another inline relation when there is more
than one language which should be synchronized, the process
fails with the following exception:

#1486233164: Child record was not processed

The problem happens because of a non-unique cache identifier
which leads to incomplete operation.

Resolves: #81314, #85168, #85914
Releases: master, 9.5, 8.7

Change-Id: Icbfc96e5dae387b620e917db168e9e14de5f3820
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60723
Tested-by: TYPO3com <>
Tested-by: Alexander Vogt <>
Tested-by: Benni Mack <>
Reviewed-by: Benni Mack <>

Revision 84451995 (diff)
Added by Michael Stucki about 9 hours ago

[BUGFIX] Fix language synchronization for inline relations with inline relations

If the language synchronization process is called on an inline
relation within another inline relation when there is more
than one language which should be synchronized, the process
fails with the following exception:

#1486233164: Child record was not processed

The problem happens because of a non-unique cache identifier
which leads to incomplete operation.

Resolves: #81314, #85168, #85914
Releases: master, 9.5, 8.7

Change-Id: Icbfc96e5dae387b620e917db168e9e14de5f3820
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/60724
Tested-by: TYPO3com <>
Tested-by: Robert Vock <>
Tested-by: Christian Eßl <>
Tested-by: Benni Mack <>
Reviewed-by: Robert Vock <>
Reviewed-by: Christian Eßl <>
Reviewed-by: Benni Mack <>

History

#1 Updated by Oliver Hader over 1 year ago

  • Related to Bug #81314: doubled references upon related record change added

#2 Updated by Michael Stucki 9 months ago

  • Status changed from New to Resolved

This bug is a duplicate of #81314. Closing here...

#3 Updated by Benni Mack 9 months ago

  • Status changed from Resolved to Closed

#4 Updated by Gerrit Code Review 13 days ago

  • Status changed from Closed to Under Review

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/60722

#5 Updated by Michael Stucki about 13 hours ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF