How Circulations are Aged

The action.aged_circulation table is for statistical reporting while breaking the link to the patron who had the item checked out.

Circulations get moved under three circumstances in stock Evergreen:

  1. A patron is deleted. This moves all of the patron’s circulations from action.circulation to action.aged_circulation
  2. A row or row(s) in action.circulation are deleted. The action.age_circ_on_delete trigger moves deleted action.circulations to action.aged_circulation.
  3. The action.purge_circulations function is run. This function is meant to be run periodically to enforce patron privacy. It’s behavior is controlled by two internal flags: history.circ.retention_age and history.circ.retention_count.


The purge_circulations function is often run from a cron via the purge_circulations.srfsh script.


The purge_circulations function will take a long time to run for the first time on a system that has had much activity. The srfsh script will likely time out before the database function finishes and nothing will get moved.