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

Improve HTTP parser to support HTTP/2 messages.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None

    Description

      We currently use http-parser to parse HTTP messages. This parser does not work with HTTP/2 requests and responses which as an issue as curl enables HTTP/2 by default for HTTPS connections since its version 7.47.

      The issue has been discovered in some of our tests (e.g. ProvisionerDockerTest) where it crashes with the message Failed to decode HTTP responses: Decoding failed. See MESOS-8335 for more details.

      Possible long-term solutions:

      • Upgrade the parser to be compatible with HTTP/2 messages. http-parser has not been updated regularly this past year in favor of nghttp2 which has a much broader scope. There is no equivalent of http-parser for HTTP/2 yet.
      • Test which version of curl is used at startup and report an error if the version is >= 7.47 and the flag --http1.0 is not used in curl (more details regarding this flag are available here.

      In the meantime, we are upgrading our testing machines using a recent version of curl to run with the flag --http1.0 (MESOS-8335).

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              ArmandGrillet Armand Grillet
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: