What is the maximum limit for custom object indexes on Incidents table?
Custom Objects, Custom (Object) Fields
When trying to save a new custom object/system attribute in Incidents table, I'm getting an error similar to:
Validation Error. OracleServiceCloud.Incident: System class Incident contains more than the maximum allowed indexes (23). The menu fields are always indexed. Adjust the number of menu fields or the number of other indexed fields.
A combined maximum of 500 system attributes and custom fields can be created for each standard object. That is, if you have 100 incident custom fields, you could create up to 400 system attributes for the incident object. Note, this is still subject to the max row size of the storage engine so it is unlikely you would ever reach this limit. In addition, each standard object can have a maximum of 18 system attributes and custom fields that are indexed (combined total). Only nine indexes of this pool total can be allotted to custom fields so once this is reached the index box will be greyed out in the custom field editor.
The purpose of an index is to speed up record searches and improve the performance when searching by the indexed field. You should be aware that there are also drawbacks regarding this situation. Specifying too many indexes on a specific table can degrade search performance rather than improve it. In general, it is best to have fewer than 15 total fields indexed in any given table.
For more information regarding this aspect, please refer to our online documentation Create a system attribute. To access Oracle B2C Service manuals and documentation online, refer to the Documentation for Oracle B2C Service Products.