An asynchronous Quote calculation in Salesforce CPQ is failing with the error message:
unable to obtain exclusive access to this record or 1 records: <Quote Id>
where <Quote Id> is the Id of the Quote record where the failure occurs.
The error message "unable to obtain exclusive access to this record or 1 records:" indicates that a process was attempting to obtain a lock on a record for 10 seconds before eventually quitting the process with an error message indicating that the record is unavailable. If one long-running process or too many short-lived processes are attempting to interact with a record at the same time, this can cause the exclusive access error to occur.
The most common cause of this error message when seen in Salesforce CPQ is when there are multiple calculations on a single Quote queued from a single transaction. These calculations will take approximately the same amount of time to process on the Heroku service. As a result, they will attempt to write back to the Quote record at the same time. This creates the potential for one or more of the processes to be prevented from locking the Quote for an attempted update.
When encountering this error message, admins should examine the following areas to determine if it is possible to reduce any inserts or updates occurring on either the Quote or Quote Line object. Any reductions in updates will result in reduced calculation processes running. Thus, there will be reduced chance of incurring the error message.
Non-CPQ Managed Packages – Similar to custom Apex, a non-CPQ managed package may contain logic that triggers additional DML operations, workflow rules, Process Builder processes, flows, or other automation on CPQ objects, resulting in extra calculations. Review the debug logs to identify where DML operations are occurring. Even if the managed package's execution details are hidden, the corresponding DML statements will still appear in the debug logs.
000380651

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.