Thanks Anand for your clarification! I understand the intention now :-)

BTW, what is future plan for the old C++ Scheduler/Scheduler Driver and
also the Java/Python binding? Will we keep supporting them? Or they will be
eventually deprecated in future?


Regards,
Qian Zhang



From:   Anand Mazumdar <[email protected]>
To:     [email protected]
Date:   09/15/2015 11:00
Subject:        Re: Do we still need to add InverseOffer support to Scheduler
            API?



Hi Qian,

We currently don’t intend to move the old C++ Scheduler/Scheduler Driver <
https://github.com/apache/mesos/blob/master/src/sched/sched.cpp>Scheduler
Driver <https://github.com/apache/mesos/blob/master/src/sched/sched.cpp>
interface to use the Mesos V1 API.

If you want to use the new V1 API’s , you can use the low-level C++
Scheduler Library <
https://github.com/apache/mesos/blob/master/src/scheduler/scheduler.cpp>
that speaks the new Call/Event lingo. Joris already pointed you to a very
good example of an existing test using the Inverse Offer functionality :
https://reviews.apache.org/r/37283 <https://reviews.apache.org/r/37283>

Let me know if this resolves your confusion.

-anand


> On Sep 14, 2015, at 7:27 PM, Qian AZ Zhang <[email protected]> wrote:
>
> If we keep the current C++ scheduler API as it is, then I think framework
can never receive inverse offer in its "resourceOffers()" callback, the
reason is, In SchedulerProcess::initialize(), we have the following code:
>     install<ResourceOffersMessage>(
>         &SchedulerProcess::resourceOffers,
>         &ResourceOffersMessage::offers,
>         &ResourceOffersMessage::pids);
> In the above code, only "offers" and "pids" fields of
ResourceOffersMessage are passed into SchedulerProcess::resourceOffers()
when it is invoked, but the "inverse_offers" field of ResourceOffersMessage
is NOT passed into it.
>
>
> Regards,
> Qian Zhang (张乾)
> Developer, IBM Platform Computing
>                Phone: 86-29-68797144 | Tie-Line: 87144
> E-mail: [email protected] <mailto:[email protected]>
> Chat: zhq527725
> “An educated man should know everything about something and something
about everything"
>
>
>
> 陕西省西安市高新区
> 高新六路42号中清大厦3层
> Xian, Shaanxi Province 710075
> China
>
> Guangya Liu ---09/14/2015 23:29:45---Thanks Haosdent and Joris, I see
that the host maintain patch ( https://reviews.apache.org/r/37180/d <
https://reviews.apache.org/r/37180/d>
>
> From:          Guangya Liu <[email protected]>
> To:            [email protected]
> Date:          09/14/2015 23:29
> Subject:               Re: Do we still need to add InverseOffer support to
Scheduler API?
>
>
>
> Thanks Haosdent and Joris, I see that the host maintain patch (
> https://reviews.apache.org/r/37180/diff/8#0 <
https://reviews.apache.org/r/37180/diff/8#0>) is also sending
> "ResourceOffersMessage" to framework so the framework can still use
> "ResourceOffer" to handle the inverseOffer when framework got the
> inverseOffer, right?
>
> Thanks,
>
> Guangya
>
> On Mon, Sep 14, 2015 at 11:15 PM, haosdent <[email protected]> wrote:
>
> > Hi @Guangya Liu. V1 API support both mesos call frameworks or
frameworks
> > call mesos.
> >
> >
> >
https://docs.google.com/document/d/1pnIY_HckimKNvpqhKRhbc9eSItWNFT-priXh_urR-T0/edit
 <
https://docs.google.com/document/d/1pnIY_HckimKNvpqhKRhbc9eSItWNFT-priXh_urR-T0/edit
>
> >
> > And I think Java or Python API libraries would be deprecated and more
out
> > to a better place to maintain in the future(Also maybe support more
> > languages through V1 API). Continue to add them to old APIs may be not
a
> > good choice.
> >
> > On Mon, Sep 14, 2015 at 11:02 PM, Guangya Liu <[email protected]>
wrote:
> >
> > > Hi Joris,
> > >
> > > I think that those APIs are still needed as HTTP API is mainly
initiated
> > by
> > > operator, the current call for HTTP API including TEARDOWN, ACCEPT,
> > > DECLINE, REVIVE, KILL, SHUTDOWN etc, but the offer related operations
> > such
> > > as offer and InverserOffers are initiatedby mesos master, the master
need
> > > notify the framework for those offers via the callbacks. Comments?
> > >
> > > Thanks,
> > >
> > > Guangya
> > >
> > > On Mon, Sep 14, 2015 at 10:42 PM, Joris Van Remoortere <
> > > [email protected]>
> > > wrote:
> > >
> > > > Hi Qian,
> > > >
> > > > There is no current plan to add this to the old API. Those tickets
were
> > > > created pre-V1 API.
> > > > Currently the goal is to encourage developers to use the V1 API to
have
> > > > access to new features such as maintenance primitives.
> > > >
> > > > Joris
> > > >
> > > > On Mon, Sep 14, 2015 at 10:22 AM, Qian AZ Zhang
<[email protected]>
> > > > wrote:
> > > >
> > > > >
> > > > >
> > > > > Hi,
> > > > >
> > > > > In the maintenance epic (MESOS-1474), I see there are 3 tasks
created
> > > to
> > > > > add InverseOffer support to Scheduler API:
> > > > >         MESOS-2063      Add InverseOffer to C++ Scheduler API
> > > > >         MESOS-2064      Add InverseOffer to Java Scheduler API
> > > > >         MESOS-2065      Add InverseOffer to Python Scheduler API
> > > > >
> > > > > I think we have already supported Schedule HTTP API, so do we
still
> > > need
> > > > to
> > > > > update the C++ scheduler API (and the Java/Python binding) to
support
> > > > > InverseOffer? If so, I think we may need to update all the
example
> > > > > frameworks as well. Take C++ scheduler API as an example, we may
need
> > > to
> > > > > add a new callback inverseResourceOffers() in the Scheduler
class,
> > and
> > > > each
> > > > > example framework's scheduler needs to implement it.
> > > > >
> > > > >
> > > > > Regards,
> > > > > Qian Zhang
> > > >
> > >
> >
> >
> >
> > --
> > Best Regards,
> > Haosdent Huang
> >
>

Reply via email to