Forum OpenACS Development: Response to Can't delete unmounted ETP instance

Posted by Don Baccus on
Jowell ... personally I lobbied for systematic use of "on delete cascade" when the issue was originally discussed in the context of ACS 4 Classic.  Folks at aD disagreed and the tradition of "by hand" deleting of rows in related tables was continued.  This always led to problems with deleting stuff in ACS 3 as folks continuously forgot to add delete statements to "nuke-user" and other content-deleting scripts and it's led to similar problems in ACS 4, especially with drop scripts.

Systematic use would greatly simplify the maintenance of drop scripts and the like.  It is part of SQL's referential integrity system for good reason.

My comment, then, is that the current mishmash where the feature is used  in some places, but not systematically, adds to the general PITA nature of trying to fix bugs in drop scripts or anything else that deletes content.

Unfortunately changing the core to use SQL's full referential integrity features would be difficult due to the number of packages, including packages already written and being used on clint sites by Early Achievers.  They'd all have to be modified.

BTW - glad to see you posting here again!