-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/35764/
-----------------------------------------------------------
Review request for Ambari, Dmitro Lisnichenko, Jonathan Hurley, and Nate Cole.
Repository: ambari
Description
-------
When installing bits of a new repo to perform an RU, if the repo version does not contain
a build number, then the actual_version has to be calculated.
The problem is that this information can only be retrieved by calculating the delta of the
versions when calling "hdp-select versions", so the only the first time will return a value.
If the script is killed, then the actual_version will never be calculated and returned to
the server.
For this reason, the package installer must tolerate receiving a SIGINT or SIGTERM, and calculate
the actual_version. Further, it helps to store it in a file, in case that the response or
something upstream results in another failure.
Diffs
-----
ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/datanode.py
bb3faaa
ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/datanode_upgrade.py
5f7ac90
ambari-server/src/main/resources/custom_actions/scripts/install_packages.py ffe9815
Diff: https://reviews.apache.org/r/35764/diff/
Testing
-------
Verified that the following works by decreasing the install package timeout to 150 secs, and
trying the following combinations
Repo version including build number:
* Failure during installing the first package. Because actual_version was already set, did
not need to call "hdp-select versions".
* Failure after installing the first package, retries eventually passed.
Repo version without build numbner:
* Failure during installing the first package. Because actual_version was none, it tried calling
"hdp-select versions" but the newer version was not yet installed, so was allowed to retry.
* Failure after installing the first package. Beacuse "hdp-select versions" reported a value
in the delta, it was saved to the text file. Since it timed out, was allowed to retry.
* Eventually, it passed.
Still need to fix unit tests.
Thanks,
Alejandro Fernandez
|