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

JSON serialization should not omit empty arrays in HTTP APIs

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Reviewable
    • Major
    • Resolution: Unresolved
    • None
    • None
    • HTTP API

    Description

      When using the JSON content type with the HTTP APIs, a repeated protobuf field is omitted entirely from the JSON serialization of the message. For example, this is a response to the GetTasks call:

      {
        "get_tasks": {
          "tasks": [{...}]
        },
        "type": "GET_TASKS"
      }
      

      I think it would be better to include empty arrays for the other fields of the message (pending_tasks, completed_tasks, etc.). Advantages:

      1. Consistency with the old HTTP endpoints, e.g., /state
      2. Semantically, an empty array is more accurate. The master's response should be interpreted as saying it doesn't know about any pending/completed tasks; that is more accurately conveyed by explicitly including an empty array, not by omitting the key entirely.

      NOTE: The asV1Protobuf copy needs to also be updated.

      Attachments

        Issue Links

          Activity

            People

              bmahler Benjamin Mahler
              neilc Neil Conway
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated: