-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/45519/#review126305
-----------------------------------------------------------
Something doesn't seem right with this Jira. We should always be using the
desired version when restarting a service. This would prevent the situation to
begin with.
But let's say we do nothing; then the following fields are affected:
```
"commandParams": {
"version": "2.3.0.0-2557",
},
```
```
"hostLevelParams": {
"current_version": "2.3.0.0-2557",
```
But these values are only used in the context of an upgrade request. If an
upgrade is suspended and a restart is issues, we do not use these values. So,
it should have no impact on anything.
- Jonathan Hurley
On March 30, 2016, 10:07 p.m., Alejandro Fernandez wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/45519/
> -----------------------------------------------------------
>
> (Updated March 30, 2016, 10:07 p.m.)
>
>
> Review request for Ambari, Dmytro Grinenko, Dmitro Lisnichenko, Jonathan
> Hurley, Jayush Luniya, and Nate Cole.
>
>
> Bugs: AMBARI-15637
> https://issues.apache.org/jira/browse/AMBARI-15637
>
>
> Repository: ambari
>
>
> Description
> -------
>
> Currently, if RU/EU is paused, then restarting services manually will use the
> version whose state is CURRENT. This means that services may be restarted on
> the wrong version, preventing Ambari from correctly Finalizing the upgrade.
> Instead, the logic should be as follows during Upgrade:
> RU: always use to_version
> EU: if haven't completed the action "UPDATE_DESIRED_STACK_ID", then use the
> from_version, otherwise, use the to_version.
>
> During Downgrade, both should use the original version, which is actually the
> to_version column in the upgrade table.
>
> THIS CODE REVIEW IS FOR BRANCH-2.2, I WILL CREATE A DIFFERENT ONE FOR TRUNK.
>
>
> Diffs
> -----
>
>
> ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
> 1767b02
>
> ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
> dd66dcc
>
> ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterStackVersionResourceProvider.java
> ec49364
>
> ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
> ef8a8d4
>
> ambari-server/src/main/java/org/apache/ambari/server/orm/dao/HostRoleCommandDAO.java
> 5c8b7f3
>
> ambari-server/src/main/java/org/apache/ambari/server/orm/dao/UpgradeDAO.java
> 06f6ac1
>
> ambari-server/src/main/java/org/apache/ambari/server/orm/entities/HostRoleCommandEntity.java
> a12b204
>
> ambari-server/src/main/java/org/apache/ambari/server/orm/entities/UpgradeEntity.java
> fd866a1
> ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java
> b49f566
>
> ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
> 3493508
>
> Diff: https://reviews.apache.org/r/45519/diff/
>
>
> Testing
> -------
>
> Verified it worked
>
> Assertions:
> A: restart a service (should have version parameter,
> B: run a service check (no version needed)
> C: run HDFS Rebalance (should have version parameter).
>
> Test Cases:
> 1. Before stack upgrade, run A, B, and C, which should all use the current
> version
> 2. EU, immediately click pause. Run A, B, and C, which should use the
> original version if it exists
> 3. EU, after the services have been stopped and the stack has been upgraded.
> Run A, B, and C, which should use the new version since the services are now
> to be started.
> 4. EU, click downgrade and pause. Run A, B, C, which should use the original
> version.
> 5. RU, click pause whenever a manual task occurs. Run A, B, and C, which
> should use the destination version.
> 6. RU, click downgrade. Run A, B, and C, which should use the original
> version.
>
> Unit Tests passed,
> [INFO]
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 01:10 h
> [INFO] Finished at: 2016-03-30T19:07:04-07:00
> [INFO] Final Memory: 130M/4052M
> [INFO]
> ------------------------------------------------------------------------
>
>
> Thanks,
>
> Alejandro Fernandez
>
>