I have setup Flat File Connector based on documentation below
The connector works fine and I can add user account at the Endpoint. However, when we add a user with full name longer than 30 chars it failed. JCS jcs_daily.log shows similar to the following exception.
(CSV_JNL_ADD,CSV_JNL_DEL,csv__deleted,Employee_ID,Full_Name) VALUES (?,?,?,?,?)]; A truncation error was encountered trying to shrink VARCHAR '<user name>' to length 30.; nested exception is java.sql.SQLDataException: A truncation error was encountered trying to shrink VARCHAR '<user name>' to length 30. java.sql.SQLDataException: A truncation error was encountered trying to shrink VARCHAR '<user name>' to length 30. org.apache.derby.impl.jdbc.EmbedSQLException: A truncation error was encountered trying to shrink VARCHAR '<user name>' to length 30. org.apache.derby.iapi.error.StandardException: A truncation error was encountered trying to shrink VARCHAR '<user name>' to length 30. (ldaps://<Connector Server's IP>:20411)
It seems the fields' length are limited to 30 chars only. Is there a way to accommodate more than 30 chars?
Release : 14.x
Component : IdentityMinder(Identity Manager)
To solve this problem we need to step back, i.e. re-acquire the Flat File Connector Endpoint. However, before re-acquiring the Flat-file Connector Endpoint, in the CSV file we need to create a dummy user account record that has enough length value on the user's required column. Flat-file Connector determines the max chars length by increasing of 30 chars chunk to accommodate required length based on the dummy record.
For example, if we wish to have max 60 chars length for "Full Name" column then create a dummy value which length is more than 30 chars but less than 60 chars in the dummy user account record.
Please do the following steps
1. As I would like to have max 60 chars length for Full_Name field, in the User CSV file I created a dummy user with 50 chars. The 'Dummy Abc Dummy Abc Dummy Abc Dummy Abc Dummy Abc' full name is 50 chars long.
2. Now, using IM User Console I re-acquire/create the Endpoint.
3. Do custom attribute mapping as required
4. Create Explore and Correlate definition and execute Explore and Correlate.
5. Create Account Template and its Provisioning Role.
6. Assign the Provisioning Role to a user with Full_Name longer than 30 chars but less than or equal to 60 chars to test.
You will see it creates the user account without the truncation error anymore.
You will see the error again if you have user full name more than 60 chars.