New Developers Working Group
Checklist for Adding Tables and Columns to Evergreen
Here is a list of factors to consider when adding new tables and columns/fields.
Tables
Table creation is included in seed scripts
Table creation is included in schema update
Table is added to fm_IDL.xml
As needed for reporting
As needed for CStore
As needed for PCRUD with appropriate permissions
With appropriate cardinality
With links that reflect relationships with other IDL classes
With columns that are intended for localization flagged as such
Decision regarding whether the table supports logical deletion or true deletion made thoughtfully
PII is handled thoughtfully
Foreign keys are added thoughtfully
With reason for behavior on update
With reason for behavior on delete
With appropriate indexes if cascading updates or deletions are permitted
Foreign keys linking to actor.usr include…
Indexes are added thoughtfully
Appropriate sample data is included in Concerto
Columns
New column does not unnecessarily require a full rewrite of a large table during upgrade
Column creation is included in seed scripts
Column creation is included in schema update
fm_IDL.xml is updated
PII is handled thoughtfully
Foreign keys are added thoughtfully
With reason for behavior on update
With reason for behavior on delete
With appropriate indexes if cascading updates or deletions are permitted
Foreign keys linking to actor.usr include…
Indexes are added thoughtfully
Appropriate sample data is included in Concerto