We fired up a test SSRS service that hasn't run for a couple of months. It appears that it has decided to send all reports where it has missed the schedule (so any report that didn't send since it was turned on).
We obviously don't want this. What would be a good process for stopping this from happening when starting the SSRS service that hasn't been active for a while? Is there a SQL script around that can remove any future scheduled reports?
Obviously an old question, but I ran into this recently.
On SSRS 2017, SSRS uses SQL Agent Jobs to add entries to the Event table of the ReportServer database. These entries have a TimeEntered column to indicate when they were generated.
I added a SQL Agent Job called "SSRS_Clear_Catch_Up_Events" which basically deletes any entries in the Event table that are older than "today". For example:
And I scheduled it to run nightly at 12.01 am.