-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61715/
-----------------------------------------------------------
(Updated Aug. 29, 2017, 6:07 p.m.)
Review request for Ambari, Dmytro Grinenko and Vitalyi Brodetskyi.
Changes
-------
Returned to simpler regex because Dmytro Grinenko already fixed striping out of
package architecture
Summary (updated)
-----------------
package_regex in get_package_from_available() can match wrong pkg
Bugs: AMBARI-21744
https://issues.apache.org/jira/browse/AMBARI-21744
Repository: ambari
Description
-------
Due to the issue with regex (missing ^ and $ boundaries),
resource_management.libraries.script.script.Script#get_package_from_available
may return wrong package.
{code}
>>> list=['hbase_3_0_0_0_229-master', 'hbase_3_0_0_0_229']
>>> if re.match('hbase_(\d|_)+', 'hbase_3_0_0_0_229-master'):
... print 'YES'
...
YES
>>> if re.match('hbase_(\d|_)+', 'hbase_3_0_0_0_229'):
... print 'YES'
...
YES
{code}
In this case, the first package name from a list of available packages will be
returned.
The impact of bug is that we may install a wrong package if it's simillary
named and goes first at list. Patch is a single-line fix.
Diffs (updated)
-----
ambari-common/src/main/python/resource_management/libraries/script/script.py
313b666878
ambari-server/src/test/python/custom_actions/TestInstallPackages.py
de2cced554
Diff: https://reviews.apache.org/r/61715/diff/3/
Changes: https://reviews.apache.org/r/61715/diff/2-3/
Testing (updated)
-------
mvn clean test
Thanks,
Dmitro Lisnichenko