升级WSO2 IS为KM和API时发生错误

时间:2019-11-26 11:17:03

标签: wso2 wso2-am

我尝试按照说明将WSO2 IS作为KM从5.6.0升级到5.7.0,将API Manager从2.5.0升级到2.6.0,并按照以下说明进行操作: https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release+when+WSO2+IS+is+the+Key+Manager

https://docs.wso2.com/display/IS570/Upgrading+from+the+Previous+Release https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release

在说明中没有提到我需要再次从/dbscripts/apimgt/mysql.sql将SQl脚本导入到数据库apimgt中,原因是5.7.0 IS是因为KM在该数据库中具有的表比5.6.0版本还多。 / p>

IS升级期间,我的日志中有错误:

 ERROR {org.wso2.carbon.is.migration.service.SchemaMigrator} -  Error occurred while executing SQL script for migrating database
    java.lang.Exception: Error occurred while executing :   CREATE INDEX IDX_RID ON IDN_UMA_RESOURCE (RESOURCE_ID)

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate key name 'IDX_RID'

ERROR {org.wso2.carbon.is.migration.service.SchemaMigrator} -  Error occurred while executing SQL script for migrating database
    java.lang.Exception: Error occurred while executing :   CREATE INDEX IDX_SP_TEMPLATE ON SP_TEMPLATE (TENANT_ID, NAME)

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate key name 'IDX_SP_TEMPLATE'

ERROR {org.wso2.carbon.is.migration.service.SchemaMigrator} -  Error occurred while executing SQL script for migrating database
    java.lang.Exception: Error occurred while executing :  ALTER TABLE CM_PURPOSE ADD COLUMN PURPOSE_GROUP VARCHAR(255) NOT NULL, ADD COLUMN GROUP_TYPE VARCHAR(255) NOT NULL, DROP KEY NAME, ADD UNIQUE KEY (NAME, TENANT_ID, PURPOSE_GROUP, GROUP_TYPE)

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate column name 'PURPOSE_GROUP'

INFO {org.wso2.carbon.is.migration.service.v570.migrator.OAuthDataMigrator} -   WSO2 Product Migration Service Task : Migration starting on OAuth2 access token table.
    java.lang.OutOfMemoryError: GC overhead limit exceeded
    Dumping heap to /usr/lib64/wso2/wso2is-km-5.7.0/repository/logs/heap-dump.hprof ...
    Unable to create /usr/lib64/wso2/wso2is-km-5.7.0/repository/logs/heap-dump.hprof: File exists
    ERROR {org.wso2.carbon.is.migration.MigrationClientImpl} -  Migration process was stopped.
    java.lang.OutOfMemoryError: GC overhead limit exceeded

尽管有错误,但我在没有错误的情况下启动API-M后却启动了IS,但是我的API并未迁移。

我使用MariaDB 5.5。

IS的问题是什么?为什么不迁移API?

1 个答案:

答案 0 :(得分:1)

所以我不应该执行从2.1到2.4的步骤,是吗?但是在升级IS期间出现错误怎么办?

这意味着,您是否没有执行https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release#c130adc044364015ae336f584909e3ac中的步骤2.1至2.4?

如果您已经按照https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release+when+WSO2+IS+is+the+Key+Manager#250中提到的步骤进行操作,则只需要跳过https://docs.wso2.com/display/AM260/Upgrading+from+the+Previous+Release#c130adc044364015ae336f584909e3ac中的2.4步骤。

还请确保已在 migration-config.yaml 文件中正确指定了以下版本。

migrationEnable: "true"

currentVersion: "5.6.0"

migrateVersion: "5.7.0"

注意:您不需要手动创建表。