10. A system for reference partitioning database objects by lifecycle state, the system comprising: at least one hardware processor; at least one database environment, the database environment supporting triggers and partitioning; at least one application program; and memory storing: a lifecycle metadata framework that: identifies classes in a ragged hierarchy of database objects, identifies at least one class as a root of the hierarchy, identifies, for each non-root class, a lifecycle inheritance function for the class, and identifies, for each parent class-child class pair in the hierarchy, a relation-join query, the relation-join query being a join between tables in the database environment onto which the parent class and child class are persisted, and triggers that use the framework to maintain lifecycle states for non-root database objects, including at least a first trigger invoked after a lifecycle state of a database object in a root class is changed, a second trigger invoked when a non-root database object is inserted, and a third trigger invoked when a non-root database object has a change in parent.
11. The system of claim 10 , wherein the first trigger uses the lifecycle metadata framework to: traverse the hierarchy from the database object in the root class downwards, avoiding cycles; and set a lifecycle state of each child database object reached in the traversal according to the lifecycle inheritance function for a class of the child database object, wherein the child database object is assigned to a partition according to its lifecycle state.