Solution 1
Follow the below steps in case recon jobs run slow
1) Change log level from Debug to Error for Reconciliation logs
2) Clean CMDB:JobRunInfo form raising a DB request
3) Disable the progress bar on recon jobs
4) Restarted recon process
5) Check for that long-running queries. Those can be fine-tuned with the help of the DB team.
6) On the BMC Asset Sandbox RE job, change Merge Order from "Related CIs in Separate transaction" to "By class in separate transaction"

In case the current sandbox data set has huge records with Ready to Merge, with the Person class contributing the most
- Understand internally by the customer team, how PERSON records are being updated and whether they need to be reconciled
- Work to clean up cleanup of existing sandbox data or exclude classes during reconciliation
- Discuss with the customer, and set up a Delete job to delete all BMC_PERSON and other class records.
- Check if a few classes can be excluded in the delete qualification based on a discussion with the customer.
- Enable delete activity on sandbox RE job with Qual group to exclude some classes if required as per customer requirement
- In the Delete Activity exception qualification on Base Element to include only 'ReconciliationMergeStatus' = "Merge Done"
Solution 2
BMC.ASSET records with 0 reconciliation id
In case BMC.ASSET has records with 0 reconciliation IDs. Sometimes these records are created via customer customization.
These records have to be cleaned up
Some of the sample queries that can be used for Business Service CI class where reconciliation id is 0. These may vary on different environment. The table name has to be picked from the specific environments.
T918 (BMC.CORE:BMC_BusinessService join form)
T805 (BMC.CORE:BMC_BusinessService_)
T775 (BMC.CORE:BMC_BaseElement)
T1279 (AST:Attributes)
Select * from T805 where C400079600 ='BMC_BUSINESSSERVICE' AND C400127400 = 'BMC.ASSET' AND C400129200 = '0'
Select * from T775 where C400079600 ='BMC_BUSINESSSERVICE' AND C400127400 = 'BMC.ASSET' AND C400129200 = '0
BMC.CORE:BMC_BusinessService
Select * from T918 where C400079600 ='BMC_BUSINESSSERVICE' AND C400127400 = 'BMC.ASSET' AND C400129200 = '0'
Select * from T1279 where C179 IN ( SELECT C179 FROM T918 where C400079600 ='BMC_BUSINESSSERVICE' AND C400127400 = 'BMC.ASSET' AND C400129200 = '0' )
Solution 3
Sandbox job gets triggered when a CI is modified via the integrations or via Asset management console
When the same job is triggered frequently (within milliseconds), symptoms like incorrect job status and timings are reported.
Following the containerization of the Reconciliation Engine in version 23.3.03, the job assignment process was modified. Previously, assignments were managed via an application-pending form. The revised architecture enables the Reconciliation Engine to bypass this form and retrieve assignments directly using a polling mechanism. This change may lead to the processing of multiple job requests for the same job within a single polling iteration, potentially resulting in "job is already running" errors.
This issue is considered as a defect CMDB-1598 and fixed in version 25.1.00