Our On-Premise installation (22.214.171.1249) has a AsyncOperationsBase table contains about 950k records. And that’s after running the query in this KB https://support.microsoft.com/en-us/help/968520/performance-is-slow-if-the-asyncoperationbase-table-becomes-too-large.
So I ran a bulk delete to clear out approximately 300k records (checked with a XrmToolbox plugin).
The job went to the locked/in-progress state immediately and the CPU on the SQL box sat at 90%+ at 3pm yesterday.
I checked progress this morning at 7am and the CPU on the SQL box was still 90%+ but the job had deleted just 10k records.
2 hours later and the job reports 50k records deleted, all the while with the CPU pegged at > 90%.
The SQL box has 12 cores and ample RAM (not 100% used). Our monitoring tools show that Disk IO is at virtually 0%.
Is this typical performance? Is there a way to speed it up?