search cancel

Unable to upgrade the OTK from 4.4.0 to 4.6.0 - "SK_AllowMappingOverride” be set to true by the .skar file author

book

Article ID: 257330

calendar_today

Updated On:

Products

CA API Gateway

Issue/Introduction

Unable to upgrade the OTK from 4.4.0 to 4.6.0. We get this error:

"This Solution Kit does not allow overriding of this mapping.

  This mapping requires the property “SK_AllowMappingOverride” be set to true by the .skar file author."

we attempted to go resolve the issue by following this article and increased the

max_allowed_packet to 1G and still didnt' work. 

https://knowledge.broadcom.com/external/article/4392/solution-kit-install-error-this-mapping.html

Environment

Release : 10.1

Cause

there is a custom policy/assertion inside of the OTK folder tree which cannot be deleted due does not find the corresponding mapping

 

Resolution

1. from ssg log file,  search for this pattern  "Deleting obsolete Role", which indicate when the "OTK Upgrade from Policy Manager started"

2. then search for the first Error/Warning Related to , and should show the folder which is claiming before that error

example :  excerpt from ssg log 

2023-01-05T07:48:21.033-0800 INFO    43 com.l7tech.server.security.rbac.RoleManagerImpl: Deleting obsolete Role #bea07cec5295b7090921089213e99b82 (Manage OTK Client DB GET Policy (#e001cfd0c1c1ffaa18e187b5e72fc994))
2023-01-05T07:48:21.070-0800 INFO    43 com.l7tech.server.security.rbac.RoleManagerImpl: Deleting obsolete Role #bea07cec5295b7090921089213e98e34 (View maintenance Folder (#c4bc0de10c1b6cad6bdb4e564db836fa))
2023-01-05T07:48:21.076-0800 INFO    43 com.l7tech.server.security.rbac.RoleManagerImpl: Deleting obsolete Role #bea07cec5295b7090921089213e98e4b (Manage maintenance Folder (#c4bc0de10c1b6cad6bdb4e564db836fa))
2023-01-05T07:48:21.127-0800 WARN    43 org.hibernate.engine.jdbc.spi.SqlExceptionHelper: SQL Error: 1451, SQLState: 23000
2023-01-05T07:48:21.127-0800 ERROR   43 org.hibernate.engine.jdbc.spi.SqlExceptionHelper: Cannot delete or update a parent row: a foreign key constraint fails (`ssg`.`policy`, CONSTRAINT `policy_folder` FOREIGN KEY (`folder_goid`) REFERENCES `folder` (`goid`))
2023-01-05T07:48:21.148-0800 WARN    43 org.hibernate.engine.jdbc.spi.SqlExceptionHelper: SQL Error: 1451, SQLState: 23000

The above means , there is Folder called "Manage maintenance" which has a customized object which OTK is trying to delete but cannot.
So the service/job/object there need to be removed to allow the upgrade process flow goes fine.

Notes:

a) We advise to do not put customized services/encap assertions on OTK folder tree. Use other external folder but out of the OTK structure to avoid this kind of errors.

b) the Manage maintenance Folder and Task called "backend service alerts" applies for this use case only. You may found a different task , or folder Name in your own log file.

Solution :  Moving that assertion (ie backend service alerts) to custom folder out of the OTK folder resolved this issue.

Tested in lab this solution also :

1. from  Policy Manager , tasks -> global settings -> Scheduled tasks -> Manage scheduled tasks , we removed a custom Task called "backend service alerts"

2. Go to (lower left search) , open the maintenance folder remove "Backend service Alert" (which is a customized service) from the OTK tree.

Remove the corresponding "Backend Service Alert" from OTK Folder too .

3. Re-do the upgrade and finished successfully