If control is running for long hours we can just kill Assure, without database corruption. The rules will still be there. The deletion of results or reports has been happening in batched transactions, so most of what has happened will remain deleted. The last batch will rollback.
To reduce the time being spent deleting old executions of the control points of the entity. You would do the following:
1) Make a schedule calendar called "Never Run"; add a schedule event, recurring, for a day of the week (say Sunday); add an exclude day event, also recurring, also Sunday, and save it.
2) Edit the entity, go to the storage tab. Change the retention policy to 1 day, and choose "Separate Process" for Retention Processing, and choose the "Never Run" schedule calendar from step 1. Save the entity.
3) The above makes it so the entity won't be part of regular shared retention. At the server-util command line, run applyretention_standalone.sh with argument -control "<name_of_this_entity>". This will chug away deleting almost all of the results/reports/data of this entity. You can kill it whenever u want as standalone util. When it is done, deleting the entity should work quickly.