After migrating DA to a new host in RHEL 8.1 the following error showed up in Global Sync:
Global sync failed in stage Global Access Rights Caused by: org.springframework.dao.DataIntegrityViolationException: PreparedStatementCallback; SQL [INSERT INTO access_right_categories (CategoryName, SourceID, Description, MaxSelected, UpdatedOn) SELECT ds.ConsoleName, ds.SourceID, IF(MIN(dar.MaxSelected) > 0, ct.DataSourceMenuDescription, ct.DataSourceAccessRightsDescription), MIN(dar.MaxSelected), MAX(dar.UpdatedOn) FROM ds_access_rights dar INNER JOIN data_sources2 ds ON ds.SourceID=dar.SourceID INNER JOIN category_template_i18n ct ON ct.CultureID='en-US' WHERE dar.CategoryID IS NULL GROUP BY ds.SourceID]; Data truncation: Data too long for column 'CategoryName' at row 1 at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:118) at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:107) at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:116) at org.springframework.jdbc.core.JdbcTemplate.translateException(JdbcTemplate.java:1548) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:677) at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:970) at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:1014) at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:1024) at com.ca.im.portal.api.common.services.impl.database.JdbcOperationsDelegate.update(JdbcOperationsDelegate.java:359) at com.ca.im.portal.api.common.services.impl.database.TransientDBConnection.execute(TransientDBConnection.java:437) at com.ca.im.portal.dm.productsync.GlobalSyncAccessRights.synchronizeAccessRights(GlobalSyncAccessRights.java:86) at com.ca.im.portal.dm.productsync.GlobalSyncAccessRights.doSynchronizeInternal(GlobalSyncAccessRights.java:23) at com.ca.im.portal.dm.productsync.AbstractGlobalSyncStage.doSynchronize(AbstractGlobalSyncStage.java:122) at com.ca.im.portal.dm.productsync.GlobalSync.globalSynchronization(GlobalSync.java:101) at com.ca.im.portal.dm.productsync.GlobalSyncPhaseTask.execute(GlobalSyncPhaseTask.java:41) at com.ca.im.portal.dm.productsync.GlobalSyncPhaseTask.execute(GlobalSyncPhaseTask.java:13) at com.ca.im.portal.dm.productsync.SyncPhaseExecutor$SyncPhaseTaskCallable.call(SyncPhaseExecutor.java:157) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'CategoryName' at row 1 at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:96) at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:987) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1165) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1100) at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1466) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1083) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:105) at org.springframework.jdbc.core.JdbcTemplate.lambda$update$2(JdbcTemplate.java:975) at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:658) ... 16 more
Failed
The portal hasn't migrated yet.
PM 24.3.3
The issue is someone's ConsoleName in data_source2 is too long. data_sources2 ConsoleName allows 300 chars, but access_right_categories.CategoryName is on 60 chars.
Edit any DS with a Console Name (Display Name in the UI) to be 60 chars or smaller.
The NFA source is 63 characters long. After reducing it up to 60 chars the issue was resolved.
The issue will be fixed in the upcoming PM release, DE165060.