Referential Integrity needs to be considered!

Referential Integrity can eliminate ‘bad pointers’ where the deletion of a referenced record causes an invalid table lookup on another table.

As an SD, we recommend that part of the development process definition-of-done include:

  • launching the Referential Integrity application
  • executing the Reload Data list form action
  • for any results applicable to the work being done, choose to Enforce or Turn Off referential integrity for the relevant table lookups.
  • deliver the Referential Integrity changes via a metadata manifest and promote to production

When set to Enforced, this will prevent your customers from inadvertently being able to delete referenced records by accident. Unwinding an accidental deletion, if possible, is difficult and time consuming and usually requires administrator intervention. Protect against that possibility by making an intentional decision to configure Referential Integrity for all your table lookups.

Hello - we have had the inability to move Referential Integrity in our patching so we are unable to enforce it: #434881

Should all table lookups have referential integrity activated? If so, is there a setting or way to have it enforced by default?

TLs should have it activated if you don’t want to risk creating a bad pointer to another record by deleting that other record. I’ve seen a few use cases where it’s OK to do that where the record being pointed to might be short-lived and it going away is expected, but they’re the minority.

There is no way to enforce it by default.

1 Like