Expedited Appliance Upgrade from ssg-9.2.00-CR07 to ssg-9.3.00-CR03 failed. Gateway will not start.

Document ID : KB000112654
Last Modified Date : 31/08/2018
Show Technical Document Details
Question:

User installed a CA API Gateway 9.3.00 on Azure. On this new acceptance test environment CR03 patch was applied to upgrade the gateway application to ssg-9.3.00-8670_CR03.noarch. 

They used the Expedited Appliance Upgrade procedure according to 

https://docops.ca.com/ca-api-gateway/9-3/en/install-configure-upgrade/upgrade-the-gateway/expedited-appliance-upgrade 
to migrate the database from a ssg-9.2.00-7891_hotfix_DE364424 virtual machine to ssg-9.3.00-8670_CR03. 

Although the database upgrade utility reports: "The database was successfully upgraded", the gateway will not start. 
The gateway log file (/opt/SecureSpan/Gateway/node/default/var/logs/ssg_0_0.log) shows following error: 

**** Unable to start the server: Error starting server : Error creating bean with name 'zoneUpdateSecurityChecker': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.l7tech.server.EntityFinder com.l7tech.server.security.rbac.ZoneUpdateSecurityCheckerImpl.entityFinder; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityCrud' defined in class path resource [com/l7tech/server/resources/ssgApplicationContext.xml]: Cannot resolve reference to bean 'federatedUserManager' while setting constructor argument with key [9]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'federatedUserManager' defined in class path resource [com/l7tech/server/resources/ssgApplicationContext.xml]: Cannot resolve reference to bean 'clientCertManager' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clientCertManager' defined in class path resource [com/l7tech/server/resources/ssgApplicationContext.xml]: Cannot resolve reference to bean 'defaultKey' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ssgKeyStoreManager' defined in class path resource [com/l7tech/server/resources/ssgApplicationContext.xml]: Cannot resolve reference to bean 'dbPasswordEncryption' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbPasswordEncryption' defined in class path resource [com/l7tech/server/resources/ssgApplicationContext.xml]: Cannot resolve reference to bean 'clusterSharedKey' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clusterSharedKey' defined in class path resource [com/l7tech/server/resources/ssgApplicationContext.xml]: Invocation of init method failed; nested exception is com.l7tech.objectmodel.FindException: could not decrypt shared key: Given final block not properly padded. Such issues can arise if a bad key is used during decryption. 
 

Environment:
Expedited Appliance Upgrade from ssg-9.2.00-CR07 to ssg-9.3.00-CR03
Answer:

We applied the following solution to resolve the above problem:

1. Copy the /opt/SecureSpan/Gateway/node/default/etc/conf/node.properties file from the ssg-9.2 to the ssg-9.3 gateway.                         

2. Modify the Listening Ports via MySQL to enable the Gateway to start properly: 
mysql> SELECT c.name, c.port, cp.name, cp.value FROM connector c, connector_property cp WHERE cp.connector_goid = c.goid and cp.name="bindAddress"; 
mysql> UPDATE connector_property SET value= '<ssg-9.3 IP-address>' WHERE name='bindAddress' and value='<ssg-9.2 IP-address>';