Report Instance Sweeper In Background jobs
|Knowledge Article Number||000211720|
|Description||The Report API supports the ability to run reports asynchronously and cache their resultsets for later retrieval. The result sets expire after a 24 hour period. And they're stored in an object called ReportInstance (which is not exposed publicly to the customers).
|Resolution||Salesforce has re-used this same functionality for some other features as well. For example, Embedded Report Charts run the reports asynchronously and only refresh when the "report instance" expires (or when a user clicks the refresh button). This allows us to reduce the load on the DB significantly. (Imagine running up to 4 reports for every entity page view!)
Reporting API prevents customers from ever being able to access ReportInstances which are > 24 hours old.The Sweeper is running behind the scenes and hard-deleting old, unaccessible ReportInstances.
This job is usually run as an active system admin user in the Salesforce Organization. System will try to find the active system Admin user or the user who has "Modify All Data" permissions randomly, to run this job.