A data collection in RSA Identity Governance & Lifecycle aborts with the following Admin error:
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
This error occurs when a field is filtering on a character in a field that is not there.
In the query below, the email address is manipulated by the SQL query used to collect its value as follows:
select FIRST_NAME, LAST_NAME, (SUBSTR(EMAIL,1,INSTR(EMAIL,'@')-1)) as SHORT_EMAIL from USERS
The INSTR function is used to return the position of a substring (SUBSTR) in a string. This query takes an email address and truncates everything after the '@' sign. For example, email@example.com would become cblossom. If there is a value in the email field that does not have the '@', the error will occur and the collection will fail. For example, an email address of cblossommailinator.com. would cause this failure.
The data or the query needs to be fixed. To fix the data, ensure values in the input fields contain an '@' as that is what the code expects. To fix the query, do not filter on any value that may not be exist in the data.