Don't leave orphaned data on deleting Projects, Translation Sets or Glossaries #1846
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
As described in #1845, when a user deletes a Project, a Translation Set or a Glossary, many orphaned data is left behind, forever.
Some of this happens because of a wrong data passed:
delete_many( array( something_id, $id ) )
(wrong)delete_many( array( something_id => $id ) )
(correct)Some of this happens because of a change in the codebase from a loop with delete childs to
delete_many()
, that is actually quicker, but left behind the child items.Solution
Include these data deletions in the current
delete()
methods.Fixes #1845