How to correct the Case Insensitive warning for summary view rules
Summary
Remediate this high-priority warning before using the rule in a production environment.
In v5.4 sp2 or greater, use the Download High Priority Warnings option in the Application Preflight tool to research all high-priority warnings in your application. As a best practice, perform the preflight check before you lock a RuleSet version.
Rule Type | Warning Type | |
---|---|---|
Rule-Obj-SummaryView | Performance | |
Name | Case Insensitive | |
Message | Case Insensitive search operation can adversely impact performance.To improve performance create functional index using UPPER() function on the columns that need case insensitive search. | |
Details | N/A | |
Severity | 3 |
Suggested Approach
If you select Ignore Case on the Content tab as shown here:
You will get this warning when you save the rule:
Case insensitive searches can be costly. In most cases, leave this box cleared. Select this box only when truly necessary to obtain the rows of the report:
- If your PegaRULES database is hosted by Microsoft SQL Server, comparisons are always case-insensitive, so selecting this box does not affect the report contents, but may add processing.
- If your PegaRULES database is hosted by Oracle, IBM UDB or most other database vendor products, selecting this box may affect which rows appear in the report when values occur in mixed case. However, conversion to uppercase can significantly slow database processing.
- Case conversion is meaningful only for properties of type Text, Identifier or Password. Regardless of database software, case conversion is not needed for numbers, dates, or text that contains only uppercase or only lowercase characters.
To improve performance you can create an additional column in database with the capitalized text. When doing the comparison, capitalize the search data as well.
Creating UPPER indexes vary by database platform. Your DBA should consult the product documentation for information on how to create the indexes.