Skip to main content

Hello,  

I am looking for some support on how to review and manage the error messages I am receiving related to the DLRS jobs I currently have scheduled that seem to be 'bumping' into each other.   

 

The two error messages (related to different scheduled jobs) I am receiving are:  

1. Error: A calculate job for rollup 'XXX' is already executing. If you suspect it is not already running try clearing the applicable record from the Lookup Rollup Calculate Jobs tab and try again. Review the error, rollup definition and/or delete the Apex Scheduled job under Setup. Check if the rollup still exists via the Manage Rollup Summaries and/or Lookup Rollup Summaries tabs. 

2. Error: You've exceeded the limit of 100 jobs in the flex queue for org XXX (sandbox). Wait for some of your batch jobs to finish before adding more. To monitor and reorder jobs, use the Apex Flex Queue page in Setup. Review the error, rollup definition and/or delete the Apex Scheduled job under Setup. Check if the rollup still exists via the Manage Rollup Summaries and/or Lookup Rollup Summaries tabs. 

 

We have multiple jobs that are scheduled to run on the Opportunity spaced out by 30min but I did also receive error message 1. for a job that is scheduled on the Contact and Tribute.  

 

When I review the Lookup Rollup Calculate Jobs, I see 14 jobs with created dates in the past (12/31/2025 and 01/01/2026). I have deleted these and will wait to see if they show up again after the nightly scheduled jobs run. 

 

The Apex Flex Queue looks to have quite a few that are all related to RollupJob from 12/31/2025 and 01/01/2026.  

 

Any suggestions to try or ideas on how to fix this would be greatly appreciated!

3 answers
  1. Jan 20, 7:15 PM

    I think the answers from @Zeno Archivist and @shefali tanwar

    are doing a great job. 

     

    The older Calculate Job records that got orphaned are likely tied to failed batch jobs, the calculate job entry get added but then fails to executed cleanly and the job record is stranded and never cleaned up, resulting in a "maybe I'm already running because I never said I was done" error. 

     

    Do you have a sense of how many of your enqueued batch jobs are DLRS and how many come from other sources? Your org is probably set to allow 5 concurrent runs and a queue of 100 batch jobs. If you're adding to that faster than it can clear then this could easily happen but it might not just be DLRS enqueueing those jobs. 

     

     

    Some other strategies to consider. Do you need these rollups to happen as often as they are? Can some be realtime or scheduled/Watch for Changes and Process Later? For your scheduled jobs most people let them run over every parent record. If you tighten the scope when you're scheduling it (adding a WHERE clause to limit which parent records are recalculated) then you can sometimes significantly shorten how long each batch takes to run and how many batches actually need to be processed. 

     

    There can certainly be some nuance in getting it all playing nice.

0/9000