The UNABLE_TO_LOCK_ROW error occurs when two or more database operations attempt to modify the same record simultaneously and one transaction cannot obtain an exclusive lock on that record. In Salesforce, this commonly occurs when running Apex test classes that insert community or portal users while parallel test execution is enabled. When multiple test threads try to insert or modify the same user or related records at the same time, a row-lock conflict is triggered.
This behavior is working as designed. Salesforce enforces row-level locking to maintain data integrity during concurrent transactions.
Apply one or more of the following workarounds to prevent this error:
RunAs() method in test classes instead of creating new community or portal users. RunAs() temporarily switches the execution context to a specific user without inserting new user records, avoiding the lock.If the error persists after applying these workarounds, contact Salesforce Support for additional assistance.
000380602

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.