-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/63961/
-----------------------------------------------------------
Review request for Ambari, Jonathan Hurley and Nate Cole.
Bugs: AMBARI-22469
https://issues.apache.org/jira/browse/AMBARI-22469
Repository: ambari
Description
-------
Ambari upgrade would fail for all Ambari view servers.
Steps to reproduce:
1. Install Ambari 2.5.2 and setup it as view server. (it you don't set up it up
as view server also it fails)
2. now install 2.6.0
3. run ambari-server upgrade
it fails out with below exception.
{noformat}
ERROR: Error executing schema upgrade, please check the server logs.
ERROR: Error output from schema upgrade command:
ERROR: Exception in thread "main" org.apache.ambari.server.AmbariException:
Unable to find any CURRENT repositories.
at
org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeUpgrade(SchemaUpgradeHelper.java:203)
at
org.apache.ambari.server.upgrade.SchemaUpgradeHelper.main(SchemaUpgradeHelper.java:418)
Caused by: org.apache.ambari.server.AmbariException: Unable to find any CURRENT
repositories.
at
org.apache.ambari.server.upgrade.UpgradeCatalog260.getCurrentVersionID(UpgradeCatalog260.java:510)
at
org.apache.ambari.server.upgrade.UpgradeCatalog260.executeDDLUpdates(UpgradeCatalog260.java:194)
at
org.apache.ambari.server.upgrade.AbstractUpgradeCatalog.upgradeSchema(AbstractUpgradeCatalog.java:923)
at
org.apache.ambari.server.upgrade.SchemaUpgradeHelper.executeUpgrade(SchemaUpgradeHelper.java:200)
... 1 more
ERROR: Ambari server upgrade failed. Please look at
/var/log/ambari-server/ambari-server.log, for more details.
ERROR: Exiting with exit code 11.
REASON: Schema upgrade failed.
{noformat}
For some reason we are checking cluster_version table entries and throwing up
above exception.
{noformat}
In UpgradeCatalog260.java
public int getCurrentVersionID() throws AmbariException, SQLException {
List<Integer> currentVersionList =
dbAccessor.getIntColumnValues(CLUSTER_VERSION_TABLE, REPO_VERSION_ID_COLUMN,
new String[]{STATE_COLUMN}, new String[]{CURRENT}, false);
if (currentVersionList.isEmpty()) {
throw new AmbariException("Unable to find any CURRENT repositories.");
} else if (currentVersionList.size() != 1) {
throw new AmbariException("The following repositories were found to be
CURRENT: ".concat(StringUtils.join(currentVersionList, ",")));
}
return currentVersionList.get(0);
}
{noformat}
Diffs
-----
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog260.java
96ce807d5f
Diff: https://reviews.apache.org/r/63961/diff/1/
Testing
-------
pending check on live cluster
Thanks,
Dmitro Lisnichenko