Queries about cleanup of the Hangfire.job table

Hi,

I’m working with our DBA to clear out a couple of our overloaded tables and some of the Hangfire tables were highlighted as they’ve grown to over 20GB in size. I’m aware that successful and deleted jobs have a column set called ExpiresAt and these are then purged from the table but I had a few questions about what actually handles the cleanup of this data.

The vast majority of this data are records with no ExpiresAt date set so they’re just left alone. We are looking to set up Elastic jobs to set the ExpiresAt date so that these will be cleared up but our DBA had asked me how often HangFire’s cleanup job runs and what it actually does and I was hoping someone here could clarify this for (and if it’s configurable in some way).

Thanks.