Salesforce Errors FAQ
This document is a list of the most common Salesforce errors you may encounter and some options that may help resolve them.
NOTE: For Sandbox Seeding, the errors will need to be resolved in the seeding target org unless otherwise specified
What does CANNOT_EXECUTE_FLOW_TRIGGER
or CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY
mean?
CANNOT_EXECUTE_FLOW_TRIGGER
or CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY
mean?Your Salesforce org has a trigger interfering with record creation or deletion.
Apex CPU time limit exceeded
Example: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY: EmailMessageTrigger: System.LimitException: Apex CPU time limit exceeded
The Apex code in this trigger is taking too long to run on a record and failing with a System.LimitException
error due to a SFDC platform time limit. The Salesforce platform enforces that Apex code from triggers must run within a short amount of time to prevent excessive resource consumption. Possible options to resolve this are:
- Use the
Disable automations
option in the seeding job to disable the trigger for the duration of the seeding job (Sandbox Seeding only) - Modify the trigger to not run for the GRAX integration user
- Optimize the trigger code to run in less time
General Trigger Execution
Example: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY: TaskTrigger: execution of AfterInsert
The code in the trigger is blocking the operation based on how the object or related objects are currently configured. Possible options to resolve this are:
- Add an override to the job to set the field value that will allow the record to pass the trigger validation rule
(Sandbox Seeding or Restore) - Use the
Disable automations
option in the job to disable the trigger for the duration of the seeding job (Sandbox Seeding only) - Modify the trigger to not run for the GRAX integration user
- Review the trigger code to allow the operation to succeed
What does DUPLICATE_VALUE
or DUPLICATES_DETECTED
mean?
DUPLICATE_VALUE
or DUPLICATES_DETECTED
mean?Example: DUPLICATE_VALUE: A topic with the name, why-GRAX-is-amazing, already exists.
Salesforce requires unique values for certain fields (such as topic names) and GRAX has tried to insert a duplicate.
- For Sandbox Seeding, this can happen when re-seeding a dataset without undoing the previous seed first. Undo the previous seed that included this record or select a different dataset to seed.
- For Restore, this can happen if a record you are trying to restore was previously un-deleted from the Salesforce Recycle bin. To ensure data integrity and records are properly linked, always restore records from GRAX.
What does ENTITY_IS_DELETED
mean?
ENTITY_IS_DELETED
mean?Example: ENTITY_IS_DELETED: entity is deleted
The record was deleted in Salesforce since the last backup was taken. Wait for the next Auto Backup to complete and try the activity again.
What does FIELD_CUSTOM_VALIDATION_EXCEPTION
mean?
FIELD_CUSTOM_VALIDATION_EXCEPTION
mean?Example: FIELD_CUSTOM_VALIDATION_EXCEPTION: Activity can't be created for Closed enquiry. Please Re Open Enquiry to save Activity.
The FIELD_CUSTOM_VALIDATION_EXCEPTION
error indicates that there is a custom validation rule or trigger on the object that is blocking the record from being created. Review the message details to determine the cause, possible options to resolve this are:
- Add an override to the seeding job to set the field value that will allow the record to pass the validation rule (Sandbox Seeding or Restore)
- Use the
Disable automations
option in the seeding job to disable the trigger for the duration of the seeding job (Sandbox Seeding only) - Modify the validation rule / trigger to not run for the GRAX integration user
- Skip the object
What does INACTIVE_OWNER_OR_USER
mean?
INACTIVE_OWNER_OR_USER
mean?Example: INACTIVE_OWNER_OR_USER: The specified user is inactive
The GRAX integration user does not have sufficient permissions to create the records for inactive users. Please review the permissions for the GRAX integration user / GRAX integration user permission set and ensure it has the Set Inactive Owners
permission. See the Restore Best Practices page.
What does INSUFFICIENT_ACCESS_OR_READONLY
mean?
INSUFFICIENT_ACCESS_OR_READONLY
mean?Can't create a link for Email Message when it's not in draft state
Example: INSUFFICIENT_ACCESS_OR_READONLY: You can't create a link for Email Message when it's not in draft state (field=LinkedEntityId)
When a ContentDocumentLink attached to an EmailMessage is deleted, there are some guards that prevent us from placing it back. Salesforce only allows links to emails that are either in state draft, or created with IsClientManaged
set to true.
If none of these apply, our recommended workaround is to archive the email message and then restore it using GRAX. In this process we're going to set that IsClientManaged
flag, and then restore ContentDocumentLinks related to it.
Insufficient access rights on object id or record type
Example: INSUFFICIENT_ACCESS_OR_READONLY: insufficient access rights on object id
or INSUFFICIENT_ACCESS_OR_READONLY: invalid record type
The GRAX integration user does not have sufficient permissions to delete / create this object or record type. Please review the permissions for the GRAX integration user / GRAX integration user permission set and ensure it has correct object and record type access.
Invalid sharing type
Example: INSUFFICIENT_ACCESS_OR_READONLY: Invalid sharing type V (field=ShareType)
You are trying to seed or restore a Content Document (ContentVersion + ContentDocumentLink) and you are getting an "Invalid sharing type V" error message. To resolve it, you need to configure file sharing to Set by Record
in your Salesforce org settings:
- Go to
Setup
and enterFiles
in theQuick Find
box. - Under
Salesforce Files
, chooseGeneral Settings
. - Enable the
Set by Record
option for files attached to records.
Additional documentation is available from Salesforce.
Data Validation rules
There is a validation rule that is blocking the record from being created as it currently exists.
- Review the message details to determine the cause and options to resolve by setting an override (such as setting the
state
field toDraft
for the example above) - Skip the object.
Insufficient permissions
The GRAX integration user does not have sufficient permissions to create the record. Review the permissions for the GRAX integration user / GRAX integration user permission set and ensure it has access to create the records for that object
What does INVALID_CROSS_REFERENCE_KEY
or INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY
mean?
INVALID_CROSS_REFERENCE_KEY
or INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY
mean?Example: INVALID_CROSS_REFERENCE_KEY: Missing reference: field TaskId ref ID: 00T46000008US01AAG
When Salesforce needs to do a many-to-many link between two objects (such as Accounts can have many tasks, task can be linked to many accounts), it uses a junction object called a cross-reference. This error means that the cross-reference GRAX is trying to create is missing or unable to access one side of the junction. This most commonly has two likely causes:
Missing reference
- One of the 2 records that are being linked is missing:- Check to see if there are other errors in the job that may indicate the record was skipped
- The record was manually excluded
- The record was not included in the job due to a filter such as max children
this ID value isn't valid for the user
orYou do not have the level of access necessary
- The GRAX integration user doesn't have sufficient permissions to create the cross-reference record type. Check the permissions for the GRAX integration user / GRAX integration user permission set and ensure it has access to create the cross-reference record type.
What does INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST
mean?
INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST
mean?Example: INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST: bad value for restricted picklist field: Direct_Traffic (field=originalSource)
The picklist value GRAX is trying to set is not a valid value for the field. This can happen if the option was deleted since the record was backed up or in Sandbox seeding if the option was added to the source org after the target org was created. Possible options to resolve this are:
- Add the missing picklist value to the picklist options for the field
- Add an override to the job to set the field value to a valid picklist option
What does STORAGE_LIMIT_EXCEEDED
mean?
STORAGE_LIMIT_EXCEEDED
mean?Example: STORAGE_LIMIT_EXCEEDED: storage limit exceeded
Your Salesforce target org does not have sufficient storage space to load the data you are trying to seed. GRAX provides an estimated size for all records vs the available space reported by the seeding target. Since these are estimates, its possible to exceed the available space when the data is actually loaded. Please edit the seeding job and reduce the amount of data being seeded, some options are:
- Reduce file size by skipping the
ContentDocument
orAttachment
objects - Skip objects that are not meaningful to the use cases for the seeded data. For example running a test on
Opportunity
data doesn't requireEmailMessages
- Clicking on the Object in the graph or list will show you the estimated size of the records for that object. You can use this to determine which objects are consuming the most space and use this info to decide which objects to skip
What does UNABLE_TO_LOCK_ROW
mean?
UNABLE_TO_LOCK_ROW
mean?Example: UNABLE_TO_LOCK_ROW: unable to obtain exclusive access to this record or 10 records: ...
Salesforce is attempting to update a separate record based on the changes to the record that reported this error while a different record in the same batch is also updating that record. This can happen as a result of a roll-up summary field or a trigger, such as rolling up the number of opportunities on an account. If you're seeing this error, it means the Salesforce and GRAX ROW LOCK resolution processes were unable to separate the child records that are blocking each other.
- Review the trigger logic to ensure it can properly handle batches of records (and doesn't assume only one record will be updated at a time)
- For Sandbox Seeding, reduce the number of records being seeded
- For Restore, retry the restore job for the failed records
What does UNKNOWN_EXCEPTION
mean?
UNKNOWN_EXCEPTION
mean?UNKNOWN_EXCEPTION
is a catch-all for errors that Salesforce does not provide a specific error code for. The error message usually has a general description of the cause of the error. Search the internet or contact Salesforce support to help identify the root cause. Based on the cause of the error, it may be possible to correct it by setting an override or skipping the object.
Updated about 1 month ago