Project

General

Profile

Actions

Bug #97662

open

When removing translated page from the recycler, deletion goes too far and hard delete content elements related to the default language page

Added by Mathieu Bilodeau over 2 years ago. Updated 5 months ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
DataHandler aka TCEmain
Target version:
-
Start date:
2022-05-19
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
11
PHP Version:
5.3
Tags:
Complexity:
medium
Is Regression:
Sprint Focus:
On Location Sprint

Description

As said in the title, one of our client filled a bug report claiming some content elements were lost while deleting records using the Recycler. We checked the code and found out a way to reproduce this bug with v10.4.27 and v11.5.10.

Here is how to reproduce:

  1. Using a site with multiple languages configured
    1. Default: English
    2. Secondary: French
  2. Create a new page using the default language (ie: English)
  3. Create a text content element in it (or any type of content element)
  4. Create a new translation to this page --> French
  5. Create a new text element for the translation
  6. Test that both languages works fine
  7. Delete the translation, not the content element, to return with only the default language (deleting the french version)
  8. At this point, using the Recycle module, we can see the deleted french translation page
  9. Going back in the Page module, create a new translation of that same page in French again
  10. Add content elements to this new French translation
  11. Using the Recycler module, permanently delete the first (deleted) translation page
  12. When going back to the page module, on the original page, we can witness the latest french content elements are deleted permanently

By tracking every steps of the Recycler, from the delete button to the function TYPO3\CMS\Core\DataHandling\DataHandler\deleteSpecificPage() it became obvious that, when the page deletion occures, the function getDefaultLanguagePageId() will return the value of l10n_parent field and will directly link any tt_content using the uid of the default language page.

Actions #1

Updated by Andreas Kießling over 2 years ago

This bug is massive! We also suffered data loss due to this faulty behavior which tracks back to https://github.com/TYPO3/typo3/commit/4f4b1710458437830a4c82c59d641702dd9bc817 which was apparently merged to 9.5 already

Actions #2

Updated by Kai Sulkowski 10 months ago

  • TYPO3 Version changed from 10 to 11
  • PHP Version changed from 7.4 to 5.3

This bug is really devastating. We emptied our recyclers and a lot of content was irretrievably lost!

Actions #3

Updated by Riccardo De Contardi 8 months ago

Still reproducible on 13.1.0-dev

Actions #4

Updated by Riccardo De Contardi 5 months ago

  • Sprint Focus set to On Location Sprint
Actions

Also available in: Atom PDF