Loading

RD2_OpportunityEvaluation_BATCH Runs Excessively Long Daily Despite Incremental Mode Enabled

Udgivelsesdato: Jul 29, 2026
Beskrivelse

In NPSP orgs using Enhanced Recurring Donations (RD2), the RD2_OpportunityEvaluation_BATCH job evaluates recurring donations and creates or updates related Opportunities. The batch can run for many hours each day (for example 10+ hours) over a very large population, and it may fail with:

Rate Limiting Exception: AsyncApexExecutions Limit exceeded

Two settings, not the incremental settings, are the usual drivers:

  • "Exclude Closed Recurring Donations" is disabled, so Closed recurring donations (which never generate future installments) are pulled into the nightly evaluation population, inflating the record count.
  • Recurring Donation Batch Size is set to 1, so the batch enqueues roughly one async Apex chunk per record instead of the default 50, consuming a large share of the org's 24-hour async Apex limit and driving the runtime up.

Important clarification: the "incremental" settings — Limit Recalculated Recurring Donations, RD Modified in Last Number of Days, and Incremental Last N Days Value Override — are Customizable Rollups (CRLP) settings that control the NPSP 06A/06B rollup batches. They do not govern the RD2 evaluation batch, so enabling them does not reduce the evaluation population.

Løsning
  1. In NPSP Settings, enable Exclude Closed Recurring Donations so Closed recurring donations drop out of the nightly evaluation population.
  2. Set the Recurring Donation Batch Size back to the default of 50 (this is a Custom Setting value). A batch size of 1 should not be used in production; a size of 50 cuts the number of async Apex chunks by roughly 50x.
  3. Let the next scheduled run complete and confirm the reduced runtime. Note that the 24-hour rolling async Apex limit does not reset immediately, so the improvement may fully appear on the following night's run.

In a representative case, these two changes reduced the evaluated population from about 243,000 to about 75,000 records and async chunks from about 243,000 to about 1,500 — projected to bring the nightly run from roughly 13 hours down to 30 to 90 minutes.

Vidensartikelnummer

005386531

 
Indlæser
Salesforce Help | Article