PostgreSQL

Long-running transactions prevent contiguous MultiXact member space reclamation

warning
Resource ContentionUpdated Mar 4, 2026
Technologies:
How to detect:

PostgreSQL manages MultiXact members as contiguous, sequentially allocated space. Vacuum can only reclaim member space in contiguous segments. A single long-running transaction holding an old MultiXact prevents vacuum from reclaiming newer, unused member spaces, significantly exacerbating impact when mixing long-running and short-lived transactions.

Recommended action:

Avoid mixing long-running transactions with high-frequency short transactions during bulk operations. Monitor long_running_transactions metric and investigate transactions holding old MultiXacts. Consider splitting long-running operations into smaller batches. Ensure backfill processes use appropriately scoped transactions.