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)

Reply via email to