Global sync failed in stage Global Access Rights Caused by Data too long for column CategoryName
search cancel

Global sync failed in stage Global Access Rights Caused by Data too long for column CategoryName

book

Article ID: 386138

calendar_today

Updated On:

Products

Network Observability CA Performance Management

Issue/Introduction

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.

Environment

PM 24.3.3

Cause

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.

Resolution

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.

Additional Information

The issue will be fixed in the upcoming PM release, DE165060.