Closed mike-hogan closed 1 year ago
Tasks:
deleted
flag. Should each DataRecord just have a flat metadata field? And deleted
would be one of those fields. I am worried about adding a growing number of columns to every table to support: createdBy, isDeleted, tags, etc.
Support deletion of a record and cascade the deletion along all its has-* relationships
What to do with any references-* relationships it might be in?
If I have a Booking referencing a Customer, and I delete the Customer, what should happen to the Booking?
If we support soft deletion, the reference remains intact. If we do hard deletes, we need to loop around all referenced data and null, it probably.
Soft deletion "feels" better, but it does bring up GDPR issues around the right to be forgotten etc. There are ways to manage that like tagging PII fields and masking them on deletion, so still feels like the best approach.