-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/60475/
-----------------------------------------------------------
Review request for Ambari, Attila Doroszlai, Alejandro Fernandez, and Sid Wagle.
Bugs: AMBARI0-21358
https://issues.apache.org/jira/browse/AMBARI0-21358
Repository: ambari
Description
-------
When creating an upgrade in Ambari 2.5.x, the request appears as follows:
{code}
POST api/v1/clusters/c1/upgrades
{
"Upgrade": {
"repository_version": "2.6.0.0-334",
"skip_failures": "true",
"skip_service_check_failures": "true",
"skip_prerequisite_checks": "true",
"upgrade_type": "NON_ROLLING",
"direction": "UPGRADE"
}
}
{code}
The only identifier for the repository is the repo version. This forces the
query to assume that the repository has the same name as the repository
currently installed for the cluster. When going between stack vendors, this is
incorrect:
STR:
- Install BigInsights 4.2.0 or 4.2.5
- Upgrade to Ambari 2.5.2
- Register HDP 2.6 and try to upgrade
The backend will look for {{BigInsights-2.6.0.0-1234}} instead of
{{HDP-2.6.0.0-1234}}. A quick workaround is to fallback to a version-only
search when the repository is not found.
The fix for this is to allow the web client to pass the stack name in addition
to the version. A repository ID can also be specified instead of the stack
name/version.
Additionally, the {{upgrade}} itself must track the to/from repo versions
instead of strings:
{code}
CREATE TABLE upgrade (
upgrade_id BIGINT NOT NULL,
cluster_id BIGINT NOT NULL,
request_id BIGINT NOT NULL,
from_repo_version_id BIGINT NOT NULL,
to_repo_version_id BIGINT NOT NULL,
...
{code}
Diffs
-----
ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java
26c39fc3a6
ambari-server/src/main/java/org/apache/ambari/server/alerts/ComponentVersionAlertRunnable.java
7dfbe47c4b
ambari-server/src/main/java/org/apache/ambari/server/checks/PreviousUpgradeCompleted.java
fe57ae4051
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
6e75ab6653
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
71c0b804c1
ambari-server/src/main/java/org/apache/ambari/server/orm/entities/UpgradeEntity.java
152fde1d2a
ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckAction.java
7705c7d017
ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/FinalizeUpgradeAction.java
e73651ecf1
ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/UpdateDesiredStackAction.java
5b592c7cbb
ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java
56c2b369b1
ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeContext.java
4042089a53
ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeContextFactory.java
4f15ee2af8
ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java
4cdccdd2b0
ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
a9e33f0016
ambari-server/src/main/java/org/apache/ambari/server/state/services/RetryUpgradeActionService.java
584ce9884f
ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/HostOrderGrouping.java
97864a67da
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog220.java
d806ddef2f
ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql c99326e159
ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql be0bdd80ff
ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql b0f0d9f108
ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql c680a66f68
ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql c6524b0640
ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 64836451cb
ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/UpgradeEventCreatorTest.java
48225842b5
ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderTest.java
1e888c10f8
Diff: https://reviews.apache.org/r/60475/diff/1/
Testing
-------
Compile errors still in ambari-server/test ... working through those and then
we'll get UTs working in another Jira.
Thanks,
Jonathan Hurley