Bug #91881
Updated by Christian Kuhn over 4 years ago
This is a regression introduced by #89555 in v10 & master.
Reproduce:
* Create a sys_workspace record on pid 0
* Delete this sys_workspace record on pid 0
-> The database throws a massive party with all live records of all tables as guests :)
Goal:
When deleting a sys_workspace record, all records of this workspace should be deleted (soft/hard delete, depending on table TCA).
Issue:
With #89555 the restrictions of the underlying query that should find and delete all records of this workspace has been changed to also include all live records of all tables. Luckily, this does not lead to delete hazard since a check at a later point in version_clearWSID() prevents live records from being deleted within workspaces. That check however creates a log entry for each live invalid party guest ... and it happily tells the user about each one with a notice in the top right corner. That corner is too small for many thousands guests ;)
Fix:
Add a proper database restriction again. Support that with some functional test to verify correct rows are deleted.