Bug #97662
openWhen removing translated page from the recycler, deletion goes too far and hard delete content elements related to the default language page
0%
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:
- Using a site with multiple languages configured
- Default: English
- Secondary: French
- Create a new page using the default language (ie: English)
- Create a text content element in it (or any type of content element)
- Create a new translation to this page --> French
- Create a new text element for the translation
- Test that both languages works fine
- Delete the translation, not the content element, to return with only the default language (deleting the french version)
- At this point, using the Recycle module, we can see the deleted french translation page
- Going back in the Page module, create a new translation of that same page in French again
- Add content elements to this new French translation
- Using the Recycler module, permanently delete the first (deleted) translation page
- 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.
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
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!
Updated by Riccardo De Contardi 5 months ago
- Sprint Focus set to On Location Sprint