Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-1975

Module manager causes make check failure for annotated mesos versions.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 0.21.0
    • 0.21.0
    • None
    • None

    Description

      For annotated versions of mesos (e.g. 0.21.0-rc1), the module manager fails a CHECK:

        Try<Version> mesosVersion = Version::parse(MESOS_VERSION);
        CHECK_SOME(mesosVersion);
      

      This was a known limitation of stout's version utility:

      // 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
      

      As a result make check will fail for annotated versions:

       F1023 08:28:41.595279 46919 manager.cpp:134] Check failed: !mesosVersion.isError()
      

      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:

      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);
      

      Attachments

        Activity

          People

            karya Kapil Arya
            bmahler Benjamin Mahler
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: