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

Resource provider manager assumes all operations are triggered by frameworks

Attach filesAttach ScreenshotVotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      When the agent tries to apply an operation to resource provider resources, it invokes ResourceProviderManager::applyOperation which in turn invokes ResourceProviderManagerProcess::applyOperation. That function currently assumes that the received message contains a valid FrameworkID,

       void ResourceProviderManagerProcess::applyOperation(
            const ApplyOperationMessage& message)                                                                                                                                                                                                     {
          const Offer::Operation& operation = message.operation_info();                                                                                                                                                                                 
          const FrameworkID& frameworkId = message.framework_id(); // `framework_id` is `optional`.
      

      Since FrameworkID is not a trivial proto types, but instead one with a required field value, the message composed with the frameworkId below cannot be serialized which leads to a failure below which in turn triggers a CHECK failure in the agent's function interfacing with the manager.

      A typical scenario where we would want to support operator API calls here is to destroy leftover persistent volumes or reservations.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            nfnt Jan Schlicht
            bbannier Benjamin Bannier
            Benjamin Bannier Benjamin Bannier
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Agile

                Completed Sprints:
                Storage R11 Sprint 40 ended 28/Mar/19
                Storage: RI-12 Sprint 43 ended 10/Apr/19
                View on Board

                Slack

                  Issue deployment