Getting Started
Installation
Permissions
Widget & Inline Page
Classic - Distribution Engine Inline Page
Lightning - Distribution Engine Record Detail
Widget - Introduction
Adding Widget to a Lightning App
Adding Widget to a Lightning Page
Adding Widget to Salesforce Mobile
Adding Widget to a Classic Console
Adding Widget to Classic Homepage
Changing the Widget logout reason list
Distributor Test Tool (Legacy)
Before you Begin
Installation Overview
Whats in the Package
Triggers
Installation Process
Managed Package Licences
Page Layouts
Leaving A Review
Uninstall
Upgrading Distribution Engine
Configure Distribution Engine
Distribution Classifier
Territories
Territories Introduction
Create a Map
Import Territories
Territory Map Zoom Levels
Object Settings
Detecting Territories
Settings
Territories - Technical Details
Territory Distributor
Lead Matching
Lead Matching - Introduction
Duplicate Rule Setup
Related Owner - Lead Matching
Lead matching vs lookup owner
Classifier Lead Matching Setup
Lead to Account/Contact/Lead Settings
Custom Classification
Custom Classification - Introduction
Stamp Groups
Stamps
Custom Classification - Synchronized Tag Collections
Lead Auto-Conversion
Lead Auto-Conversion - Introduction
Lead De-Duplication
Lead Conversion
Configuring Auto-Conversion
Auto-Conversion Rules
Distribution Classifier - Introduction
Backfill
Delay Filters
Distribution Teams
Distributors
Distribution Methods
Distribution Methods - Introduction
Lookup Owner
Load Balancing
Round Robin
Related Owner
Sticky Assignment
Distributors Introduction
Distributor Types
Standard Distributor Settings
Pull Distributor Settings
Trigger Distributor Settings
Manual Distributor Settings
Distributor Sources
Distributing from a Designated User
Distributor Filters
Distributor Team Member Filters
Distributor Sort Order
Advanced Filter Mode
Distributor Test Tool
Weighting and Caps
Distribution Hours
Tracking & SLAs
Team Settings
Distribution Teams Introduction
Distribution Assignment Process view
Team Summary
Team Members
Team Availability
Team Performance
Assignment Rejection
Post Assignment
Stamp Rejection
Distribution Tags
Distribution Availability
Distribution Availability
Shift Hours
Out of Office
Distribution Holidays
Holiday Regions
Regional Holidays
User Availability Toggle
Distribution Settings
Distribution Settings
Calendar Integration
Advanced Settings
Distribution Engine Running User
Licensed users list
Export & Import
Import Errors
Trigger Settings
Email Notifications
Email Notifications - Introduction
Custom Email Notifications
Disabling Standard Email Notifications
Customising the Email Template
Disabling Custom Email Notifications
From Email Address
Email Notification as Flow
Assignment Simulator
Assignment Simulator - Introduction
Configure Assignment Simulation
Assignment Simulator Result Explorer
Advanced
Q2Q teams
Integrating InsideSales.com power dialer
Pardot
Auto archive feature
Uploading tags via dataloader
Salesforce Mobile
Tuning Distribution Engine
Setup Introduction
Queue Basics
Queues
Distribution Sync
Monitoring
Distribution Console
Console Introduction
Application Monitoring
Today's Distributions
Sources Console
Availability Calendar
Distribution Logs
Distribution Logs
Distribution Logs List
Territories Logs List
Lead Matching Logs List
Custom Classification Log List
Auto-Conversion Logs List
Object Sync Logs List
Scheduler Logs List
Archive Logs List
Exporting Log Data
Distribution Analytics
Distribution Engine Details Object
Distribution Engine Dashboard
Salesforce Reports
Reports - Leads and Distribution Logs
Change History
Setup Examples
Skill Based Matching
Assigning Contacts - Pairing SDRs and AEs
Delaying Distribution
Enforce Cap for Manually Assigned Records
Criteria Caps
Salesforce Admins
Workflow Rule Examples
Formula Examples
Domain Formula
Timezone Bucket Formula
Has Activity Formula
Territory Formula
Age Formula
Distribution Engine Details Formula
id Field to Text
Flow Examples
Chatter Notifications
Slack Notifications
Desktop or Mobile Notifications
Custom Assignment Rejection
Classify on Address Change
Assign on Action
Process Builder Examples
Process Builder - Avoiding Clashes
Opportunity Assignment - Updating Related Accounts & Contacts
Rejection API Process
Assign License and Permission Set on Team Member Addition
Assign License on Team Member Addition
Tasks on Record Assignment by Distribution Engine
Information for New Admins
Validation Rules
Developers
Apex API
Availability API
Classifier API
Out of Office API
Tags API
Team Members API
DE Apex API Introduction
Rejection API
System API
Trigger Distribution API
Apex Trigger Examples
Omni-Channel Presence Integration
Salesforce Presence Integration
Invalid Email trigger
Custom Triggers
Visualforce Examples
Troubleshooting
Warnings and Errors
Health Checker Messages
Scheduler Restarted
Distributor Failures - Records on Hold
Assignment Errors
Classifier Errors
Apex CPU time limit exceeded
Timeout when deleting a Team Member or Distributor
Records Stuck / Not Being Assigned
Support
Previous Releases
2.9
3
4
4.12
4.15
Armadillo
Bison
Chameleon
Dragon
Dragon beta release - install guide
Eagle upgrade process
Eagle
Fox
Gorilla
Gorilla Upgrade Process
Hummingbird
Hummingbird Upgrade Process
Impala
Impala Upgrade Process
Jellyfish
Jellyfish Upgrade Process
Koala
Koala Upgrade Process
Llama
Llama Upgrade Process
Meerkat
Meerkat Upgrade Process
Upgrade Links
Introducing Nightingale!
Nightingale Release Notes
Nightingale Upgrade Process
Frequently Asked Questions
Legacy Widget - New status
Distribution Engine Aborted
Alerts not Firing
Distribution Engine Delayed
Can one Distributor Assign from Multiple Queues / Users?
Can't See Distribution Engine
Distribution Engine Not Running
Manual Shutdown of Distribution Engine
Exclude members from Holidays
Distribution Engine Health Checker Restart
Dashboard Running User Error
Assignments going to wrong user
Contact Support
Grant Login Access
Upgrading Distribution Engine Steps
Purchase
Purchasing Steps
Purchasing FAQs
Support Packages
Legal Agreement Details
GDPR
Policies
Migrating Licences
Contact us
What Tier am I on?
Features by Tier
Latest Release
- All Categories
- Configure Distribution Engine
- Distribution Settings
- Advanced Settings
Advanced Settings
Processing Mode
In some cases you may want to adjust the processing mode used by Distribution Engine - typically this would be because your Salesforce org is having issues or you have added a large number of records to process.
Distribution Engine can use different types of Salesforce jobs to monitor sources and process the records within them. The processing mode options are detailed at the bottom of this page.
Scheduler Frequency
The scheduler frequency option determines how often Distribution Engine will run and attempt to distribute records. The available options will be limited by the processing mode chosen.
- "As fast as possible" mode will run several times a minute (depending on org performance).
Classifier Frequency
The classifier frequency option sets how often the classifier queueable job will run and classify new records. This can be set at any interval up to ten minutes.
Most processing for the classifier is performed in triggers; the queueable job is used to process records when there are too many or to handle the de-duplication and conversion processing.
Health Checker Frequency
The health checker is a scheduled job running parallel to the main Distribution Engine scheduler. It monitors the other Distribution Engine jobs, like the scheduler that performs assignments or the classifier, and can restart them in the event that any issues are found or notify when errors have occurred.
- Health Checker Frequency - By default the Health Checker runs at the top of each hour. This frequency can be increased to every 15 or 30 minutes. Note that a scheduled job is run for each interval, i.e. every 15 minutes runs four scheduled jobs.
Processing Mode Options
Queueable (Default) - The scheduler runs approximately every minute in 'As fast as possible', which is the default mode. It is possible to now select a running frequency as slow as every ten minutes. The scheduler spawns a queueable job to perform the Distribution Engine processing. This is the recommended mechanism.
- Advantages: Runs frequently, meaning records don't wait long before being assigned. Keeps a history of each run (useful for troubleshooting failure reasons).
- Disadvantages: Can't set a frequency slower than ten minutes. For 'As fast as possible' on orgs that have a lot of other asynchronous jobs, the number of queueable jobs this creates a day could put you close to Salesforce's limit.
Automatic - This mode will run as Queueable unless a large number of records are available to assign. At that point, it will switch to Batch Processing and process all waiting records. During both processing modes, Distribution Engine will continue to run as fast as possible and will not switch to running hourly as normally happens when running in batch mode.
- Advantages: Larger volumes of records can be assigned without manual intervention of switching modes. Higher governor limits (can do more processing in a single run).
- Disadvantages: Can't set a frequency slower than ten minutes. For 'As fast as possible' on orgs that have a lot of other asynchronous jobs, the number of queueable jobs this creates a day could put you close to Salesforce's limit.
Parallel - Separates the processing of records into two separate processes, one to determine the assignee and one to update the records. The updating process can be run in a number of parallel jobs, reducing run times in some cases. This mode uses Queueable jobs to assign and distribute the records.
- Advantages: Assigns faster in complex configurations such as when using processes that are triggered by record updates.
- Disadvantages: Utilizes more asynchronous jobs than other processing methods, potentially hitting Salesforce daily limits.
Asynchronous - The scheduler runs periodically according to the frequency you define. The scheduler spawns a future method to perform the Distribution Engine processing.
- Advantages: Can control the frequency of jobs based on your scenario. Keeps a history of each run (useful for troubleshooting failure reasons).
- Disadvantages: For orgs using future methods heavily, the Distribution Engine jobs will be queued along with other future methods which could cause delays.
Synchronous - A single Salesforce scheduled job runs periodically according to the frequency you define. The Distribution processing takes place within the context of this scheduled job.
- Advantages: Generally runs quickly - no delays where future methods are queued for processing.
- Disadvantages: If a job fails, it does not maintain a history of the failure reason. Lower governor limits compared to other modes, meaning fewer records can be processed each run.
Batch - Batch jobs process batches of records at the same time to allow for long running processes and assignment of large volumes of records. This mode will help in scenarios where a large number of records are added to the system and need to be assigned.
- Advantages: Standard processing modes have a default limit of 500 records per run, there is no limit for Batch mode.
- Disadvantages: Batch mode will initially be limited to running hourly to avoid overloading orgs which already use batch jobs heavily.
Which processing mode should I use?
By default, the Distribution Engine scheduler runs in Queueable mode. This provides the fastest processing and uses the higher Salesforce Governors limits.
If Salesforce is having sustained performance issues and your records are not being assigned, Asynchronous mode is a good fallback option to ensure runs take place every 10 minutes.
Consolidate zero assignment scheduler logs
Each time the scheduler runs it logs the processing it does. If your org has periods of time that no assignments are occurring, you may want to consolidate these logs. This will save storage space wtihin your org but also make it easier to review scheduler logs when needed.