Mesos
  1. Mesos
  2. MESOS-8

Maintain a history of executed frameworks/tasks and show it on the web UI

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.10.0
    • Component/s: None
    • Labels:
      None

      Description

      This is kind of a big task but ultimately important for cluster management. See https://github.com/mesos/mesos/issues#issue/39 for previous discussion on GitHub.

        Activity

        Hide
        Thomas Marshall added a comment -

        From Github it looks like a lot of work was done on this before, but it got rolled back at some point, so I'm interested in working on it.

        I'll look into it over the next few days and formulate some ideas, but does anyone with more experience have some pointers, in particular why the last approach was insufficient and got reverted? (I'm an undergraduate who just started working in the Rad Lab at Berkeley, so I'm pretty new to Mesos).

        Show
        Thomas Marshall added a comment - From Github it looks like a lot of work was done on this before, but it got rolled back at some point, so I'm interested in working on it. I'll look into it over the next few days and formulate some ideas, but does anyone with more experience have some pointers, in particular why the last approach was insufficient and got reverted? (I'm an undergraduate who just started working in the Rad Lab at Berkeley, so I'm pretty new to Mesos).
        Hide
        Benjamin Hindman added a comment -

        To start, I am not interested in using sqlite. I'd prefer, at least for now, to do a "best effort" task history. This seems to be a sweet spot between complexity and value.

        In particular, I think the right approach is to add a data structure to the master that stores a cache of the last N tasks that have reached a terminal state (i.e., finished, failed, lost, etc). Then these tasks can be exposed through the JSON callbacks to the webui, and the webui can be updated to show them.

        For a first pass, I think fixing the size of the cache is the right approach ... when the cache is full, the oldest item is evicted and the new one inserted. We can consider adding something more complex later.

        It should be clear that this approach will mean that after a master failure/failover this cache of tasks will be gone. Again, provided master failure/failover is uncommon we'll still get a lot of value from just this, without adding the complexity of storing these tasks in something like ZooKeeper (or doing something else like it).

        Show
        Benjamin Hindman added a comment - To start, I am not interested in using sqlite. I'd prefer, at least for now, to do a "best effort" task history. This seems to be a sweet spot between complexity and value. In particular, I think the right approach is to add a data structure to the master that stores a cache of the last N tasks that have reached a terminal state (i.e., finished, failed, lost, etc). Then these tasks can be exposed through the JSON callbacks to the webui, and the webui can be updated to show them. For a first pass, I think fixing the size of the cache is the right approach ... when the cache is full, the oldest item is evicted and the new one inserted. We can consider adding something more complex later. It should be clear that this approach will mean that after a master failure/failover this cache of tasks will be gone. Again, provided master failure/failover is uncommon we'll still get a lot of value from just this, without adding the complexity of storing these tasks in something like ZooKeeper (or doing something else like it).
        Hide
        Thomas Marshall added a comment -

        So, my initial thought was that we wouldn't want to leave the entire framework/task objects lying around in a cache because they contain a lot of extra information that we don't really need for the webui, so I've been making a std::map<string, string> to store the info from the framework that's actually going to be displayed. The problem I'm running into, though, is that not all the info fits into a map easily (ex: date info, logs). Its still probably possible to make this work, but I'm not sure if there's a better approach. Any thoughts? Thanks.

        Show
        Thomas Marshall added a comment - So, my initial thought was that we wouldn't want to leave the entire framework/task objects lying around in a cache because they contain a lot of extra information that we don't really need for the webui, so I've been making a std::map<string, string> to store the info from the framework that's actually going to be displayed. The problem I'm running into, though, is that not all the info fits into a map easily (ex: date info, logs). Its still probably possible to make this work, but I'm not sure if there's a better approach. Any thoughts? Thanks.
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2763/
        -----------------------------------------------------------

        (Updated 2011-11-14 23:03:35.602242)

        Review request for mesos and Andy Konwinski.

        Summary
        -------

        Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs


        src/master/http.cpp 47caf48
        src/master/master.hpp fdacf36
        src/master/master.cpp b6cfde7
        src/webui/master/framework.tpl 0f41349
        src/webui/master/index.tpl 16e3446

        Diff: https://reviews.apache.org/r/2763/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/ ----------------------------------------------------------- (Updated 2011-11-14 23:03:35.602242) Review request for mesos and Andy Konwinski. Summary ------- Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs src/master/http.cpp 47caf48 src/master/master.hpp fdacf36 src/master/master.cpp b6cfde7 src/webui/master/framework.tpl 0f41349 src/webui/master/index.tpl 16e3446 Diff: https://reviews.apache.org/r/2763/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/http.cpp, line 80

        > <https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line80>

        >

        > I know this isn't your stuff, but let's change this to registered_time (update everywhere else as appropriate) and let's also add reregistered_time (which will only be the last reregister, but that is okay).

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/http.cpp, line 81

        > <https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line81>

        >

        > Now let's change this to unregistered_time. And as long as we are here, let's go ahead and add whether or not this framework is active too (framework.active).

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/http.cpp, line 97

        > <https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line97>

        >

        > Kill tab.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/http.cpp, line 100

        > <https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line100>

        >

        > Let's use snake case here ( s/completedTasks/completed_tasks) just to be consistent with the rest of the JSON we are sending. If there is some reason to be using camel case instead (JSON standards, best practices, etc) let us know but then let's change it all!

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/http.cpp, line 259

        > <https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line259>

        >

        > Kill tab.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/http.cpp, line 262

        > <https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line262>

        >

        > s/completedFrameworks/completed_frameworks

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.hpp, line 218

        > <https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line218>

        >

        > Since this is effectively a constant for now, lets stick it in master/constants.hpp as MAX_COMPLETED_FRAMEWORKS. You can add a TODO there to make it configurable later.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.hpp, line 402

        > <https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line402>

        >

        > Space between 'if' and '('.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/webui/master/index.tpl, line 101

        > <https://reviews.apache.org/r/2763/diff/1/?file=56813#file56813line101>

        >

        > Why was this necessary?

        I think this was an artifact left over from the fact that I started working on an old version. Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/webui/master/index.tpl, line 240

        > <https://reviews.apache.org/r/2763/diff/1/?file=56813#file56813line240>

        >

        > Again, what's going on here? If I look above at model(const Offer& offer) I don't see any code that is adding a 'slaves' field.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/webui/master/index.tpl, lines 281-282

        > <https://reviews.apache.org/r/2763/diff/1/?file=56813#file56813line281>

        >

        > Probably don't need that right?

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.hpp, line 478

        > <https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line478>

        >

        > s/completedTime/unregisteredTime

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.hpp, line 483

        > <https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line483>

        >

        > Let's stick this in master/constants.hpp too.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.cpp, line 1765

        > <https://reviews.apache.org/r/2763/diff/1/?file=56811#file56811line1765>

        >

        > What happens if we ever set MAX_COMPLETED_TASKS to be 0? Will the task get deleted after calling removeTask suck that we'll segfault when we try and use the task? Try and think about the ownership here. It was more explicit with the delete below, but now the ownership is getting transferred. Maybe it would be easier to store a copy of the completed Task?

        Andy and I agreed that the best solution to this (and to the memory leak problems) was to make a copy of the frameworks and tasks before storing them, and store the new objects themselves rather than pointers.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.cpp, line 1578

        > <https://reviews.apache.org/r/2763/diff/1/?file=56811#file56811line1578>

        >

        > Update this comment since you are no longer deallocating the memory.

        We're making a copy and deleting it now, so this isn't applicable.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.cpp, line 1575

        > <https://reviews.apache.org/r/2763/diff/1/?file=56811#file56811line1575>

        >

        > Memory leak.

        Done.

        On 2011-11-14 20:19:11, Benjamin Hindman wrote:

        > src/master/master.hpp, line 403

        > <https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line403>

        >

        > Probably a memory leak here ... this is where the Task object is supposed to get deallocated right?

        Done.

        • Thomas

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2763/#review3214
        -----------------------------------------------------------

        On 2011-11-14 23:03:35, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2763/

        -----------------------------------------------------------

        (Updated 2011-11-14 23:03:35)

        Review request for mesos and Andy Konwinski.

        Summary

        -------

        Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/master/http.cpp 47caf48

        src/master/master.hpp fdacf36

        src/master/master.cpp b6cfde7

        src/webui/master/framework.tpl 0f41349

        src/webui/master/index.tpl 16e3446

        Diff: https://reviews.apache.org/r/2763/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/http.cpp, line 80 > < https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line80 > > > I know this isn't your stuff, but let's change this to registered_time (update everywhere else as appropriate) and let's also add reregistered_time (which will only be the last reregister, but that is okay). Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/http.cpp, line 81 > < https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line81 > > > Now let's change this to unregistered_time. And as long as we are here, let's go ahead and add whether or not this framework is active too (framework.active). Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/http.cpp, line 97 > < https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line97 > > > Kill tab. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/http.cpp, line 100 > < https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line100 > > > Let's use snake case here ( s/completedTasks/completed_tasks) just to be consistent with the rest of the JSON we are sending. If there is some reason to be using camel case instead (JSON standards, best practices, etc) let us know but then let's change it all! Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/http.cpp, line 259 > < https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line259 > > > Kill tab. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/http.cpp, line 262 > < https://reviews.apache.org/r/2763/diff/1/?file=56809#file56809line262 > > > s/completedFrameworks/completed_frameworks Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.hpp, line 218 > < https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line218 > > > Since this is effectively a constant for now, lets stick it in master/constants.hpp as MAX_COMPLETED_FRAMEWORKS. You can add a TODO there to make it configurable later. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.hpp, line 402 > < https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line402 > > > Space between 'if' and '('. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/webui/master/index.tpl, line 101 > < https://reviews.apache.org/r/2763/diff/1/?file=56813#file56813line101 > > > Why was this necessary? I think this was an artifact left over from the fact that I started working on an old version. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/webui/master/index.tpl, line 240 > < https://reviews.apache.org/r/2763/diff/1/?file=56813#file56813line240 > > > Again, what's going on here? If I look above at model(const Offer& offer) I don't see any code that is adding a 'slaves' field. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/webui/master/index.tpl, lines 281-282 > < https://reviews.apache.org/r/2763/diff/1/?file=56813#file56813line281 > > > Probably don't need that right? Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.hpp, line 478 > < https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line478 > > > s/completedTime/unregisteredTime Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.hpp, line 483 > < https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line483 > > > Let's stick this in master/constants.hpp too. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.cpp, line 1765 > < https://reviews.apache.org/r/2763/diff/1/?file=56811#file56811line1765 > > > What happens if we ever set MAX_COMPLETED_TASKS to be 0? Will the task get deleted after calling removeTask suck that we'll segfault when we try and use the task? Try and think about the ownership here. It was more explicit with the delete below, but now the ownership is getting transferred. Maybe it would be easier to store a copy of the completed Task? Andy and I agreed that the best solution to this (and to the memory leak problems) was to make a copy of the frameworks and tasks before storing them, and store the new objects themselves rather than pointers. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.cpp, line 1578 > < https://reviews.apache.org/r/2763/diff/1/?file=56811#file56811line1578 > > > Update this comment since you are no longer deallocating the memory. We're making a copy and deleting it now, so this isn't applicable. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.cpp, line 1575 > < https://reviews.apache.org/r/2763/diff/1/?file=56811#file56811line1575 > > > Memory leak. Done. On 2011-11-14 20:19:11, Benjamin Hindman wrote: > src/master/master.hpp, line 403 > < https://reviews.apache.org/r/2763/diff/1/?file=56810#file56810line403 > > > Probably a memory leak here ... this is where the Task object is supposed to get deallocated right? Done. Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/#review3214 ----------------------------------------------------------- On 2011-11-14 23:03:35, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/ ----------------------------------------------------------- (Updated 2011-11-14 23:03:35) Review request for mesos and Andy Konwinski. Summary ------- Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/master/http.cpp 47caf48 src/master/master.hpp fdacf36 src/master/master.cpp b6cfde7 src/webui/master/framework.tpl 0f41349 src/webui/master/index.tpl 16e3446 Diff: https://reviews.apache.org/r/2763/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2763/
        -----------------------------------------------------------

        (Updated 2011-11-15 00:54:00.480771)

        Review request for mesos and Andy Konwinski.

        Changes
        -------

        Uploaded a new diff reflecting the changes requested from the first version.

        Summary
        -------

        Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/master/master.hpp fdacf36
        src/master/master.cpp b6cfde7
        src/webui/master/framework.tpl 0f41349
        src/webui/master/index.tpl 16e3446
        src/master/constants.hpp db82177
        src/master/http.cpp 47caf48

        Diff: https://reviews.apache.org/r/2763/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/ ----------------------------------------------------------- (Updated 2011-11-15 00:54:00.480771) Review request for mesos and Andy Konwinski. Changes ------- Uploaded a new diff reflecting the changes requested from the first version. Summary ------- Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/master/master.hpp fdacf36 src/master/master.cpp b6cfde7 src/webui/master/framework.tpl 0f41349 src/webui/master/index.tpl 16e3446 src/master/constants.hpp db82177 src/master/http.cpp 47caf48 Diff: https://reviews.apache.org/r/2763/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2763/
        -----------------------------------------------------------

        (Updated 2011-11-15 00:59:14.175800)

        Review request for mesos and Andy Konwinski.

        Changes
        -------

        Fixed some minor bugs with the second patch.

        Summary
        -------

        Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/webui/master/index.tpl 16e3446
        src/master/constants.hpp db82177
        src/master/http.cpp 47caf48
        src/master/master.hpp fdacf36
        src/master/master.cpp b6cfde7
        src/webui/master/framework.tpl 0f41349

        Diff: https://reviews.apache.org/r/2763/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/ ----------------------------------------------------------- (Updated 2011-11-15 00:59:14.175800) Review request for mesos and Andy Konwinski. Changes ------- Fixed some minor bugs with the second patch. Summary ------- Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/webui/master/index.tpl 16e3446 src/master/constants.hpp db82177 src/master/http.cpp 47caf48 src/master/master.hpp fdacf36 src/master/master.cpp b6cfde7 src/webui/master/framework.tpl 0f41349 Diff: https://reviews.apache.org/r/2763/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2763/#review3414
        -----------------------------------------------------------

        src/master/constants.hpp
        <https://reviews.apache.org/r/2763/#comment7643>

        This should probably default to 1000 instead of 100, but I'm assuming that Task objects are relatively small so the master could hold 100,000's (i.e. 1000 each for 100's of FWs) of them in memory without worrying too much.

        Also, since its semantics are slightly different than the other constant you added, please give it a more descriptive name like MAX_COMPLETED_TASKS_PER_FRAMEWORK

        src/master/master.cpp
        <https://reviews.apache.org/r/2763/#comment7649>

        I don't think you need this temporary variable here. Just do push_back(*framework).

        • Andy

        On 2011-11-15 00:59:14, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2763/

        -----------------------------------------------------------

        (Updated 2011-11-15 00:59:14)

        Review request for mesos and Andy Konwinski.

        Summary

        -------

        Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/webui/master/index.tpl 16e3446

        src/master/constants.hpp db82177

        src/master/http.cpp 47caf48

        src/master/master.hpp fdacf36

        src/master/master.cpp b6cfde7

        src/webui/master/framework.tpl 0f41349

        Diff: https://reviews.apache.org/r/2763/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/#review3414 ----------------------------------------------------------- src/master/constants.hpp < https://reviews.apache.org/r/2763/#comment7643 > This should probably default to 1000 instead of 100, but I'm assuming that Task objects are relatively small so the master could hold 100,000's (i.e. 1000 each for 100's of FWs) of them in memory without worrying too much. Also, since its semantics are slightly different than the other constant you added, please give it a more descriptive name like MAX_COMPLETED_TASKS_PER_FRAMEWORK src/master/master.cpp < https://reviews.apache.org/r/2763/#comment7649 > I don't think you need this temporary variable here. Just do push_back(*framework). Andy On 2011-11-15 00:59:14, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/ ----------------------------------------------------------- (Updated 2011-11-15 00:59:14) Review request for mesos and Andy Konwinski. Summary ------- Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/webui/master/index.tpl 16e3446 src/master/constants.hpp db82177 src/master/http.cpp 47caf48 src/master/master.hpp fdacf36 src/master/master.cpp b6cfde7 src/webui/master/framework.tpl 0f41349 Diff: https://reviews.apache.org/r/2763/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2763/#review3467
        -----------------------------------------------------------

        Ship it!

        Great! This will be super cool to see in use!

        src/master/constants.hpp
        <https://reviews.apache.org/r/2763/#comment7729>

        As good practice, feel free to add your name next to the TODO. As in TODO(Thomas Marshall) or a shorthand that uniquely identifies you (I do TODO(benh)). This doesn't mean you are required to ultimately do the TODO, but it enables someone else to contact you if they want more context than what ended up being written in the TODO. Obviously your TODOs here are pretty self explanatory, but it's a good practice to get into. And one final nit: comments, including those in the TODO, should be sentences.

        src/master/http.cpp
        <https://reviews.apache.org/r/2763/#comment7730>

        s/Task/const Task&

        src/master/http.cpp
        <https://reviews.apache.org/r/2763/#comment7731>

        s/Framework/const Framework&

        src/master/master.hpp
        <https://reviews.apache.org/r/2763/#comment7732>

        Just do completedTasks.push_back(*task);

        src/master/master.hpp
        <https://reviews.apache.org/r/2763/#comment7734>

        Space after if.

        src/master/master.cpp
        <https://reviews.apache.org/r/2763/#comment7733>

        And put a newline after framework->unregisteredTime = elapsedTime();

        src/webui/master/index.tpl
        <https://reviews.apache.org/r/2763/#comment7735>

        • Benjamin

        On 2011-11-15 00:59:14, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2763/

        -----------------------------------------------------------

        (Updated 2011-11-15 00:59:14)

        Review request for mesos and Andy Konwinski.

        Summary

        -------

        Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/webui/master/index.tpl 16e3446

        src/master/constants.hpp db82177

        src/master/http.cpp 47caf48

        src/master/master.hpp fdacf36

        src/master/master.cpp b6cfde7

        src/webui/master/framework.tpl 0f41349

        Diff: https://reviews.apache.org/r/2763/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/#review3467 ----------------------------------------------------------- Ship it! Great! This will be super cool to see in use! src/master/constants.hpp < https://reviews.apache.org/r/2763/#comment7729 > As good practice, feel free to add your name next to the TODO. As in TODO(Thomas Marshall) or a shorthand that uniquely identifies you (I do TODO(benh)). This doesn't mean you are required to ultimately do the TODO, but it enables someone else to contact you if they want more context than what ended up being written in the TODO. Obviously your TODOs here are pretty self explanatory, but it's a good practice to get into. And one final nit: comments, including those in the TODO, should be sentences. src/master/http.cpp < https://reviews.apache.org/r/2763/#comment7730 > s/Task/const Task& src/master/http.cpp < https://reviews.apache.org/r/2763/#comment7731 > s/Framework/const Framework& src/master/master.hpp < https://reviews.apache.org/r/2763/#comment7732 > Just do completedTasks.push_back(*task); src/master/master.hpp < https://reviews.apache.org/r/2763/#comment7734 > Space after if. src/master/master.cpp < https://reviews.apache.org/r/2763/#comment7733 > And put a newline after framework->unregisteredTime = elapsedTime(); src/webui/master/index.tpl < https://reviews.apache.org/r/2763/#comment7735 > Benjamin On 2011-11-15 00:59:14, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2763/ ----------------------------------------------------------- (Updated 2011-11-15 00:59:14) Review request for mesos and Andy Konwinski. Summary ------- Frameworks are no longer deleted when they are done executing; they are saved in a list in the master, which is then displayed on the webui. Tasks are similarly stored in their framework. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/webui/master/index.tpl 16e3446 src/master/constants.hpp db82177 src/master/http.cpp 47caf48 src/master/master.hpp fdacf36 src/master/master.cpp b6cfde7 src/webui/master/framework.tpl 0f41349 Diff: https://reviews.apache.org/r/2763/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs


        src/slave/constants.hpp 489640b
        src/slave/http.cpp 18efd8c
        src/slave/slave.hpp 37bbd8c
        src/slave/slave.cpp 665ab7f
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review3613
        -----------------------------------------------------------

        src/slave/http.cpp
        <https://reviews.apache.org/r/2990/#comment8062>

        Kill tabs.

        src/slave/slave.hpp
        <https://reviews.apache.org/r/2990/#comment8064>

        Kill tab.

        src/webui/slave/executor.tpl
        <https://reviews.apache.org/r/2990/#comment8065>

        Kill tab.

        • Andy

        On 2011-12-02 00:51:21, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2011-12-02 00:51:21)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review3613 ----------------------------------------------------------- src/slave/http.cpp < https://reviews.apache.org/r/2990/#comment8062 > Kill tabs. src/slave/slave.hpp < https://reviews.apache.org/r/2990/#comment8064 > Kill tab. src/webui/slave/executor.tpl < https://reviews.apache.org/r/2990/#comment8065 > Kill tab. Andy On 2011-12-02 00:51:21, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2011-12-02 00:51:21) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2011-12-05 23:48:04.064445)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        Killed tabs.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/slave/constants.hpp 489640b
        src/slave/http.cpp 18efd8c
        src/slave/slave.hpp 37bbd8c
        src/slave/slave.cpp 665ab7f
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2011-12-05 23:48:04.064445) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- Killed tabs. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2011-12-05 23:52:29.756029)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        Actually killed tabs now.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/slave/constants.hpp 489640b
        src/slave/http.cpp 18efd8c
        src/slave/slave.hpp 37bbd8c
        src/slave/slave.cpp 665ab7f
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2011-12-05 23:52:29.756029) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- Actually killed tabs now. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        On 2011-12-05 22:53:28, Andy Konwinski wrote:

        > src/slave/http.cpp, lines 219-226

        > <https://reviews.apache.org/r/2990/diff/1/?file=61547#file61547line219>

        >

        > Kill tabs.

        Done.

        On 2011-12-05 22:53:28, Andy Konwinski wrote:

        > src/slave/slave.hpp, line 309

        > <https://reviews.apache.org/r/2990/diff/1/?file=61548#file61548line309>

        >

        > Kill tab.

        Done.

        On 2011-12-05 22:53:28, Andy Konwinski wrote:

        > src/webui/slave/executor.tpl, line 79

        > <https://reviews.apache.org/r/2990/diff/1/?file=61550#file61550line79>

        >

        > Kill tab.

        Done.

        • Thomas

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review3613
        -----------------------------------------------------------

        On 2011-12-05 23:52:29, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2011-12-05 23:52:29)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - On 2011-12-05 22:53:28, Andy Konwinski wrote: > src/slave/http.cpp, lines 219-226 > < https://reviews.apache.org/r/2990/diff/1/?file=61547#file61547line219 > > > Kill tabs. Done. On 2011-12-05 22:53:28, Andy Konwinski wrote: > src/slave/slave.hpp, line 309 > < https://reviews.apache.org/r/2990/diff/1/?file=61548#file61548line309 > > > Kill tab. Done. On 2011-12-05 22:53:28, Andy Konwinski wrote: > src/webui/slave/executor.tpl, line 79 > < https://reviews.apache.org/r/2990/diff/1/?file=61550#file61550line79 > > > Kill tab. Done. Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review3613 ----------------------------------------------------------- On 2011-12-05 23:52:29, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2011-12-05 23:52:29) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review3915
        -----------------------------------------------------------

        Ship it!

        Minor nits, but clean it up and let's ship it! On to the next step!

        src/slave/constants.hpp
        <https://reviews.apache.org/r/2990/#comment8801>

        Just put a todo at the top of the file that says: "Make these constants configurable."

        src/slave/http.cpp
        <https://reviews.apache.org/r/2990/#comment8802>

        Indentation?

        src/slave/http.cpp
        <https://reviews.apache.org/r/2990/#comment8803>

        Indentation?

        src/webui/slave/index.tpl
        <https://reviews.apache.org/r/2990/#comment8804>

        Move the % back to the beginning of the line.

        src/webui/slave/index.tpl
        <https://reviews.apache.org/r/2990/#comment8805>

        Here too.

        • Benjamin

        On 2011-12-05 23:52:29, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2011-12-05 23:52:29)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review3915 ----------------------------------------------------------- Ship it! Minor nits, but clean it up and let's ship it! On to the next step! src/slave/constants.hpp < https://reviews.apache.org/r/2990/#comment8801 > Just put a todo at the top of the file that says: "Make these constants configurable." src/slave/http.cpp < https://reviews.apache.org/r/2990/#comment8802 > Indentation? src/slave/http.cpp < https://reviews.apache.org/r/2990/#comment8803 > Indentation? src/webui/slave/index.tpl < https://reviews.apache.org/r/2990/#comment8804 > Move the % back to the beginning of the line. src/webui/slave/index.tpl < https://reviews.apache.org/r/2990/#comment8805 > Here too. Benjamin On 2011-12-05 23:52:29, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2011-12-05 23:52:29) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2012-01-09 19:29:36.558251)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        Minor formatting fixes.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/slave/constants.hpp 489640b
        src/slave/http.cpp 18efd8c
        src/slave/slave.hpp 37bbd8c
        src/slave/slave.cpp 665ab7f
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-01-09 19:29:36.558251) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- Minor formatting fixes. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review4320
        -----------------------------------------------------------

        I'm getting an error when I run this:

        ...
        Bottle server starting up (using WSGIRefServer())...
        Listening on http://0.0.0.0:8081/
        Use Ctrl-C to quit.

        I0111 14:49:16.554774 10059776 slave.cpp:402] Got assigned task 0 for framework 201201111446-0-0003
        I0111 14:49:16.554879 10059776 slave.cpp:1405] Generating a unique work directory for executor 'default' of framework 201201111446-0-0003
        I0111 14:49:16.555444 10059776 slave.cpp:469] Using '/Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0' as work directory for executor 'default' of framework 201201111446-0-0003
        I0111 14:49:16.564555 10059776 process_based_isolation_module.cpp:91] Launching default (/Users/benh/workspace/apache-mesos2/build/bin/examples/long-lived-executor) in /Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0 with resources ' for framework 201201111446-0-0003
        I0111 14:49:16.565660 10059776 process_based_isolation_module.cpp:114] Forked executor at = 14743
        I0111 14:49:16.575518 10059776 slave.cpp:729] Got registration for executor 'default' of framework 201201111446-0-0003
        I0111 14:49:16.575803 10059776 slave.cpp:783] Flushing queued tasks for framework 201201111446-0-0003
        I0111 14:49:16.586254 10059776 slave.cpp:925] Status update: task 0 of framework 201201111446-0-0003 is now in state TASK_RUNNING
        I0111 14:49:16.587321 10059776 slave.cpp:646] Got acknowledgement of status update for task 0 of framework 201201111446-0-0003
        I0111 14:49:18.742049 10059776 slave.cpp:572] Asked to shut down framework 201201111446-0-0003
        I0111 14:49:18.742146 10059776 slave.cpp:576] Shutting down framework 201201111446-0-0003
        I0111 14:49:18.742182 10059776 slave.cpp:1317] Shutting down executor 'default' of framework 201201111446-0-0003
        I0111 14:49:19.452414 10059776 process_based_isolation_module.cpp:217] Telling slave of lost executor default of framework 201201111446-0-0003
        I0111 14:49:19.452627 10059776 slave.cpp:1282] Executor 'default' of framework 201201111446-0-0003 has exited with status 0

        Program received signal EXC_BAD_ACCESS, Could not access memory.
        Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000017
        [Switching to process 14740]
        0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211
        211 delete task;
        (gdb) bt
        #0 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211
        #1 0x00000001000320ee in mesos::internal::slave::Framework::destroyExecutor (this=0x100c1ab10, executorId=@0x100c22a60) at slave.hpp:213
        #2 0x00000001000135ea in mesos::internal::slave::Slave::executorExited (this=0x103007600, frameworkId=@0x100c22cf8, executorId=@0x100c22d20, status=0) at ../../src/slave/slave.cpp:1297
        #3 0x0000000100058e42 in std::tr1::Function_handler<void ()(mesos::internal::slave::Slave*), std::tr1::_Bind<std::tr1::_Mem_fn<void (mesos::internal::slave::Slave::*)(mesos::FrameworkID const&, mesos::ExecutorID const&, int)> ()(std::tr1::_Placeholder<1>, mesos::FrameworkID, mesos::ExecutorID, int)> >::_M_invoke (_functor=<value temporarily unavailable, due to optimizations>, __a1=0x103007600) at functional_iterate.h:214
        #4 0x0000000100026b28 in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:45
        #5 0x0000000100026b28 in ~function [inlined] () at bind_iterate.h:834
        #6 0x0000000100026b28 in operator()<process::ProcessBase*> [inlined] () at /usr/include/c++/4.2.1/tr1/bind_iterate.h:45
        #7 0x0000000100026b28 in std::tr1::Function_handler<void ()(process::ProcessBase*), std::tr1::_Bind<void (()(std::tr1::_Placeholder<1>, std::tr1::function<void ()(mesos::internal::slave::Slave)>))(process::ProcessBase*, std::tr1::function<void ()(mesos::internal::slave::Slave*)>)> >::_M_invoke (_functor=<value temporarily unavailable, due to optimizations>, __a1=0x1030078c0) at functional:502
        #8 0x000000010010b03b in ~function [inlined] () at ../../../third_party/libprocess/src/process.cpp:2937
        #9 0x000000010010b03b in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:834
        #10 0x000000010010b03b in process::ProcessBase::serve (this=0x1030078c0, secs=0.99999809265136719, once=false) at ../../../third_party/libprocess/src/process.cpp:2938
        #11 0x000000010001b35e in mesos::internal::slave::Slave::operator() (this=0x103007600) at protobuf.hpp:105
        #12 0x000000010010fb56 in process::ProcessManager::run (this=0x100814090, process=0x1030078c0) at ../../../third_party/libprocess/src/process.cpp:2356
        #13 0x000000010010fcff in process::trampoline (stack0=10133504, stack1=1, process0=<value temporarily unavailable, due to optimizations>, process1=<value temporarily unavailable, due to optimizations>) at ../../../third_party/libprocess/src/process.cpp:937

        • Benjamin

        On 2012-01-09 19:29:36, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2012-01-09 19:29:36)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review4320 ----------------------------------------------------------- I'm getting an error when I run this: ... Bottle server starting up (using WSGIRefServer())... Listening on http://0.0.0.0:8081/ Use Ctrl-C to quit. I0111 14:49:16.554774 10059776 slave.cpp:402] Got assigned task 0 for framework 201201111446-0-0003 I0111 14:49:16.554879 10059776 slave.cpp:1405] Generating a unique work directory for executor 'default' of framework 201201111446-0-0003 I0111 14:49:16.555444 10059776 slave.cpp:469] Using '/Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0' as work directory for executor 'default' of framework 201201111446-0-0003 I0111 14:49:16.564555 10059776 process_based_isolation_module.cpp:91] Launching default (/Users/benh/workspace/apache-mesos2/build/bin/examples/long-lived-executor) in /Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0 with resources ' for framework 201201111446-0-0003 I0111 14:49:16.565660 10059776 process_based_isolation_module.cpp:114] Forked executor at = 14743 I0111 14:49:16.575518 10059776 slave.cpp:729] Got registration for executor 'default' of framework 201201111446-0-0003 I0111 14:49:16.575803 10059776 slave.cpp:783] Flushing queued tasks for framework 201201111446-0-0003 I0111 14:49:16.586254 10059776 slave.cpp:925] Status update: task 0 of framework 201201111446-0-0003 is now in state TASK_RUNNING I0111 14:49:16.587321 10059776 slave.cpp:646] Got acknowledgement of status update for task 0 of framework 201201111446-0-0003 I0111 14:49:18.742049 10059776 slave.cpp:572] Asked to shut down framework 201201111446-0-0003 I0111 14:49:18.742146 10059776 slave.cpp:576] Shutting down framework 201201111446-0-0003 I0111 14:49:18.742182 10059776 slave.cpp:1317] Shutting down executor 'default' of framework 201201111446-0-0003 I0111 14:49:19.452414 10059776 process_based_isolation_module.cpp:217] Telling slave of lost executor default of framework 201201111446-0-0003 I0111 14:49:19.452627 10059776 slave.cpp:1282] Executor 'default' of framework 201201111446-0-0003 has exited with status 0 Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000017 [Switching to process 14740] 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211 211 delete task; (gdb) bt #0 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211 #1 0x00000001000320ee in mesos::internal::slave::Framework::destroyExecutor (this=0x100c1ab10, executorId=@0x100c22a60) at slave.hpp:213 #2 0x00000001000135ea in mesos::internal::slave::Slave::executorExited (this=0x103007600, frameworkId=@0x100c22cf8, executorId=@0x100c22d20, status=0) at ../../src/slave/slave.cpp:1297 #3 0x0000000100058e42 in std::tr1:: Function_handler<void ()(mesos::internal::slave::Slave*), std::tr1::_Bind<std::tr1::_Mem_fn<void (mesos::internal::slave::Slave::*)(mesos::FrameworkID const&, mesos::ExecutorID const&, int)> ()(std::tr1::_Placeholder<1>, mesos::FrameworkID, mesos::ExecutorID, int)> >::_M_invoke ( _functor=<value temporarily unavailable, due to optimizations>, __a1=0x103007600) at functional_iterate.h:214 #4 0x0000000100026b28 in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:45 #5 0x0000000100026b28 in ~function [inlined] () at bind_iterate.h:834 #6 0x0000000100026b28 in operator()<process::ProcessBase*> [inlined] () at /usr/include/c++/4.2.1/tr1/bind_iterate.h:45 #7 0x0000000100026b28 in std::tr1:: Function_handler<void ()(process::ProcessBase*), std::tr1::_Bind<void ( ()(std::tr1::_Placeholder<1>, std::tr1::function<void ()(mesos::internal::slave::Slave )>))(process::ProcessBase*, std::tr1::function<void ()(mesos::internal::slave::Slave*)>)> >::_M_invoke ( _functor=<value temporarily unavailable, due to optimizations>, __a1=0x1030078c0) at functional:502 #8 0x000000010010b03b in ~function [inlined] () at ../../../third_party/libprocess/src/process.cpp:2937 #9 0x000000010010b03b in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:834 #10 0x000000010010b03b in process::ProcessBase::serve (this=0x1030078c0, secs=0.99999809265136719, once=false) at ../../../third_party/libprocess/src/process.cpp:2938 #11 0x000000010001b35e in mesos::internal::slave::Slave::operator() (this=0x103007600) at protobuf.hpp:105 #12 0x000000010010fb56 in process::ProcessManager::run (this=0x100814090, process=0x1030078c0) at ../../../third_party/libprocess/src/process.cpp:2356 #13 0x000000010010fcff in process::trampoline (stack0=10133504, stack1=1, process0=<value temporarily unavailable, due to optimizations>, process1=<value temporarily unavailable, due to optimizations>) at ../../../third_party/libprocess/src/process.cpp:937 Benjamin On 2012-01-09 19:29:36, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-01-09 19:29:36) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        On 2012-01-11 22:58:36, Benjamin Hindman wrote:

        > I'm getting an error when I run this:

        >

        > ...

        > Bottle server starting up (using WSGIRefServer())...

        > Listening on http://0.0.0.0:8081/

        > Use Ctrl-C to quit.

        >

        > I0111 14:49:16.554774 10059776 slave.cpp:402] Got assigned task 0 for framework 201201111446-0-0003

        > I0111 14:49:16.554879 10059776 slave.cpp:1405] Generating a unique work directory for executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:16.555444 10059776 slave.cpp:469] Using '/Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0' as work directory for executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:16.564555 10059776 process_based_isolation_module.cpp:91] Launching default (/Users/benh/workspace/apache-mesos2/build/bin/examples/long-lived-executor) in /Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0 with resources ' for framework 201201111446-0-0003

        > I0111 14:49:16.565660 10059776 process_based_isolation_module.cpp:114] Forked executor at = 14743

        > I0111 14:49:16.575518 10059776 slave.cpp:729] Got registration for executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:16.575803 10059776 slave.cpp:783] Flushing queued tasks for framework 201201111446-0-0003

        > I0111 14:49:16.586254 10059776 slave.cpp:925] Status update: task 0 of framework 201201111446-0-0003 is now in state TASK_RUNNING

        > I0111 14:49:16.587321 10059776 slave.cpp:646] Got acknowledgement of status update for task 0 of framework 201201111446-0-0003

        > I0111 14:49:18.742049 10059776 slave.cpp:572] Asked to shut down framework 201201111446-0-0003

        > I0111 14:49:18.742146 10059776 slave.cpp:576] Shutting down framework 201201111446-0-0003

        > I0111 14:49:18.742182 10059776 slave.cpp:1317] Shutting down executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:19.452414 10059776 process_based_isolation_module.cpp:217] Telling slave of lost executor default of framework 201201111446-0-0003

        > I0111 14:49:19.452627 10059776 slave.cpp:1282] Executor 'default' of framework 201201111446-0-0003 has exited with status 0

        >

        > Program received signal EXC_BAD_ACCESS, Could not access memory.

        > Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000017

        > [Switching to process 14740]

        > 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211

        > 211 delete task;

        > (gdb) bt

        > #0 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211

        > #1 0x00000001000320ee in mesos::internal::slave::Framework::destroyExecutor (this=0x100c1ab10, executorId=@0x100c22a60) at slave.hpp:213

        > #2 0x00000001000135ea in mesos::internal::slave::Slave::executorExited (this=0x103007600, frameworkId=@0x100c22cf8, executorId=@0x100c22d20, status=0) at ../../src/slave/slave.cpp:1297

        > #3 0x0000000100058e42 in std::tr1::Function_handler<void ()(mesos::internal::slave::Slave*), std::tr1::_Bind<std::tr1::_Mem_fn<void (mesos::internal::slave::Slave::*)(mesos::FrameworkID const&, mesos::ExecutorID const&, int)> ()(std::tr1::_Placeholder<1>, mesos::FrameworkID, mesos::ExecutorID, int)> >::_M_invoke (_functor=<value temporarily unavailable, due to optimizations>, __a1=0x103007600) at functional_iterate.h:214

        > #4 0x0000000100026b28 in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:45

        > #5 0x0000000100026b28 in ~function [inlined] () at bind_iterate.h:834

        > #6 0x0000000100026b28 in operator()<process::ProcessBase*> [inlined] () at /usr/include/c++/4.2.1/tr1/bind_iterate.h:45

        > #7 0x0000000100026b28 in std::tr1::Function_handler<void ()(process::ProcessBase*), std::tr1::_Bind<void (()(std::tr1::_Placeholder<1>, std::tr1::function<void ()(mesos::internal::slave::Slave)>))(process::ProcessBase*, std::tr1::function<void ()(mesos::internal::slave::Slave*)>)> >::_M_invoke (_functor=<value temporarily unavailable, due to optimizations>, __a1=0x1030078c0) at functional:502

        > #8 0x000000010010b03b in ~function [inlined] () at ../../../third_party/libprocess/src/process.cpp:2937

        > #9 0x000000010010b03b in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:834

        > #10 0x000000010010b03b in process::ProcessBase::serve (this=0x1030078c0, secs=0.99999809265136719, once=false) at ../../../third_party/libprocess/src/process.cpp:2938

        > #11 0x000000010001b35e in mesos::internal::slave::Slave::operator() (this=0x103007600) at protobuf.hpp:105

        > #12 0x000000010010fb56 in process::ProcessManager::run (this=0x100814090, process=0x1030078c0) at ../../../third_party/libprocess/src/process.cpp:2356

        > #13 0x000000010010fcff in process::trampoline (stack0=10133504, stack1=1, process0=<value temporarily unavailable, due to optimizations>, process1=<value temporarily unavailable, due to optimizations>) at ../../../third_party/libprocess/src/process.cpp:937

        I downloaded a fresh copy from Git, applied my patch, and I can't recreate the error. Could you tell me more about what exactly how exactly you got it? (like what framework you were running, if it only happens when you refresh the webui, etc.) Thanks.

        • Thomas

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review4320
        -----------------------------------------------------------

        On 2012-01-09 19:29:36, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2012-01-09 19:29:36)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - On 2012-01-11 22:58:36, Benjamin Hindman wrote: > I'm getting an error when I run this: > > ... > Bottle server starting up (using WSGIRefServer())... > Listening on http://0.0.0.0:8081/ > Use Ctrl-C to quit. > > I0111 14:49:16.554774 10059776 slave.cpp:402] Got assigned task 0 for framework 201201111446-0-0003 > I0111 14:49:16.554879 10059776 slave.cpp:1405] Generating a unique work directory for executor 'default' of framework 201201111446-0-0003 > I0111 14:49:16.555444 10059776 slave.cpp:469] Using '/Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0' as work directory for executor 'default' of framework 201201111446-0-0003 > I0111 14:49:16.564555 10059776 process_based_isolation_module.cpp:91] Launching default (/Users/benh/workspace/apache-mesos2/build/bin/examples/long-lived-executor) in /Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0 with resources ' for framework 201201111446-0-0003 > I0111 14:49:16.565660 10059776 process_based_isolation_module.cpp:114] Forked executor at = 14743 > I0111 14:49:16.575518 10059776 slave.cpp:729] Got registration for executor 'default' of framework 201201111446-0-0003 > I0111 14:49:16.575803 10059776 slave.cpp:783] Flushing queued tasks for framework 201201111446-0-0003 > I0111 14:49:16.586254 10059776 slave.cpp:925] Status update: task 0 of framework 201201111446-0-0003 is now in state TASK_RUNNING > I0111 14:49:16.587321 10059776 slave.cpp:646] Got acknowledgement of status update for task 0 of framework 201201111446-0-0003 > I0111 14:49:18.742049 10059776 slave.cpp:572] Asked to shut down framework 201201111446-0-0003 > I0111 14:49:18.742146 10059776 slave.cpp:576] Shutting down framework 201201111446-0-0003 > I0111 14:49:18.742182 10059776 slave.cpp:1317] Shutting down executor 'default' of framework 201201111446-0-0003 > I0111 14:49:19.452414 10059776 process_based_isolation_module.cpp:217] Telling slave of lost executor default of framework 201201111446-0-0003 > I0111 14:49:19.452627 10059776 slave.cpp:1282] Executor 'default' of framework 201201111446-0-0003 has exited with status 0 > > Program received signal EXC_BAD_ACCESS, Could not access memory. > Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000017 > [Switching to process 14740] > 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211 > 211 delete task; > (gdb) bt > #0 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211 > #1 0x00000001000320ee in mesos::internal::slave::Framework::destroyExecutor (this=0x100c1ab10, executorId=@0x100c22a60) at slave.hpp:213 > #2 0x00000001000135ea in mesos::internal::slave::Slave::executorExited (this=0x103007600, frameworkId=@0x100c22cf8, executorId=@0x100c22d20, status=0) at ../../src/slave/slave.cpp:1297 > #3 0x0000000100058e42 in std::tr1:: Function_handler<void ()(mesos::internal::slave::Slave*), std::tr1::_Bind<std::tr1::_Mem_fn<void (mesos::internal::slave::Slave::*)(mesos::FrameworkID const&, mesos::ExecutorID const&, int)> ()(std::tr1::_Placeholder<1>, mesos::FrameworkID, mesos::ExecutorID, int)> >::_M_invoke ( _functor=<value temporarily unavailable, due to optimizations>, __a1=0x103007600) at functional_iterate.h:214 > #4 0x0000000100026b28 in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:45 > #5 0x0000000100026b28 in ~function [inlined] () at bind_iterate.h:834 > #6 0x0000000100026b28 in operator()<process::ProcessBase*> [inlined] () at /usr/include/c++/4.2.1/tr1/bind_iterate.h:45 > #7 0x0000000100026b28 in std::tr1:: Function_handler<void ()(process::ProcessBase*), std::tr1::_Bind<void ( ()(std::tr1::_Placeholder<1>, std::tr1::function<void ()(mesos::internal::slave::Slave )>))(process::ProcessBase*, std::tr1::function<void ()(mesos::internal::slave::Slave*)>)> >::_M_invoke ( _functor=<value temporarily unavailable, due to optimizations>, __a1=0x1030078c0) at functional:502 > #8 0x000000010010b03b in ~function [inlined] () at ../../../third_party/libprocess/src/process.cpp:2937 > #9 0x000000010010b03b in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:834 > #10 0x000000010010b03b in process::ProcessBase::serve (this=0x1030078c0, secs=0.99999809265136719, once=false) at ../../../third_party/libprocess/src/process.cpp:2938 > #11 0x000000010001b35e in mesos::internal::slave::Slave::operator() (this=0x103007600) at protobuf.hpp:105 > #12 0x000000010010fb56 in process::ProcessManager::run (this=0x100814090, process=0x1030078c0) at ../../../third_party/libprocess/src/process.cpp:2356 > #13 0x000000010010fcff in process::trampoline (stack0=10133504, stack1=1, process0=<value temporarily unavailable, due to optimizations>, process1=<value temporarily unavailable, due to optimizations>) at ../../../third_party/libprocess/src/process.cpp:937 I downloaded a fresh copy from Git, applied my patch, and I can't recreate the error. Could you tell me more about what exactly how exactly you got it? (like what framework you were running, if it only happens when you refresh the webui, etc.) Thanks. Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review4320 ----------------------------------------------------------- On 2012-01-09 19:29:36, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-01-09 19:29:36) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        On 2011-12-15 00:20:36, Benjamin Hindman wrote:

        > src/slave/constants.hpp, line 14

        > <https://reviews.apache.org/r/2990/diff/3/?file=62012#file62012line14>

        >

        > Just put a todo at the top of the file that says: "Make these constants configurable."

        Done.

        On 2011-12-15 00:20:36, Benjamin Hindman wrote:

        > src/slave/http.cpp, line 115

        > <https://reviews.apache.org/r/2990/diff/3/?file=62013#file62013line115>

        >

        > Indentation?

        Done.

        On 2011-12-15 00:20:36, Benjamin Hindman wrote:

        > src/slave/http.cpp, line 208

        > <https://reviews.apache.org/r/2990/diff/3/?file=62013#file62013line208>

        >

        > Indentation?

        Done.

        On 2011-12-15 00:20:36, Benjamin Hindman wrote:

        > src/webui/slave/index.tpl, line 94

        > <https://reviews.apache.org/r/2990/diff/3/?file=62018#file62018line94>

        >

        > Move the % back to the beginning of the line.

        Done.

        On 2011-12-15 00:20:36, Benjamin Hindman wrote:

        > src/webui/slave/index.tpl, line 101

        > <https://reviews.apache.org/r/2990/diff/3/?file=62018#file62018line101>

        >

        > Here too.

        Done.

        • Thomas

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review3915
        -----------------------------------------------------------

        On 2012-01-09 19:29:36, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2012-01-09 19:29:36)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - On 2011-12-15 00:20:36, Benjamin Hindman wrote: > src/slave/constants.hpp, line 14 > < https://reviews.apache.org/r/2990/diff/3/?file=62012#file62012line14 > > > Just put a todo at the top of the file that says: "Make these constants configurable." Done. On 2011-12-15 00:20:36, Benjamin Hindman wrote: > src/slave/http.cpp, line 115 > < https://reviews.apache.org/r/2990/diff/3/?file=62013#file62013line115 > > > Indentation? Done. On 2011-12-15 00:20:36, Benjamin Hindman wrote: > src/slave/http.cpp, line 208 > < https://reviews.apache.org/r/2990/diff/3/?file=62013#file62013line208 > > > Indentation? Done. On 2011-12-15 00:20:36, Benjamin Hindman wrote: > src/webui/slave/index.tpl, line 94 > < https://reviews.apache.org/r/2990/diff/3/?file=62018#file62018line94 > > > Move the % back to the beginning of the line. Done. On 2011-12-15 00:20:36, Benjamin Hindman wrote: > src/webui/slave/index.tpl, line 101 > < https://reviews.apache.org/r/2990/diff/3/?file=62018#file62018line101 > > > Here too. Done. Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review3915 ----------------------------------------------------------- On 2012-01-09 19:29:36, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-01-09 19:29:36) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        On 2012-01-11 22:58:36, Benjamin Hindman wrote:

        > I'm getting an error when I run this:

        >

        > ...

        > Bottle server starting up (using WSGIRefServer())...

        > Listening on http://0.0.0.0:8081/

        > Use Ctrl-C to quit.

        >

        > I0111 14:49:16.554774 10059776 slave.cpp:402] Got assigned task 0 for framework 201201111446-0-0003

        > I0111 14:49:16.554879 10059776 slave.cpp:1405] Generating a unique work directory for executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:16.555444 10059776 slave.cpp:469] Using '/Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0' as work directory for executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:16.564555 10059776 process_based_isolation_module.cpp:91] Launching default (/Users/benh/workspace/apache-mesos2/build/bin/examples/long-lived-executor) in /Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0 with resources ' for framework 201201111446-0-0003

        > I0111 14:49:16.565660 10059776 process_based_isolation_module.cpp:114] Forked executor at = 14743

        > I0111 14:49:16.575518 10059776 slave.cpp:729] Got registration for executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:16.575803 10059776 slave.cpp:783] Flushing queued tasks for framework 201201111446-0-0003

        > I0111 14:49:16.586254 10059776 slave.cpp:925] Status update: task 0 of framework 201201111446-0-0003 is now in state TASK_RUNNING

        > I0111 14:49:16.587321 10059776 slave.cpp:646] Got acknowledgement of status update for task 0 of framework 201201111446-0-0003

        > I0111 14:49:18.742049 10059776 slave.cpp:572] Asked to shut down framework 201201111446-0-0003

        > I0111 14:49:18.742146 10059776 slave.cpp:576] Shutting down framework 201201111446-0-0003

        > I0111 14:49:18.742182 10059776 slave.cpp:1317] Shutting down executor 'default' of framework 201201111446-0-0003

        > I0111 14:49:19.452414 10059776 process_based_isolation_module.cpp:217] Telling slave of lost executor default of framework 201201111446-0-0003

        > I0111 14:49:19.452627 10059776 slave.cpp:1282] Executor 'default' of framework 201201111446-0-0003 has exited with status 0

        >

        > Program received signal EXC_BAD_ACCESS, Could not access memory.

        > Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000017

        > [Switching to process 14740]

        > 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211

        > 211 delete task;

        > (gdb) bt

        > #0 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211

        > #1 0x00000001000320ee in mesos::internal::slave::Framework::destroyExecutor (this=0x100c1ab10, executorId=@0x100c22a60) at slave.hpp:213

        > #2 0x00000001000135ea in mesos::internal::slave::Slave::executorExited (this=0x103007600, frameworkId=@0x100c22cf8, executorId=@0x100c22d20, status=0) at ../../src/slave/slave.cpp:1297

        > #3 0x0000000100058e42 in std::tr1::Function_handler<void ()(mesos::internal::slave::Slave*), std::tr1::_Bind<std::tr1::_Mem_fn<void (mesos::internal::slave::Slave::*)(mesos::FrameworkID const&, mesos::ExecutorID const&, int)> ()(std::tr1::_Placeholder<1>, mesos::FrameworkID, mesos::ExecutorID, int)> >::_M_invoke (_functor=<value temporarily unavailable, due to optimizations>, __a1=0x103007600) at functional_iterate.h:214

        > #4 0x0000000100026b28 in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:45

        > #5 0x0000000100026b28 in ~function [inlined] () at bind_iterate.h:834

        > #6 0x0000000100026b28 in operator()<process::ProcessBase*> [inlined] () at /usr/include/c++/4.2.1/tr1/bind_iterate.h:45

        > #7 0x0000000100026b28 in std::tr1::Function_handler<void ()(process::ProcessBase*), std::tr1::_Bind<void (()(std::tr1::_Placeholder<1>, std::tr1::function<void ()(mesos::internal::slave::Slave)>))(process::ProcessBase*, std::tr1::function<void ()(mesos::internal::slave::Slave*)>)> >::_M_invoke (_functor=<value temporarily unavailable, due to optimizations>, __a1=0x1030078c0) at functional:502

        > #8 0x000000010010b03b in ~function [inlined] () at ../../../third_party/libprocess/src/process.cpp:2937

        > #9 0x000000010010b03b in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:834

        > #10 0x000000010010b03b in process::ProcessBase::serve (this=0x1030078c0, secs=0.99999809265136719, once=false) at ../../../third_party/libprocess/src/process.cpp:2938

        > #11 0x000000010001b35e in mesos::internal::slave::Slave::operator() (this=0x103007600) at protobuf.hpp:105

        > #12 0x000000010010fb56 in process::ProcessManager::run (this=0x100814090, process=0x1030078c0) at ../../../third_party/libprocess/src/process.cpp:2356

        > #13 0x000000010010fcff in process::trampoline (stack0=10133504, stack1=1, process0=<value temporarily unavailable, due to optimizations>, process1=<value temporarily unavailable, due to optimizations>) at ../../../third_party/libprocess/src/process.cpp:937

        Thomas Marshall wrote:

        I downloaded a fresh copy from Git, applied my patch, and I can't recreate the error. Could you tell me more about what exactly how exactly you got it? (like what framework you were running, if it only happens when you refresh the webui, etc.) Thanks.

        Also, were you getting this error on the previous patches? The only difference between this one and the last one should be whitespace.

        • Thomas

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/#review4320
        -----------------------------------------------------------

        On 2012-01-09 19:29:36, Thomas Marshall wrote:

        -----------------------------------------------------------

        This is an automatically generated e-mail. To reply, visit:

        https://reviews.apache.org/r/2990/

        -----------------------------------------------------------

        (Updated 2012-01-09 19:29:36)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary

        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.

        https://issues.apache.org/jira/browse/MESOS-8

        Diffs

        -----

        src/slave/constants.hpp 489640b

        src/slave/http.cpp 18efd8c

        src/slave/slave.hpp 37bbd8c

        src/slave/slave.cpp 665ab7f

        src/webui/slave/executor.tpl dd53464

        src/webui/slave/framework.tpl 9488da5

        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing

        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - On 2012-01-11 22:58:36, Benjamin Hindman wrote: > I'm getting an error when I run this: > > ... > Bottle server starting up (using WSGIRefServer())... > Listening on http://0.0.0.0:8081/ > Use Ctrl-C to quit. > > I0111 14:49:16.554774 10059776 slave.cpp:402] Got assigned task 0 for framework 201201111446-0-0003 > I0111 14:49:16.554879 10059776 slave.cpp:1405] Generating a unique work directory for executor 'default' of framework 201201111446-0-0003 > I0111 14:49:16.555444 10059776 slave.cpp:469] Using '/Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0' as work directory for executor 'default' of framework 201201111446-0-0003 > I0111 14:49:16.564555 10059776 process_based_isolation_module.cpp:91] Launching default (/Users/benh/workspace/apache-mesos2/build/bin/examples/long-lived-executor) in /Users/benh/workspace/apache-mesos2/build/work/slaves/201201111446-0-3/frameworks/201201111446-0-0003/executors/default/runs/0 with resources ' for framework 201201111446-0-0003 > I0111 14:49:16.565660 10059776 process_based_isolation_module.cpp:114] Forked executor at = 14743 > I0111 14:49:16.575518 10059776 slave.cpp:729] Got registration for executor 'default' of framework 201201111446-0-0003 > I0111 14:49:16.575803 10059776 slave.cpp:783] Flushing queued tasks for framework 201201111446-0-0003 > I0111 14:49:16.586254 10059776 slave.cpp:925] Status update: task 0 of framework 201201111446-0-0003 is now in state TASK_RUNNING > I0111 14:49:16.587321 10059776 slave.cpp:646] Got acknowledgement of status update for task 0 of framework 201201111446-0-0003 > I0111 14:49:18.742049 10059776 slave.cpp:572] Asked to shut down framework 201201111446-0-0003 > I0111 14:49:18.742146 10059776 slave.cpp:576] Shutting down framework 201201111446-0-0003 > I0111 14:49:18.742182 10059776 slave.cpp:1317] Shutting down executor 'default' of framework 201201111446-0-0003 > I0111 14:49:19.452414 10059776 process_based_isolation_module.cpp:217] Telling slave of lost executor default of framework 201201111446-0-0003 > I0111 14:49:19.452627 10059776 slave.cpp:1282] Executor 'default' of framework 201201111446-0-0003 has exited with status 0 > > Program received signal EXC_BAD_ACCESS, Could not access memory. > Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000017 > [Switching to process 14740] > 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211 > 211 delete task; > (gdb) bt > #0 0x0000000100031697 in mesos::internal::slave::Executor::~Executor (this=0x100c22a60) at slave.hpp:211 > #1 0x00000001000320ee in mesos::internal::slave::Framework::destroyExecutor (this=0x100c1ab10, executorId=@0x100c22a60) at slave.hpp:213 > #2 0x00000001000135ea in mesos::internal::slave::Slave::executorExited (this=0x103007600, frameworkId=@0x100c22cf8, executorId=@0x100c22d20, status=0) at ../../src/slave/slave.cpp:1297 > #3 0x0000000100058e42 in std::tr1:: Function_handler<void ()(mesos::internal::slave::Slave*), std::tr1::_Bind<std::tr1::_Mem_fn<void (mesos::internal::slave::Slave::*)(mesos::FrameworkID const&, mesos::ExecutorID const&, int)> ()(std::tr1::_Placeholder<1>, mesos::FrameworkID, mesos::ExecutorID, int)> >::_M_invoke ( _functor=<value temporarily unavailable, due to optimizations>, __a1=0x103007600) at functional_iterate.h:214 > #4 0x0000000100026b28 in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:45 > #5 0x0000000100026b28 in ~function [inlined] () at bind_iterate.h:834 > #6 0x0000000100026b28 in operator()<process::ProcessBase*> [inlined] () at /usr/include/c++/4.2.1/tr1/bind_iterate.h:45 > #7 0x0000000100026b28 in std::tr1:: Function_handler<void ()(process::ProcessBase*), std::tr1::_Bind<void ( ()(std::tr1::_Placeholder<1>, std::tr1::function<void ()(mesos::internal::slave::Slave )>))(process::ProcessBase*, std::tr1::function<void ()(mesos::internal::slave::Slave*)>)> >::_M_invoke ( _functor=<value temporarily unavailable, due to optimizations>, __a1=0x1030078c0) at functional:502 > #8 0x000000010010b03b in ~function [inlined] () at ../../../third_party/libprocess/src/process.cpp:2937 > #9 0x000000010010b03b in ~function [inlined] () at /usr/include/c++/4.2.1/tr1/functional:834 > #10 0x000000010010b03b in process::ProcessBase::serve (this=0x1030078c0, secs=0.99999809265136719, once=false) at ../../../third_party/libprocess/src/process.cpp:2938 > #11 0x000000010001b35e in mesos::internal::slave::Slave::operator() (this=0x103007600) at protobuf.hpp:105 > #12 0x000000010010fb56 in process::ProcessManager::run (this=0x100814090, process=0x1030078c0) at ../../../third_party/libprocess/src/process.cpp:2356 > #13 0x000000010010fcff in process::trampoline (stack0=10133504, stack1=1, process0=<value temporarily unavailable, due to optimizations>, process1=<value temporarily unavailable, due to optimizations>) at ../../../third_party/libprocess/src/process.cpp:937 Thomas Marshall wrote: I downloaded a fresh copy from Git, applied my patch, and I can't recreate the error. Could you tell me more about what exactly how exactly you got it? (like what framework you were running, if it only happens when you refresh the webui, etc.) Thanks. Also, were you getting this error on the previous patches? The only difference between this one and the last one should be whitespace. Thomas ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/#review4320 ----------------------------------------------------------- On 2012-01-09 19:29:36, Thomas Marshall wrote: ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-01-09 19:29:36) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs ----- src/slave/constants.hpp 489640b src/slave/http.cpp 18efd8c src/slave/slave.hpp 37bbd8c src/slave/slave.cpp 665ab7f src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2012-01-18 02:37:51.041170)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        Updated to reflect the latest submits. I still have not been able to replicate the error Ben got.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/slave/constants.hpp f0c8679
        src/slave/http.cpp 133660c
        src/slave/slave.hpp 88cfc72
        src/slave/slave.cpp 62fc277
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-01-18 02:37:51.041170) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- Updated to reflect the latest submits. I still have not been able to replicate the error Ben got. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/slave/constants.hpp f0c8679 src/slave/http.cpp 133660c src/slave/slave.hpp 88cfc72 src/slave/slave.cpp 62fc277 src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2012-02-01 04:03:33.220793)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        The problem seemed to be that the default copy constructor for Executor was only copying the pointers to the Tasks in launchedTasks but the destructor was deleting those objects. When an Executor was shut down abnormally, so that there were still some Tasks in launchedTasks, the copy of the Executor we're making to put in the completedExecutor deque tries to access the pointers in launchedTasks and the objects aren't there anymore.

        So, I'm not sure if this is the best solution, but I wrote a copy constructor for the Executor class that copies the Task objects themselves, and that fixed it.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/slave/constants.hpp f0c8679
        src/slave/http.cpp f03815d
        src/slave/slave.hpp b1a07e9
        src/slave/slave.cpp 9b33a5a
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-02-01 04:03:33.220793) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- The problem seemed to be that the default copy constructor for Executor was only copying the pointers to the Tasks in launchedTasks but the destructor was deleting those objects. When an Executor was shut down abnormally, so that there were still some Tasks in launchedTasks, the copy of the Executor we're making to put in the completedExecutor deque tries to access the pointers in launchedTasks and the objects aren't there anymore. So, I'm not sure if this is the best solution, but I wrote a copy constructor for the Executor class that copies the Task objects themselves, and that fixed it. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/slave/constants.hpp f0c8679 src/slave/http.cpp f03815d src/slave/slave.hpp b1a07e9 src/slave/slave.cpp 9b33a5a src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2012-03-06 00:33:14.712144)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        Also added history recovery after a master failure.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs


        src/webui/slave/index.tpl 0f18de6
        src/webui/slave/framework.tpl 9488da5
        src/slave/slave.cpp ce8fda5
        src/webui/slave/executor.tpl dd53464
        src/slave/slave.hpp b1a07e9
        src/slave/http.cpp f03815d
        src/messages/messages.proto 11a2c41
        src/slave/constants.hpp f0c8679
        src/master/master.cpp 1d3961e
        src/master/master.hpp 53551b0
        src/master/http.cpp 591433a

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-03-06 00:33:14.712144) Review request for mesos, Benjamin Hindman and Andy Konwinski. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. Also added history recovery after a master failure. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs src/webui/slave/index.tpl 0f18de6 src/webui/slave/framework.tpl 9488da5 src/slave/slave.cpp ce8fda5 src/webui/slave/executor.tpl dd53464 src/slave/slave.hpp b1a07e9 src/slave/http.cpp f03815d src/messages/messages.proto 11a2c41 src/slave/constants.hpp f0c8679 src/master/master.cpp 1d3961e src/master/master.hpp 53551b0 src/master/http.cpp 591433a Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2012-03-06 00:35:01.185527)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        Converted to using protobufs for storing completed frameworks and executors, and added history recovery after a master failure.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        Also added history recovery after a master failure.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/master/http.cpp 591433a
        src/master/master.hpp 53551b0
        src/master/master.cpp 1d3961e
        src/messages/messages.proto 11a2c41
        src/slave/constants.hpp f0c8679
        src/slave/http.cpp f03815d
        src/slave/slave.hpp b1a07e9
        src/slave/slave.cpp ce8fda5
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl 0f18de6

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-03-06 00:35:01.185527) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- Converted to using protobufs for storing completed frameworks and executors, and added history recovery after a master failure. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. Also added history recovery after a master failure. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/master/http.cpp 591433a src/master/master.hpp 53551b0 src/master/master.cpp 1d3961e src/messages/messages.proto 11a2c41 src/slave/constants.hpp f0c8679 src/slave/http.cpp f03815d src/slave/slave.hpp b1a07e9 src/slave/slave.cpp ce8fda5 src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl 0f18de6 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        jiraposter@reviews.apache.org added a comment -

        -----------------------------------------------------------
        This is an automatically generated e-mail. To reply, visit:
        https://reviews.apache.org/r/2990/
        -----------------------------------------------------------

        (Updated 2012-04-07 22:57:30.331599)

        Review request for mesos, Benjamin Hindman and Andy Konwinski.

        Changes
        -------

        Updated the patch to the current trunk.

        Summary
        -------

        Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing.

        Also added history recovery after a master failure.

        This addresses bug MESOS-8.
        https://issues.apache.org/jira/browse/MESOS-8

        Diffs (updated)


        src/master/http.cpp 7ebcc1b
        src/master/master.hpp 8a34d7e
        src/master/master.cpp 4dc9ee0
        src/messages/messages.proto 87e1548
        src/slave/constants.hpp f0c8679
        src/slave/http.cpp 19c48a0
        src/slave/slave.hpp 279bc7b
        src/slave/slave.cpp 3358ec4
        src/webui/slave/executor.tpl dd53464
        src/webui/slave/framework.tpl 9488da5
        src/webui/slave/index.tpl b2e2097

        Diff: https://reviews.apache.org/r/2990/diff

        Testing
        -------

        Thanks,

        Thomas

        Show
        jiraposter@reviews.apache.org added a comment - ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2990/ ----------------------------------------------------------- (Updated 2012-04-07 22:57:30.331599) Review request for mesos, Benjamin Hindman and Andy Konwinski. Changes ------- Updated the patch to the current trunk. Summary ------- Added a framework history to the slave page, an executor history to the framework page, and a task history to the executor page. Allows stdout and stderr of executors to be viewed after they finish executing. Also added history recovery after a master failure. This addresses bug MESOS-8 . https://issues.apache.org/jira/browse/MESOS-8 Diffs (updated) src/master/http.cpp 7ebcc1b src/master/master.hpp 8a34d7e src/master/master.cpp 4dc9ee0 src/messages/messages.proto 87e1548 src/slave/constants.hpp f0c8679 src/slave/http.cpp 19c48a0 src/slave/slave.hpp 279bc7b src/slave/slave.cpp 3358ec4 src/webui/slave/executor.tpl dd53464 src/webui/slave/framework.tpl 9488da5 src/webui/slave/index.tpl b2e2097 Diff: https://reviews.apache.org/r/2990/diff Testing ------- Thanks, Thomas
        Hide
        Benjamin Mahler added a comment -

        Marking this as completed based what's in trunk now.

        Reviews from both Thomas and myself completed this.

        Show
        Benjamin Mahler added a comment - Marking this as completed based what's in trunk now. Reviews from both Thomas and myself completed this.

          People

          • Assignee:
            Thomas Marshall
            Reporter:
            Matei Zaharia
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development