Benjamin Mahler created MESOS-1975:
--------------------------------------
Summary: Module manager causes make check failure for annotated
mesos versions.
Key: MESOS-1975
URL: https://issues.apache.org/jira/browse/MESOS-1975
Project: Mesos
Issue Type: Bug
Affects Versions: 0.21.0
Reporter: Benjamin Mahler
Assignee: Kapil Arya
Priority: Blocker
For annotated versions of mesos (e.g. 0.21.0-rc1), the module manager fails a
CHECK:
{code}
Try<Version> mesosVersion = Version::parse(MESOS_VERSION);
CHECK_SOME(mesosVersion);
{code}
This was a known limitation of stout's version utility:
{code}
// This class provides convenience routines for version checks.
// TODO(karya): Consider adding support for more than 3 components,
// and compatibility operators.
// TODO(karya): Add support for labels and build metadata. Consider
// semantic versioning (http://semvar.org/) for specs.
class Version
{code}
As a result make check will fail for annotated versions:
{noformat}
F1023 08:28:41.595279 46919 manager.cpp:134] Check failed:
!mesosVersion.isError()
{noformat}
[~karya] can you take a look? I would recommend that in the interim of better
Version parsing support, we use the same hack as was done in os::release, to
protect these calls:
{noformat}
grep -R Version::parse src
src/module/manager.cpp: Try<Version> mesosVersion =
Version::parse(MESOS_VERSION);
src/module/manager.cpp: Try<Version> minimumVersion =
Version::parse(kindToVersion[moduleBase->kind]);
src/module/manager.cpp: Try<Version> moduleMesosVersion =
Version::parse(moduleBase->mesosVersion);
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)