The following error message may be printed in the console of the Gateway when attempting to upgrade the Gateway database:
The database was not upgraded due to the following reasons:
FUNCTION ssg_testUpgrade.goidToString does not exist
No changes have been made to the database. Please correct the problem and try again.
Press [Enter] to continue
In addition, a Gateway administrator can run the following SQL query from the privileged shell of the Gateway to determine if the three necessary stored procedures are present:
mysql> show function status\G;
+-----+--------------+----------+-------------------+
| Db | Name | Type | Definer |
+-----+--------------+----------+-------------------+
| ssg | goidToString | FUNCTION | [email protected] |
| ssg | next_hi | FUNCTION | [email protected] |
| ssg | toGoid | FUNCTION | [email protected] |
+-----+--------------+----------+-------------------+
It is critical that the displayed columns display the data above. There may be additional columns but the data in these columns should match the data in the Gateway's columns. If there is a discrepancy or absence in the toGoid or goidToString row then this article should be executed. Note: next_hi function will be present in a clustered configuration only. If not, please review kb000057321.
The solution is to access MySQL as the gateway user, drop the functions and recreate them. Here are the steps to perform:
Exiting the MySQL prompt and re-executing the SHOW FUNCTION STATUS query should result in the goidToString row being present and correct as prescribed. The Gateway upgrade process can be re-attempted