-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/43429/
-----------------------------------------------------------

Review request for Ambari, Jonathan Hurley, Nate Cole, and Robert Nettleton.


Bugs: AMBARI-14994
    https://issues.apache.org/jira/browse/AMBARI-14994


Repository: ambari


Description
-------

While attempting to upgrade from Ambari 2.2.x to Ambari 2.4.0, the following 
error is encountered:

```
Upgrading database schema
Error output from schema upgrade command:
Exception in thread "main" org.apache.ambari.server.AmbariException: ERROR: 
insert or update on table "permission_roleauthorization" violates foreign key 
constraint "fk_permission_roleauth_aid"
  Detail: Key (authorization_id)=(CLUSTER.MANAGE_CONFIG_GROUPS) is not present 
in table "roleauthorization".
        at 
org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeDMLUpdates(SchemaUpgradeHelper.java:233)
        at 
org.apache.ambari.server.upgrade.SchemaUpgradeHelper.main(SchemaUpgradeHelper.java:307)
Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table 
"permission_roleauthorization" violates foreign key constraint 
"fk_permission_roleauth_aid"
  Detail: Key (authorization_id)=(CLUSTER.MANAGE_CONFIG_GROUPS) is not present 
in table "roleauthorization".
        at 
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2161)
        at 
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1890)
        at 
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
        at 
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:559)
        at 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:403)
        at 
org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:331)
        at 
org.apache.ambari.server.orm.DBAccessorImpl.insertRow(DBAccessorImpl.java:635)
        at 
org.apache.ambari.server.upgrade.UpgradeCatalog230.createPermissionRoleAuthorizationMap(UpgradeCatalog230.java:317)
        at 
org.apache.ambari.server.upgrade.UpgradeCatalog230.executeDMLUpdates(UpgradeCatalog230.java:129)
        at 
org.apache.ambari.server.upgrade.AbstractUpgradeCatalog.upgradeData(AbstractUpgradeCatalog.java:659)
        at 
org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeDMLUpdates(SchemaUpgradeHelper.java:230)
        ... 1 more
```

# Solution
Add the missing record during the upgrade process (which should have be added, 
but apparently accidentally left out)


Diffs
-----

  
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog230.java
 2d6fe03 

Diff: https://reviews.apache.org/r/43429/diff/


Testing
-------

Manually tested upgrade


Thanks,

Robert Levas

Reply via email to