Account update fails due to Custom Metadata lock
Last updated 2022-04-12 ·Reference W-7581314 ·Reported By 36 users
In Review
Summary
When there is a burst of REST API calls trying to insert Account and when debug trace is ON for Validation rules, following error can be seen resulting in failure.
Invalid (common.exception.SfdcSqlException: ORA-30006: resource busy; acquire with WAIT timeout expired
ORA-06512: at "DOC.CCUSTOMMETADATA", line 71
ORA-06512: at "DOC.CCUSTOMMETADATA", line 633
ORA-06512: at line 1
{call cCustomMetadata.load_custmds(?,?,?,?,?,?)})
Repro
1. Create a custom picklist field SLA on Account object with values Gold, Silver, Platinum, Bronze.
2. Create a validation rule on Account with formula TEXT(SLA__c) == $CustomMetadata.SLA_Type__mdt.Gold.Name__c
3. Create Custom Metadata type with Name field. Add Metadata records with different values (One of them Gold).
4. Enable debug logs for the user for Validation Rules
5. Make REST API calls to update Account record that invokes this validation rules
Actual Result:
Invalid (common.exception.SfdcSqlException: ORA-30006: resource busy; acquire with WAIT timeout expired
ORA-06512: at "DOC.CCUSTOMMETADATA", line 71
ORA-06512: at "DOC.CCUSTOMMETADATA", line 633
ORA-06512: at line 1
{call cCustomMetadata.load_custmds(?,?,?,?,?,?)})
Expected Results : Update should be successful
Note: this issue can be noticed also during deployments.
Workaround
Disable Debug logs for Validation Rules.
Reported By (36)








Is it Fixed?
Any unreleased services, features, statuses, or dates referenced in this or other public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make their purchase decisions based upon features that are currently available.