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

Include in the DefaultExecutor logs the output of timed out checks

    XMLWordPrintableJSON

    Details

      Description

      Once the patches for https://issues.apache.org/jira/browse/MESOS-7861 land, the output of successful and failed checks will be included in the DefaultExecutor logs, but the output of timed out checks won't be included.

      Right now the checker process sends the LAUNCH_NESTED_CONTAINER_SESSION requests using streamed=false. Libprocess will then convert the streaming response into a body (non-streamed) response, completing the future returned by Connection::send() only once the request has been fully received. The checker will then read the whole process output from the response's body and log it.

      However when a check times out, the checker will close the connection before the full response is received. So the future returned by Connection::send() will be failed, and the checker won't have access to the response.

      In order to log the output of timed out checks, we will probably need to make the checker send the launch request with streamed=true, and then make it read the check output from the pipe of the streamed response.

      If we do that, we should probably turn the Future<tuple<string, string>> getProcessIOData(...) method from api_tests.cpp into a helper method and use it in checker_process.cpp.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                gkleiman Gastón Kleiman
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated: