• Oliver Hader's avatar
    [BUGFIX] Keep language reference for children using l10n_mode=exclude · 20715ad2
    Oliver Hader authored and Benni Mack's avatar Benni Mack committed
    Having 1:n child associations being defined as l10n_mode=exclude on their
    parent side, currently leads to deleting and recreating the child entity
    (re-synchronization). For composite relations (children can only exist
    with their parent - usually accessed through their parent as aggregate
    root) this is "okay" in terms of domain-driven design.
    
    However having large data-sets leads to performance impact during the
    re-synchronization process.
    
    In the current scenario children processed with l10n_mode=exclude did not
    have any pointer to their language origin (due to l10n_parent not being
    set). This change copies these children and applies the same values as
    used for localizations - without actually invoking the localization
    process.
    
    For l10n_mode=exclude children this means, the sys_language_uid and
    l10n_parent values are now set - which have been empty before.
    
    Resolves: #87640
    Releases: master, 9.5
    Change-Id: I3d862f536603b9e49c7a5d3205ccfc2b4e2e9532
    Reviewed-on: https://review.typo3.org/59667
    
    
    Tested-by: default avatarTYPO3com <noreply@typo3.com>
    Reviewed-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
    Tested-by: Benni Mack's avatarBenni Mack <benni@typo3.org>
    20715ad2