You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Niklas Nielsen <ni...@qni.dk> on 2014/04/10 18:21:24 UTC

Review Request 20219: Changed Executor::resources to option type.

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

Review request for mesos, Ian Downes and Vinod Kone.


Repository: mesos-git


Description
-------

Yet another split out of the task-info RR (r19795/r18403) which turns
Executor::resources into an option type.  It is needed when the
executor info isn't known up-front (the main motivation behind the
task-info RR) and the executor resources therefore cannot be known
until after the containerizer has launched the container.


Diffs
-----

  src/slave/http.cpp 594032d 
  src/slave/slave.hpp 08f6005 
  src/slave/slave.cpp cddb241 

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


Testing
-------

make check


Thanks,

Niklas Nielsen


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Benjamin Hindman <be...@berkeley.edu>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20219/#review40270
-----------------------------------------------------------

Ship it!


LGTM Niklas, let's get it submitted.

- Benjamin Hindman


On April 10, 2014, 8:58 p.m., Niklas Nielsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20219/
> -----------------------------------------------------------
> 
> (Updated April 10, 2014, 8:58 p.m.)
> 
> 
> Review request for mesos, Ian Downes and Vinod Kone.
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Yet another split out of the task-info RR (r19795/r18403) which turns
> Executor::resources into an option type.  It is needed when the
> executor info isn't known up-front (the main motivation behind the
> task-info RR) and the executor resources therefore cannot be known
> until after the containerizer has launched the container.
> 
> 
> Diffs
> -----
> 
>   src/slave/http.cpp 594032d 
>   src/slave/slave.hpp 08f6005 
>   src/slave/slave.cpp cddb241 
> 
> Diff: https://reviews.apache.org/r/20219/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Niklas Nielsen
> 
>


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Niklas Nielsen <ni...@qni.dk>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20219/
-----------------------------------------------------------

(Updated April 10, 2014, 1:58 p.m.)


Review request for mesos, Ian Downes and Vinod Kone.


Changes
-------

Addressed Ben's comments.


Repository: mesos-git


Description
-------

Yet another split out of the task-info RR (r19795/r18403) which turns
Executor::resources into an option type.  It is needed when the
executor info isn't known up-front (the main motivation behind the
task-info RR) and the executor resources therefore cannot be known
until after the containerizer has launched the container.


Diffs (updated)
-----

  src/slave/http.cpp 594032d 
  src/slave/slave.hpp 08f6005 
  src/slave/slave.cpp cddb241 

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


Testing
-------

make check


Thanks,

Niklas Nielsen


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Niklas Nielsen <ni...@qni.dk>.

> On April 10, 2014, 12:52 p.m., Benjamin Hindman wrote:
> > src/slave/slave.hpp, line 421
> > <https://reviews.apache.org/r/20219/diff/1/?file=554472#file554472line421>
> >
> >     You have in the description of this review "an option type ... is needed when the
> >     executor info isn't known up-front and the executor resources therefore cannot be known
> >     until after the containerizer has launched the container." Something along these lines would be great for posterity as a comment here! ;)

Great point - thanks!


> On April 10, 2014, 12:52 p.m., Benjamin Hindman wrote:
> > src/slave/slave.cpp, lines 3254-3256
> > <https://reviews.apache.org/r/20219/diff/1/?file=554473#file554473line3254>
> >
> >     Can we move the CHECK_SOME down here?
> >     
> >     launchedTasks[task.task_id()] = t;
> >     
> >     CHECK_SOME(resources);
> >     resources = resources.get() + task.resources();
> >     
> >     return t;

You bet!


> On April 10, 2014, 12:52 p.m., Benjamin Hindman wrote:
> > src/slave/slave.cpp, lines 3274-3275
> > <https://reviews.apache.org/r/20219/diff/1/?file=554473#file554473line3274>
> >
> >     Swap these two?

Done :)


- Niklas


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


On April 10, 2014, 1:58 p.m., Niklas Nielsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20219/
> -----------------------------------------------------------
> 
> (Updated April 10, 2014, 1:58 p.m.)
> 
> 
> Review request for mesos, Ian Downes and Vinod Kone.
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Yet another split out of the task-info RR (r19795/r18403) which turns
> Executor::resources into an option type.  It is needed when the
> executor info isn't known up-front (the main motivation behind the
> task-info RR) and the executor resources therefore cannot be known
> until after the containerizer has launched the container.
> 
> 
> Diffs
> -----
> 
>   src/slave/http.cpp 594032d 
>   src/slave/slave.hpp 08f6005 
>   src/slave/slave.cpp cddb241 
> 
> Diff: https://reviews.apache.org/r/20219/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Niklas Nielsen
> 
>


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Benjamin Hindman <be...@berkeley.edu>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20219/#review40070
-----------------------------------------------------------



src/slave/slave.hpp
<https://reviews.apache.org/r/20219/#comment72887>

    You have in the description of this review "an option type ... is needed when the
    executor info isn't known up-front and the executor resources therefore cannot be known
    until after the containerizer has launched the container." Something along these lines would be great for posterity as a comment here! ;)



src/slave/slave.cpp
<https://reviews.apache.org/r/20219/#comment72888>

    Can we move the CHECK_SOME down here?
    
    launchedTasks[task.task_id()] = t;
    
    CHECK_SOME(resources);
    resources = resources.get() + task.resources();
    
    return t;



src/slave/slave.cpp
<https://reviews.apache.org/r/20219/#comment72889>

    Swap these two?


- Benjamin Hindman


On April 10, 2014, 4:21 p.m., Niklas Nielsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20219/
> -----------------------------------------------------------
> 
> (Updated April 10, 2014, 4:21 p.m.)
> 
> 
> Review request for mesos, Ian Downes and Vinod Kone.
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Yet another split out of the task-info RR (r19795/r18403) which turns
> Executor::resources into an option type.  It is needed when the
> executor info isn't known up-front (the main motivation behind the
> task-info RR) and the executor resources therefore cannot be known
> until after the containerizer has launched the container.
> 
> 
> Diffs
> -----
> 
>   src/slave/http.cpp 594032d 
>   src/slave/slave.hpp 08f6005 
>   src/slave/slave.cpp cddb241 
> 
> Diff: https://reviews.apache.org/r/20219/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Niklas Nielsen
> 
>


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Niklas Nielsen <ni...@qni.dk>.

> On April 10, 2014, 10:21 a.m., Mesos ReviewBot wrote:
> > Bad patch!
> > 
> > Reviews applied: [20219]
> > 
> > Failed command: make check
> > 
> > Error:
> >  Making check in .
> > make[1]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot'
> > make[1]: Nothing to be done for `check-am'.
> > make[1]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot'
> > Making check in 3rdparty
> > make[1]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > make  check-recursive
> > make[2]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > Making check in libprocess
> > make[3]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess'
> > Making check in 3rdparty
> > make[4]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make  check-recursive
> > make[5]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > Making check in stout
> > make[6]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty/stout'
> > make[6]: Nothing to be done for `check'.
> > make[6]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty/stout'
> > make[6]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make  libgmock.la stout-tests
> > make[7]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[7]: `libgmock.la' is up to date.
> > make[7]: `stout-tests' is up to date.
> > make[7]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make  check-local
> > make[7]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > ./stout-tests
> > [==========] Running 118 tests from 24 test cases.
> > [----------] Global test environment set-up.
> > [----------] 3 tests from Stout
> > [ RUN      ] Stout.Bytes
> > [       OK ] Stout.Bytes (0 ms)
> > [ RUN      ] Stout.Set
> > [       OK ] Stout.Set (0 ms)
> > [ RUN      ] Stout.Some
> > [       OK ] Stout.Some (0 ms)
> > [----------] 3 tests from Stout (0 ms total)
> > 
> > [----------] 4 tests from Cache
> > [ RUN      ] Cache.Insert
> > [       OK ] Cache.Insert (0 ms)
> > [ RUN      ] Cache.Update
> > [       OK ] Cache.Update (0 ms)
> > [ RUN      ] Cache.Erase
> > [       OK ] Cache.Erase (0 ms)
> > [ RUN      ] Cache.LRUEviction
> > [       OK ] Cache.LRUEviction (0 ms)
> > [----------] 4 tests from Cache (0 ms total)
> > 
> > [----------] 4 tests from DurationTest
> > [ RUN      ] DurationTest.Comparison
> > [       OK ] DurationTest.Comparison (0 ms)
> > [ RUN      ] DurationTest.ParseAndTry
> > [       OK ] DurationTest.ParseAndTry (16 ms)
> > [ RUN      ] DurationTest.Arithmetic
> > [       OK ] DurationTest.Arithmetic (0 ms)
> > [ RUN      ] DurationTest.OutputFormat
> > [       OK ] DurationTest.OutputFormat (0 ms)
> > [----------] 4 tests from DurationTest (16 ms total)
> > 
> > [----------] 1 test from ErrorTest
> > [ RUN      ] ErrorTest.Test
> > [       OK ] ErrorTest.Test (0 ms)
> > [----------] 1 test from ErrorTest (0 ms total)
> > 
> > [----------] 12 tests from FlagsTest
> > [ RUN      ] FlagsTest.Load
> > [       OK ] FlagsTest.Load (0 ms)
> > [ RUN      ] FlagsTest.Add
> > [       OK ] FlagsTest.Add (1 ms)
> > [ RUN      ] FlagsTest.Flags
> > [       OK ] FlagsTest.Flags (0 ms)
> > [ RUN      ] FlagsTest.LoadFromEnvironment
> > [       OK ] FlagsTest.LoadFromEnvironment (0 ms)
> > [ RUN      ] FlagsTest.LoadFromCommandLine
> > [       OK ] FlagsTest.LoadFromCommandLine (0 ms)
> > [ RUN      ] FlagsTest.LoadFromCommandLineWithNonFlags
> > [       OK ] FlagsTest.LoadFromCommandLineWithNonFlags (0 ms)
> > [ RUN      ] FlagsTest.Stringification
> > [       OK ] FlagsTest.Stringification (0 ms)
> > [ RUN      ] FlagsTest.DuplicatesFromEnvironment
> > [       OK ] FlagsTest.DuplicatesFromEnvironment (0 ms)
> > [ RUN      ] FlagsTest.DuplicatesFromCommandLine
> > [       OK ] FlagsTest.DuplicatesFromCommandLine (0 ms)
> > [ RUN      ] FlagsTest.Errors
> > [       OK ] FlagsTest.Errors (0 ms)
> > [ RUN      ] FlagsTest.Usage
> > [       OK ] FlagsTest.Usage (0 ms)
> > [ RUN      ] FlagsTest.Duration
> > [       OK ] FlagsTest.Duration (0 ms)
> > [----------] 12 tests from FlagsTest (1 ms total)
> > 
> > [----------] 1 test from GzipTest
> > [ RUN      ] GzipTest.CompressDecompressString
> > [       OK ] GzipTest.CompressDecompressString (107 ms)
> > [----------] 1 test from GzipTest (107 ms total)
> > 
> > [----------] 2 tests from HashMapTest
> > [ RUN      ] HashMapTest.Insert
> > [       OK ] HashMapTest.Insert (0 ms)
> > [ RUN      ] HashMapTest.Contains
> > [       OK ] HashMapTest.Contains (0 ms)
> > [----------] 2 tests from HashMapTest (0 ms total)
> > 
> > [----------] 2 tests from HashsetTest
> > [ RUN      ] HashsetTest.Insert
> > [       OK ] HashsetTest.Insert (0 ms)
> > [ RUN      ] HashsetTest.Union
> > [       OK ] HashsetTest.Union (0 ms)
> > [----------] 2 tests from HashsetTest (0 ms total)
> > 
> > [----------] 8 tests from IntervalTest
> > [ RUN      ] IntervalTest.Interval
> > [       OK ] IntervalTest.Interval (0 ms)
> > [ RUN      ] IntervalTest.EmptyInterval
> > [       OK ] IntervalTest.EmptyInterval (0 ms)
> > [ RUN      ] IntervalTest.Constructor
> > [       OK ] IntervalTest.Constructor (0 ms)
> > [ RUN      ] IntervalTest.Addition
> > [       OK ] IntervalTest.Addition (0 ms)
> > [ RUN      ] IntervalTest.Subtraction
> > [       OK ] IntervalTest.Subtraction (0 ms)
> > [ RUN      ] IntervalTest.Intersection
> > [       OK ] IntervalTest.Intersection (0 ms)
> > [ RUN      ] IntervalTest.LargeInterval
> > [       OK ] IntervalTest.LargeInterval (0 ms)
> > [ RUN      ] IntervalTest.IntervalIteration
> > [       OK ] IntervalTest.IntervalIteration (0 ms)
> > [----------] 8 tests from IntervalTest (1 ms total)
> > 
> > [----------] 8 tests from JsonTest
> > [ RUN      ] JsonTest.DefaultValueIsNull
> > [       OK ] JsonTest.DefaultValueIsNull (0 ms)
> > [ RUN      ] JsonTest.BinaryData
> > [       OK ] JsonTest.BinaryData (0 ms)
> > [ RUN      ] JsonTest.NumberFormat
> > [       OK ] JsonTest.NumberFormat (0 ms)
> > [ RUN      ] JsonTest.BooleanFormat
> > [       OK ] JsonTest.BooleanFormat (0 ms)
> > [ RUN      ] JsonTest.BooleanAssignement
> > [       OK ] JsonTest.BooleanAssignement (0 ms)
> > [ RUN      ] JsonTest.CStringAssignment
> > [       OK ] JsonTest.CStringAssignment (0 ms)
> > [ RUN      ] JsonTest.NumericAssignment
> > [       OK ] JsonTest.NumericAssignment (0 ms)
> > [ RUN      ] JsonTest.parse
> > [       OK ] JsonTest.parse (0 ms)
> > [----------] 8 tests from JsonTest (0 ms total)
> > 
> > [----------] 5 tests from LinkedHashmapTest
> > [ RUN      ] LinkedHashmapTest.Put
> > [       OK ] LinkedHashmapTest.Put (0 ms)
> > [ RUN      ] LinkedHashmapTest.Contains
> > [       OK ] LinkedHashmapTest.Contains (0 ms)
> > [ RUN      ] LinkedHashmapTest.Erase
> > [       OK ] LinkedHashmapTest.Erase (0 ms)
> > [ RUN      ] LinkedHashmapTest.Keys
> > [       OK ] LinkedHashmapTest.Keys (0 ms)
> > [ RUN      ] LinkedHashmapTest.Values
> > [       OK ] LinkedHashmapTest.Values (0 ms)
> > [----------] 5 tests from LinkedHashmapTest (0 ms total)
> > 
> > [----------] 6 tests from MultimapTest/0, where TypeParam = Multimap<std::string, unsigned short>
> > [ RUN      ] MultimapTest/0.Put
> > [       OK ] MultimapTest/0.Put (0 ms)
> > [ RUN      ] MultimapTest/0.Remove
> > [       OK ] MultimapTest/0.Remove (0 ms)
> > [ RUN      ] MultimapTest/0.Size
> > [       OK ] MultimapTest/0.Size (0 ms)
> > [ RUN      ] MultimapTest/0.Keys
> > [       OK ] MultimapTest/0.Keys (0 ms)
> > [ RUN      ] MultimapTest/0.Iterator
> > [       OK ] MultimapTest/0.Iterator (0 ms)
> > [ RUN      ] MultimapTest/0.Foreach
> > [       OK ] MultimapTest/0.Foreach (0 ms)
> > [----------] 6 tests from MultimapTest/0 (0 ms total)
> > 
> > [----------] 6 tests from MultimapTest/1, where TypeParam = multihashmap<std::string, unsigned short>
> > [ RUN      ] MultimapTest/1.Put
> > [       OK ] MultimapTest/1.Put (0 ms)
> > [ RUN      ] MultimapTest/1.Remove
> > [       OK ] MultimapTest/1.Remove (0 ms)
> > [ RUN      ] MultimapTest/1.Size
> > [       OK ] MultimapTest/1.Size (0 ms)
> > [ RUN      ] MultimapTest/1.Keys
> > [       OK ] MultimapTest/1.Keys (0 ms)
> > [ RUN      ] MultimapTest/1.Iterator
> > [       OK ] MultimapTest/1.Iterator (0 ms)
> > [ RUN      ] MultimapTest/1.Foreach
> > [       OK ] MultimapTest/1.Foreach (0 ms)
> > [----------] 6 tests from MultimapTest/1 (1 ms total)
> > 
> > [----------] 2 tests from NetTest
> > [ RUN      ] NetTest.mac
> > [       OK ] NetTest.mac (16 ms)
> > [ RUN      ] NetTest.ip
> > [       OK ] NetTest.ip (0 ms)
> > [----------] 2 tests from NetTest (16 ms total)
> > 
> > [----------] 1 test from NoneTest
> > [ RUN      ] NoneTest.Test
> > [       OK ] NoneTest.Test (0 ms)
> > [----------] 1 test from NoneTest (0 ms total)
> > 
> > [----------] 3 tests from OptionTest
> > [ RUN      ] OptionTest.Min
> > [       OK ] OptionTest.Min (0 ms)
> > [ RUN      ] OptionTest.Max
> > [       OK ] OptionTest.Max (0 ms)
> > [ RUN      ] OptionTest.Comparison
> > [       OK ] OptionTest.Comparison (0 ms)
> > [----------] 3 tests from OptionTest (0 ms total)
> > 
> > [----------] 17 tests from OsTest
> > [ RUN      ] OsTest.environment
> > [       OK ] OsTest.environment (0 ms)
> > [ RUN      ] OsTest.rmdir
> > [       OK ] OsTest.rmdir (1 ms)
> > [ RUN      ] OsTest.nonblock
> > [       OK ] OsTest.nonblock (0 ms)
> > [ RUN      ] OsTest.touch
> > [       OK ] OsTest.touch (1 ms)
> > [ RUN      ] OsTest.readWriteString
> > [       OK ] OsTest.readWriteString (1 ms)
> > [ RUN      ] OsTest.find
> > [       OK ] OsTest.find (0 ms)
> > [ RUN      ] OsTest.bootId
> > [       OK ] OsTest.bootId (1 ms)
> > [ RUN      ] OsTest.uname
> > [       OK ] OsTest.uname (0 ms)
> > [ RUN      ] OsTest.sysname
> > [       OK ] OsTest.sysname (0 ms)
> > [ RUN      ] OsTest.release
> > [       OK ] OsTest.release (0 ms)
> > [ RUN      ] OsTest.sleep
> > [       OK ] OsTest.sleep (11 ms)
> > [ RUN      ] OsTest.pids
> > [       OK ] OsTest.pids (262 ms)
> > [ RUN      ] OsTest.children
> > [       OK ] OsTest.children (41 ms)
> > [ RUN      ] OsTest.process
> > [       OK ] OsTest.process (0 ms)
> > [ RUN      ] OsTest.processes
> > [       OK ] OsTest.processes (18 ms)
> > [ RUN      ] OsTest.killtree
> > [       OK ] OsTest.killtree (94 ms)
> > [ RUN      ] OsTest.pstree
> > [       OK ] OsTest.pstree (36 ms)
> > [----------] 17 tests from OsTest (468 ms total)
> > 
> > [----------] 1 test from ProtobufTest
> > [ RUN      ] ProtobufTest.JSON
> > [       OK ] ProtobufTest.JSON (1 ms)
> > [----------] 1 test from ProtobufTest (1 ms total)
> > 
> > [----------] 1 test from OsSendfileTest
> > [ RUN      ] OsSendfileTest.sendfile
> > [       OK ] OsSendfileTest.sendfile (0 ms)
> > [----------] 1 test from OsSendfileTest (0 ms total)
> > 
> > [----------] 1 test from OsSignalsTest
> > [ RUN      ] OsSignalsTest.suppress
> > [       OK ] OsSignalsTest.suppress (0 ms)
> > [----------] 1 test from OsSignalsTest (0 ms total)
> > 
> > [----------] 22 tests from StringsTest
> > [ RUN      ] StringsTest.Format
> > [       OK ] StringsTest.Format (0 ms)
> > [ RUN      ] StringsTest.Remove
> > [       OK ] StringsTest.Remove (0 ms)
> > [ RUN      ] StringsTest.Replace
> > [       OK ] StringsTest.Replace (0 ms)
> > [ RUN      ] StringsTest.Trim
> > [       OK ] StringsTest.Trim (0 ms)
> > [ RUN      ] StringsTest.Tokenize
> > [       OK ] StringsTest.Tokenize (0 ms)
> > [ RUN      ] StringsTest.TokenizeStringWithDelimsAtStart
> > [       OK ] StringsTest.TokenizeStringWithDelimsAtStart (0 ms)
> > [ RUN      ] StringsTest.TokenizeStringWithDelimsAtEnd
> > [       OK ] StringsTest.TokenizeStringWithDelimsAtEnd (0 ms)
> > [ RUN      ] StringsTest.TokenizeStringWithDelimsAtStartAndEnd
> > [       OK ] StringsTest.TokenizeStringWithDelimsAtStartAndEnd (0 ms)
> > [ RUN      ] StringsTest.TokenizeWithMultipleDelims
> > [       OK ] StringsTest.TokenizeWithMultipleDelims (0 ms)
> > [ RUN      ] StringsTest.TokenizeEmptyString
> > [       OK ] StringsTest.TokenizeEmptyString (0 ms)
> > [ RUN      ] StringsTest.TokenizeDelimOnlyString
> > [       OK ] StringsTest.TokenizeDelimOnlyString (0 ms)
> > [ RUN      ] StringsTest.TokenizeNullByteDelim
> > [       OK ] StringsTest.TokenizeNullByteDelim (0 ms)
> > [ RUN      ] StringsTest.SplitEmptyString
> > [       OK ] StringsTest.SplitEmptyString (0 ms)
> > [ RUN      ] StringsTest.SplitDelimOnlyString
> > [       OK ] StringsTest.SplitDelimOnlyString (0 ms)
> > [ RUN      ] StringsTest.Split
> > [       OK ] StringsTest.Split (0 ms)
> > [ RUN      ] StringsTest.SplitStringWithDelimsAtStart
> > [       OK ] StringsTest.SplitStringWithDelimsAtStart (0 ms)
> > [ RUN      ] StringsTest.SplitStringWithDelimsAtEnd
> > [       OK ] StringsTest.SplitStringWithDelimsAtEnd (0 ms)
> > [ RUN      ] StringsTest.SplitStringWithDelimsAtStartAndEnd
> > [       OK ] StringsTest.SplitStringWithDelimsAtStartAndEnd (0 ms)
> > [ RUN      ] StringsTest.SplitWithMultipleDelims
> > [       OK ] StringsTest.SplitWithMultipleDelims (0 ms)
> > [ RUN      ] StringsTest.Pairs
> > [       OK ] StringsTest.Pairs (1 ms)
> > [ RUN      ] StringsTest.StartsWith
> > [       OK ] StringsTest.StartsWith (0 ms)
> > [ RUN      ] StringsTest.Contains
> > [       OK ] StringsTest.Contains (0 ms)
> > [----------] 22 tests from StringsTest (1 ms total)
> > 
> > [----------] 1 test from Thread
> > [ RUN      ] Thread.local
> > [       OK ] Thread.local (0 ms)
> > [----------] 1 test from Thread (0 ms total)
> > 
> > [----------] 1 test from UUIDTest
> > [ RUN      ] UUIDTest.test
> > [       OK ] UUIDTest.test (0 ms)
> > [----------] 1 test from UUIDTest (0 ms total)
> > 
> > [----------] 6 tests from ProcTest
> > [ RUN      ] ProcTest.pids
> > [       OK ] ProcTest.pids (1 ms)
> > [ RUN      ] ProcTest.cpus
> > [       OK ] ProcTest.cpus (0 ms)
> > [ RUN      ] ProcTest.SystemStatus
> > [       OK ] ProcTest.SystemStatus (0 ms)
> > [ RUN      ] ProcTest.ProcessStatus
> > [       OK ] ProcTest.ProcessStatus (0 ms)
> > [ RUN      ] ProcTest.SingleThread
> > [       OK ] ProcTest.SingleThread (1 ms)
> > [ RUN      ] ProcTest.MultipleThreads
> > stout/tests/proc_tests.cpp:164: Failure
> > read is NONE
> > [  FAILED  ] ProcTest.MultipleThreads (1 ms)
> > [----------] 6 tests from ProcTest (4 ms total)
> > 
> > [----------] Global test environment tear-down
> > [==========] 118 tests from 24 test cases ran. (616 ms total)
> > [  PASSED  ] 117 tests.
> > [  FAILED  ] 1 test, listed below:
> > [  FAILED  ] ProcTest.MultipleThreads
> > 
> >  1 FAILED TEST
> > make[7]: *** [check-local] Error 1
> > make[7]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[6]: *** [check-am] Error 2
> > make[6]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[5]: *** [check-recursive] Error 1
> > make[5]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[4]: *** [check] Error 2
> > make[4]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[3]: *** [check-recursive] Error 1
> > make[3]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess'
> > make[2]: *** [check-recursive] Error 1
> > make[2]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > make[1]: *** [check] Error 2
> > make[1]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > make: *** [check-recursive] Error 1
> >

Looks like a flaky test?


- Niklas


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


On April 10, 2014, 9:21 a.m., Niklas Nielsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20219/
> -----------------------------------------------------------
> 
> (Updated April 10, 2014, 9:21 a.m.)
> 
> 
> Review request for mesos, Ian Downes and Vinod Kone.
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Yet another split out of the task-info RR (r19795/r18403) which turns
> Executor::resources into an option type.  It is needed when the
> executor info isn't known up-front (the main motivation behind the
> task-info RR) and the executor resources therefore cannot be known
> until after the containerizer has launched the container.
> 
> 
> Diffs
> -----
> 
>   src/slave/http.cpp 594032d 
>   src/slave/slave.hpp 08f6005 
>   src/slave/slave.cpp cddb241 
> 
> Diff: https://reviews.apache.org/r/20219/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Niklas Nielsen
> 
>


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Vinod Kone <vi...@gmail.com>.

> On April 10, 2014, 5:21 p.m., Mesos ReviewBot wrote:
> > Bad patch!
> > 
> > Reviews applied: [20219]
> > 
> > Failed command: make check
> > 
> > Error:
> >  Making check in .
> > make[1]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot'
> > make[1]: Nothing to be done for `check-am'.
> > make[1]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot'
> > Making check in 3rdparty
> > make[1]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > make  check-recursive
> > make[2]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > Making check in libprocess
> > make[3]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess'
> > Making check in 3rdparty
> > make[4]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make  check-recursive
> > make[5]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > Making check in stout
> > make[6]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty/stout'
> > make[6]: Nothing to be done for `check'.
> > make[6]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty/stout'
> > make[6]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make  libgmock.la stout-tests
> > make[7]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[7]: `libgmock.la' is up to date.
> > make[7]: `stout-tests' is up to date.
> > make[7]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make  check-local
> > make[7]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > ./stout-tests
> > [==========] Running 118 tests from 24 test cases.
> > [----------] Global test environment set-up.
> > [----------] 3 tests from Stout
> > [ RUN      ] Stout.Bytes
> > [       OK ] Stout.Bytes (0 ms)
> > [ RUN      ] Stout.Set
> > [       OK ] Stout.Set (0 ms)
> > [ RUN      ] Stout.Some
> > [       OK ] Stout.Some (0 ms)
> > [----------] 3 tests from Stout (0 ms total)
> > 
> > [----------] 4 tests from Cache
> > [ RUN      ] Cache.Insert
> > [       OK ] Cache.Insert (0 ms)
> > [ RUN      ] Cache.Update
> > [       OK ] Cache.Update (0 ms)
> > [ RUN      ] Cache.Erase
> > [       OK ] Cache.Erase (0 ms)
> > [ RUN      ] Cache.LRUEviction
> > [       OK ] Cache.LRUEviction (0 ms)
> > [----------] 4 tests from Cache (0 ms total)
> > 
> > [----------] 4 tests from DurationTest
> > [ RUN      ] DurationTest.Comparison
> > [       OK ] DurationTest.Comparison (0 ms)
> > [ RUN      ] DurationTest.ParseAndTry
> > [       OK ] DurationTest.ParseAndTry (16 ms)
> > [ RUN      ] DurationTest.Arithmetic
> > [       OK ] DurationTest.Arithmetic (0 ms)
> > [ RUN      ] DurationTest.OutputFormat
> > [       OK ] DurationTest.OutputFormat (0 ms)
> > [----------] 4 tests from DurationTest (16 ms total)
> > 
> > [----------] 1 test from ErrorTest
> > [ RUN      ] ErrorTest.Test
> > [       OK ] ErrorTest.Test (0 ms)
> > [----------] 1 test from ErrorTest (0 ms total)
> > 
> > [----------] 12 tests from FlagsTest
> > [ RUN      ] FlagsTest.Load
> > [       OK ] FlagsTest.Load (0 ms)
> > [ RUN      ] FlagsTest.Add
> > [       OK ] FlagsTest.Add (1 ms)
> > [ RUN      ] FlagsTest.Flags
> > [       OK ] FlagsTest.Flags (0 ms)
> > [ RUN      ] FlagsTest.LoadFromEnvironment
> > [       OK ] FlagsTest.LoadFromEnvironment (0 ms)
> > [ RUN      ] FlagsTest.LoadFromCommandLine
> > [       OK ] FlagsTest.LoadFromCommandLine (0 ms)
> > [ RUN      ] FlagsTest.LoadFromCommandLineWithNonFlags
> > [       OK ] FlagsTest.LoadFromCommandLineWithNonFlags (0 ms)
> > [ RUN      ] FlagsTest.Stringification
> > [       OK ] FlagsTest.Stringification (0 ms)
> > [ RUN      ] FlagsTest.DuplicatesFromEnvironment
> > [       OK ] FlagsTest.DuplicatesFromEnvironment (0 ms)
> > [ RUN      ] FlagsTest.DuplicatesFromCommandLine
> > [       OK ] FlagsTest.DuplicatesFromCommandLine (0 ms)
> > [ RUN      ] FlagsTest.Errors
> > [       OK ] FlagsTest.Errors (0 ms)
> > [ RUN      ] FlagsTest.Usage
> > [       OK ] FlagsTest.Usage (0 ms)
> > [ RUN      ] FlagsTest.Duration
> > [       OK ] FlagsTest.Duration (0 ms)
> > [----------] 12 tests from FlagsTest (1 ms total)
> > 
> > [----------] 1 test from GzipTest
> > [ RUN      ] GzipTest.CompressDecompressString
> > [       OK ] GzipTest.CompressDecompressString (107 ms)
> > [----------] 1 test from GzipTest (107 ms total)
> > 
> > [----------] 2 tests from HashMapTest
> > [ RUN      ] HashMapTest.Insert
> > [       OK ] HashMapTest.Insert (0 ms)
> > [ RUN      ] HashMapTest.Contains
> > [       OK ] HashMapTest.Contains (0 ms)
> > [----------] 2 tests from HashMapTest (0 ms total)
> > 
> > [----------] 2 tests from HashsetTest
> > [ RUN      ] HashsetTest.Insert
> > [       OK ] HashsetTest.Insert (0 ms)
> > [ RUN      ] HashsetTest.Union
> > [       OK ] HashsetTest.Union (0 ms)
> > [----------] 2 tests from HashsetTest (0 ms total)
> > 
> > [----------] 8 tests from IntervalTest
> > [ RUN      ] IntervalTest.Interval
> > [       OK ] IntervalTest.Interval (0 ms)
> > [ RUN      ] IntervalTest.EmptyInterval
> > [       OK ] IntervalTest.EmptyInterval (0 ms)
> > [ RUN      ] IntervalTest.Constructor
> > [       OK ] IntervalTest.Constructor (0 ms)
> > [ RUN      ] IntervalTest.Addition
> > [       OK ] IntervalTest.Addition (0 ms)
> > [ RUN      ] IntervalTest.Subtraction
> > [       OK ] IntervalTest.Subtraction (0 ms)
> > [ RUN      ] IntervalTest.Intersection
> > [       OK ] IntervalTest.Intersection (0 ms)
> > [ RUN      ] IntervalTest.LargeInterval
> > [       OK ] IntervalTest.LargeInterval (0 ms)
> > [ RUN      ] IntervalTest.IntervalIteration
> > [       OK ] IntervalTest.IntervalIteration (0 ms)
> > [----------] 8 tests from IntervalTest (1 ms total)
> > 
> > [----------] 8 tests from JsonTest
> > [ RUN      ] JsonTest.DefaultValueIsNull
> > [       OK ] JsonTest.DefaultValueIsNull (0 ms)
> > [ RUN      ] JsonTest.BinaryData
> > [       OK ] JsonTest.BinaryData (0 ms)
> > [ RUN      ] JsonTest.NumberFormat
> > [       OK ] JsonTest.NumberFormat (0 ms)
> > [ RUN      ] JsonTest.BooleanFormat
> > [       OK ] JsonTest.BooleanFormat (0 ms)
> > [ RUN      ] JsonTest.BooleanAssignement
> > [       OK ] JsonTest.BooleanAssignement (0 ms)
> > [ RUN      ] JsonTest.CStringAssignment
> > [       OK ] JsonTest.CStringAssignment (0 ms)
> > [ RUN      ] JsonTest.NumericAssignment
> > [       OK ] JsonTest.NumericAssignment (0 ms)
> > [ RUN      ] JsonTest.parse
> > [       OK ] JsonTest.parse (0 ms)
> > [----------] 8 tests from JsonTest (0 ms total)
> > 
> > [----------] 5 tests from LinkedHashmapTest
> > [ RUN      ] LinkedHashmapTest.Put
> > [       OK ] LinkedHashmapTest.Put (0 ms)
> > [ RUN      ] LinkedHashmapTest.Contains
> > [       OK ] LinkedHashmapTest.Contains (0 ms)
> > [ RUN      ] LinkedHashmapTest.Erase
> > [       OK ] LinkedHashmapTest.Erase (0 ms)
> > [ RUN      ] LinkedHashmapTest.Keys
> > [       OK ] LinkedHashmapTest.Keys (0 ms)
> > [ RUN      ] LinkedHashmapTest.Values
> > [       OK ] LinkedHashmapTest.Values (0 ms)
> > [----------] 5 tests from LinkedHashmapTest (0 ms total)
> > 
> > [----------] 6 tests from MultimapTest/0, where TypeParam = Multimap<std::string, unsigned short>
> > [ RUN      ] MultimapTest/0.Put
> > [       OK ] MultimapTest/0.Put (0 ms)
> > [ RUN      ] MultimapTest/0.Remove
> > [       OK ] MultimapTest/0.Remove (0 ms)
> > [ RUN      ] MultimapTest/0.Size
> > [       OK ] MultimapTest/0.Size (0 ms)
> > [ RUN      ] MultimapTest/0.Keys
> > [       OK ] MultimapTest/0.Keys (0 ms)
> > [ RUN      ] MultimapTest/0.Iterator
> > [       OK ] MultimapTest/0.Iterator (0 ms)
> > [ RUN      ] MultimapTest/0.Foreach
> > [       OK ] MultimapTest/0.Foreach (0 ms)
> > [----------] 6 tests from MultimapTest/0 (0 ms total)
> > 
> > [----------] 6 tests from MultimapTest/1, where TypeParam = multihashmap<std::string, unsigned short>
> > [ RUN      ] MultimapTest/1.Put
> > [       OK ] MultimapTest/1.Put (0 ms)
> > [ RUN      ] MultimapTest/1.Remove
> > [       OK ] MultimapTest/1.Remove (0 ms)
> > [ RUN      ] MultimapTest/1.Size
> > [       OK ] MultimapTest/1.Size (0 ms)
> > [ RUN      ] MultimapTest/1.Keys
> > [       OK ] MultimapTest/1.Keys (0 ms)
> > [ RUN      ] MultimapTest/1.Iterator
> > [       OK ] MultimapTest/1.Iterator (0 ms)
> > [ RUN      ] MultimapTest/1.Foreach
> > [       OK ] MultimapTest/1.Foreach (0 ms)
> > [----------] 6 tests from MultimapTest/1 (1 ms total)
> > 
> > [----------] 2 tests from NetTest
> > [ RUN      ] NetTest.mac
> > [       OK ] NetTest.mac (16 ms)
> > [ RUN      ] NetTest.ip
> > [       OK ] NetTest.ip (0 ms)
> > [----------] 2 tests from NetTest (16 ms total)
> > 
> > [----------] 1 test from NoneTest
> > [ RUN      ] NoneTest.Test
> > [       OK ] NoneTest.Test (0 ms)
> > [----------] 1 test from NoneTest (0 ms total)
> > 
> > [----------] 3 tests from OptionTest
> > [ RUN      ] OptionTest.Min
> > [       OK ] OptionTest.Min (0 ms)
> > [ RUN      ] OptionTest.Max
> > [       OK ] OptionTest.Max (0 ms)
> > [ RUN      ] OptionTest.Comparison
> > [       OK ] OptionTest.Comparison (0 ms)
> > [----------] 3 tests from OptionTest (0 ms total)
> > 
> > [----------] 17 tests from OsTest
> > [ RUN      ] OsTest.environment
> > [       OK ] OsTest.environment (0 ms)
> > [ RUN      ] OsTest.rmdir
> > [       OK ] OsTest.rmdir (1 ms)
> > [ RUN      ] OsTest.nonblock
> > [       OK ] OsTest.nonblock (0 ms)
> > [ RUN      ] OsTest.touch
> > [       OK ] OsTest.touch (1 ms)
> > [ RUN      ] OsTest.readWriteString
> > [       OK ] OsTest.readWriteString (1 ms)
> > [ RUN      ] OsTest.find
> > [       OK ] OsTest.find (0 ms)
> > [ RUN      ] OsTest.bootId
> > [       OK ] OsTest.bootId (1 ms)
> > [ RUN      ] OsTest.uname
> > [       OK ] OsTest.uname (0 ms)
> > [ RUN      ] OsTest.sysname
> > [       OK ] OsTest.sysname (0 ms)
> > [ RUN      ] OsTest.release
> > [       OK ] OsTest.release (0 ms)
> > [ RUN      ] OsTest.sleep
> > [       OK ] OsTest.sleep (11 ms)
> > [ RUN      ] OsTest.pids
> > [       OK ] OsTest.pids (262 ms)
> > [ RUN      ] OsTest.children
> > [       OK ] OsTest.children (41 ms)
> > [ RUN      ] OsTest.process
> > [       OK ] OsTest.process (0 ms)
> > [ RUN      ] OsTest.processes
> > [       OK ] OsTest.processes (18 ms)
> > [ RUN      ] OsTest.killtree
> > [       OK ] OsTest.killtree (94 ms)
> > [ RUN      ] OsTest.pstree
> > [       OK ] OsTest.pstree (36 ms)
> > [----------] 17 tests from OsTest (468 ms total)
> > 
> > [----------] 1 test from ProtobufTest
> > [ RUN      ] ProtobufTest.JSON
> > [       OK ] ProtobufTest.JSON (1 ms)
> > [----------] 1 test from ProtobufTest (1 ms total)
> > 
> > [----------] 1 test from OsSendfileTest
> > [ RUN      ] OsSendfileTest.sendfile
> > [       OK ] OsSendfileTest.sendfile (0 ms)
> > [----------] 1 test from OsSendfileTest (0 ms total)
> > 
> > [----------] 1 test from OsSignalsTest
> > [ RUN      ] OsSignalsTest.suppress
> > [       OK ] OsSignalsTest.suppress (0 ms)
> > [----------] 1 test from OsSignalsTest (0 ms total)
> > 
> > [----------] 22 tests from StringsTest
> > [ RUN      ] StringsTest.Format
> > [       OK ] StringsTest.Format (0 ms)
> > [ RUN      ] StringsTest.Remove
> > [       OK ] StringsTest.Remove (0 ms)
> > [ RUN      ] StringsTest.Replace
> > [       OK ] StringsTest.Replace (0 ms)
> > [ RUN      ] StringsTest.Trim
> > [       OK ] StringsTest.Trim (0 ms)
> > [ RUN      ] StringsTest.Tokenize
> > [       OK ] StringsTest.Tokenize (0 ms)
> > [ RUN      ] StringsTest.TokenizeStringWithDelimsAtStart
> > [       OK ] StringsTest.TokenizeStringWithDelimsAtStart (0 ms)
> > [ RUN      ] StringsTest.TokenizeStringWithDelimsAtEnd
> > [       OK ] StringsTest.TokenizeStringWithDelimsAtEnd (0 ms)
> > [ RUN      ] StringsTest.TokenizeStringWithDelimsAtStartAndEnd
> > [       OK ] StringsTest.TokenizeStringWithDelimsAtStartAndEnd (0 ms)
> > [ RUN      ] StringsTest.TokenizeWithMultipleDelims
> > [       OK ] StringsTest.TokenizeWithMultipleDelims (0 ms)
> > [ RUN      ] StringsTest.TokenizeEmptyString
> > [       OK ] StringsTest.TokenizeEmptyString (0 ms)
> > [ RUN      ] StringsTest.TokenizeDelimOnlyString
> > [       OK ] StringsTest.TokenizeDelimOnlyString (0 ms)
> > [ RUN      ] StringsTest.TokenizeNullByteDelim
> > [       OK ] StringsTest.TokenizeNullByteDelim (0 ms)
> > [ RUN      ] StringsTest.SplitEmptyString
> > [       OK ] StringsTest.SplitEmptyString (0 ms)
> > [ RUN      ] StringsTest.SplitDelimOnlyString
> > [       OK ] StringsTest.SplitDelimOnlyString (0 ms)
> > [ RUN      ] StringsTest.Split
> > [       OK ] StringsTest.Split (0 ms)
> > [ RUN      ] StringsTest.SplitStringWithDelimsAtStart
> > [       OK ] StringsTest.SplitStringWithDelimsAtStart (0 ms)
> > [ RUN      ] StringsTest.SplitStringWithDelimsAtEnd
> > [       OK ] StringsTest.SplitStringWithDelimsAtEnd (0 ms)
> > [ RUN      ] StringsTest.SplitStringWithDelimsAtStartAndEnd
> > [       OK ] StringsTest.SplitStringWithDelimsAtStartAndEnd (0 ms)
> > [ RUN      ] StringsTest.SplitWithMultipleDelims
> > [       OK ] StringsTest.SplitWithMultipleDelims (0 ms)
> > [ RUN      ] StringsTest.Pairs
> > [       OK ] StringsTest.Pairs (1 ms)
> > [ RUN      ] StringsTest.StartsWith
> > [       OK ] StringsTest.StartsWith (0 ms)
> > [ RUN      ] StringsTest.Contains
> > [       OK ] StringsTest.Contains (0 ms)
> > [----------] 22 tests from StringsTest (1 ms total)
> > 
> > [----------] 1 test from Thread
> > [ RUN      ] Thread.local
> > [       OK ] Thread.local (0 ms)
> > [----------] 1 test from Thread (0 ms total)
> > 
> > [----------] 1 test from UUIDTest
> > [ RUN      ] UUIDTest.test
> > [       OK ] UUIDTest.test (0 ms)
> > [----------] 1 test from UUIDTest (0 ms total)
> > 
> > [----------] 6 tests from ProcTest
> > [ RUN      ] ProcTest.pids
> > [       OK ] ProcTest.pids (1 ms)
> > [ RUN      ] ProcTest.cpus
> > [       OK ] ProcTest.cpus (0 ms)
> > [ RUN      ] ProcTest.SystemStatus
> > [       OK ] ProcTest.SystemStatus (0 ms)
> > [ RUN      ] ProcTest.ProcessStatus
> > [       OK ] ProcTest.ProcessStatus (0 ms)
> > [ RUN      ] ProcTest.SingleThread
> > [       OK ] ProcTest.SingleThread (1 ms)
> > [ RUN      ] ProcTest.MultipleThreads
> > stout/tests/proc_tests.cpp:164: Failure
> > read is NONE
> > [  FAILED  ] ProcTest.MultipleThreads (1 ms)
> > [----------] 6 tests from ProcTest (4 ms total)
> > 
> > [----------] Global test environment tear-down
> > [==========] 118 tests from 24 test cases ran. (616 ms total)
> > [  PASSED  ] 117 tests.
> > [  FAILED  ] 1 test, listed below:
> > [  FAILED  ] ProcTest.MultipleThreads
> > 
> >  1 FAILED TEST
> > make[7]: *** [check-local] Error 1
> > make[7]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[6]: *** [check-am] Error 2
> > make[6]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[5]: *** [check-recursive] Error 1
> > make[5]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[4]: *** [check] Error 2
> > make[4]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
> > make[3]: *** [check-recursive] Error 1
> > make[3]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess'
> > make[2]: *** [check-recursive] Error 1
> > make[2]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > make[1]: *** [check] Error 2
> > make[1]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
> > make: *** [check-recursive] Error 1
> >
> 
> Niklas Nielsen wrote:
>     Looks like a flaky test?

Yup. @Ian: Whats the status of the fix for MultipleThreads test?


- Vinod


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


On April 10, 2014, 4:21 p.m., Niklas Nielsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20219/
> -----------------------------------------------------------
> 
> (Updated April 10, 2014, 4:21 p.m.)
> 
> 
> Review request for mesos, Ian Downes and Vinod Kone.
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Yet another split out of the task-info RR (r19795/r18403) which turns
> Executor::resources into an option type.  It is needed when the
> executor info isn't known up-front (the main motivation behind the
> task-info RR) and the executor resources therefore cannot be known
> until after the containerizer has launched the container.
> 
> 
> Diffs
> -----
> 
>   src/slave/http.cpp 594032d 
>   src/slave/slave.hpp 08f6005 
>   src/slave/slave.cpp cddb241 
> 
> Diff: https://reviews.apache.org/r/20219/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Niklas Nielsen
> 
>


Re: Review Request 20219: Changed Executor::resources to option type.

Posted by Mesos ReviewBot <de...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20219/#review40037
-----------------------------------------------------------


Bad patch!

Reviews applied: [20219]

Failed command: make check

Error:
 Making check in .
make[1]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot'
make[1]: Nothing to be done for `check-am'.
make[1]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot'
Making check in 3rdparty
make[1]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
make  check-recursive
make[2]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
Making check in libprocess
make[3]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess'
Making check in 3rdparty
make[4]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make  check-recursive
make[5]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
Making check in stout
make[6]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty/stout'
make[6]: Nothing to be done for `check'.
make[6]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty/stout'
make[6]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make  libgmock.la stout-tests
make[7]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make[7]: `libgmock.la' is up to date.
make[7]: `stout-tests' is up to date.
make[7]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make  check-local
make[7]: Entering directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
./stout-tests
[==========] Running 118 tests from 24 test cases.
[----------] Global test environment set-up.
[----------] 3 tests from Stout
[ RUN      ] Stout.Bytes
[       OK ] Stout.Bytes (0 ms)
[ RUN      ] Stout.Set
[       OK ] Stout.Set (0 ms)
[ RUN      ] Stout.Some
[       OK ] Stout.Some (0 ms)
[----------] 3 tests from Stout (0 ms total)

[----------] 4 tests from Cache
[ RUN      ] Cache.Insert
[       OK ] Cache.Insert (0 ms)
[ RUN      ] Cache.Update
[       OK ] Cache.Update (0 ms)
[ RUN      ] Cache.Erase
[       OK ] Cache.Erase (0 ms)
[ RUN      ] Cache.LRUEviction
[       OK ] Cache.LRUEviction (0 ms)
[----------] 4 tests from Cache (0 ms total)

[----------] 4 tests from DurationTest
[ RUN      ] DurationTest.Comparison
[       OK ] DurationTest.Comparison (0 ms)
[ RUN      ] DurationTest.ParseAndTry
[       OK ] DurationTest.ParseAndTry (16 ms)
[ RUN      ] DurationTest.Arithmetic
[       OK ] DurationTest.Arithmetic (0 ms)
[ RUN      ] DurationTest.OutputFormat
[       OK ] DurationTest.OutputFormat (0 ms)
[----------] 4 tests from DurationTest (16 ms total)

[----------] 1 test from ErrorTest
[ RUN      ] ErrorTest.Test
[       OK ] ErrorTest.Test (0 ms)
[----------] 1 test from ErrorTest (0 ms total)

[----------] 12 tests from FlagsTest
[ RUN      ] FlagsTest.Load
[       OK ] FlagsTest.Load (0 ms)
[ RUN      ] FlagsTest.Add
[       OK ] FlagsTest.Add (1 ms)
[ RUN      ] FlagsTest.Flags
[       OK ] FlagsTest.Flags (0 ms)
[ RUN      ] FlagsTest.LoadFromEnvironment
[       OK ] FlagsTest.LoadFromEnvironment (0 ms)
[ RUN      ] FlagsTest.LoadFromCommandLine
[       OK ] FlagsTest.LoadFromCommandLine (0 ms)
[ RUN      ] FlagsTest.LoadFromCommandLineWithNonFlags
[       OK ] FlagsTest.LoadFromCommandLineWithNonFlags (0 ms)
[ RUN      ] FlagsTest.Stringification
[       OK ] FlagsTest.Stringification (0 ms)
[ RUN      ] FlagsTest.DuplicatesFromEnvironment
[       OK ] FlagsTest.DuplicatesFromEnvironment (0 ms)
[ RUN      ] FlagsTest.DuplicatesFromCommandLine
[       OK ] FlagsTest.DuplicatesFromCommandLine (0 ms)
[ RUN      ] FlagsTest.Errors
[       OK ] FlagsTest.Errors (0 ms)
[ RUN      ] FlagsTest.Usage
[       OK ] FlagsTest.Usage (0 ms)
[ RUN      ] FlagsTest.Duration
[       OK ] FlagsTest.Duration (0 ms)
[----------] 12 tests from FlagsTest (1 ms total)

[----------] 1 test from GzipTest
[ RUN      ] GzipTest.CompressDecompressString
[       OK ] GzipTest.CompressDecompressString (107 ms)
[----------] 1 test from GzipTest (107 ms total)

[----------] 2 tests from HashMapTest
[ RUN      ] HashMapTest.Insert
[       OK ] HashMapTest.Insert (0 ms)
[ RUN      ] HashMapTest.Contains
[       OK ] HashMapTest.Contains (0 ms)
[----------] 2 tests from HashMapTest (0 ms total)

[----------] 2 tests from HashsetTest
[ RUN      ] HashsetTest.Insert
[       OK ] HashsetTest.Insert (0 ms)
[ RUN      ] HashsetTest.Union
[       OK ] HashsetTest.Union (0 ms)
[----------] 2 tests from HashsetTest (0 ms total)

[----------] 8 tests from IntervalTest
[ RUN      ] IntervalTest.Interval
[       OK ] IntervalTest.Interval (0 ms)
[ RUN      ] IntervalTest.EmptyInterval
[       OK ] IntervalTest.EmptyInterval (0 ms)
[ RUN      ] IntervalTest.Constructor
[       OK ] IntervalTest.Constructor (0 ms)
[ RUN      ] IntervalTest.Addition
[       OK ] IntervalTest.Addition (0 ms)
[ RUN      ] IntervalTest.Subtraction
[       OK ] IntervalTest.Subtraction (0 ms)
[ RUN      ] IntervalTest.Intersection
[       OK ] IntervalTest.Intersection (0 ms)
[ RUN      ] IntervalTest.LargeInterval
[       OK ] IntervalTest.LargeInterval (0 ms)
[ RUN      ] IntervalTest.IntervalIteration
[       OK ] IntervalTest.IntervalIteration (0 ms)
[----------] 8 tests from IntervalTest (1 ms total)

[----------] 8 tests from JsonTest
[ RUN      ] JsonTest.DefaultValueIsNull
[       OK ] JsonTest.DefaultValueIsNull (0 ms)
[ RUN      ] JsonTest.BinaryData
[       OK ] JsonTest.BinaryData (0 ms)
[ RUN      ] JsonTest.NumberFormat
[       OK ] JsonTest.NumberFormat (0 ms)
[ RUN      ] JsonTest.BooleanFormat
[       OK ] JsonTest.BooleanFormat (0 ms)
[ RUN      ] JsonTest.BooleanAssignement
[       OK ] JsonTest.BooleanAssignement (0 ms)
[ RUN      ] JsonTest.CStringAssignment
[       OK ] JsonTest.CStringAssignment (0 ms)
[ RUN      ] JsonTest.NumericAssignment
[       OK ] JsonTest.NumericAssignment (0 ms)
[ RUN      ] JsonTest.parse
[       OK ] JsonTest.parse (0 ms)
[----------] 8 tests from JsonTest (0 ms total)

[----------] 5 tests from LinkedHashmapTest
[ RUN      ] LinkedHashmapTest.Put
[       OK ] LinkedHashmapTest.Put (0 ms)
[ RUN      ] LinkedHashmapTest.Contains
[       OK ] LinkedHashmapTest.Contains (0 ms)
[ RUN      ] LinkedHashmapTest.Erase
[       OK ] LinkedHashmapTest.Erase (0 ms)
[ RUN      ] LinkedHashmapTest.Keys
[       OK ] LinkedHashmapTest.Keys (0 ms)
[ RUN      ] LinkedHashmapTest.Values
[       OK ] LinkedHashmapTest.Values (0 ms)
[----------] 5 tests from LinkedHashmapTest (0 ms total)

[----------] 6 tests from MultimapTest/0, where TypeParam = Multimap<std::string, unsigned short>
[ RUN      ] MultimapTest/0.Put
[       OK ] MultimapTest/0.Put (0 ms)
[ RUN      ] MultimapTest/0.Remove
[       OK ] MultimapTest/0.Remove (0 ms)
[ RUN      ] MultimapTest/0.Size
[       OK ] MultimapTest/0.Size (0 ms)
[ RUN      ] MultimapTest/0.Keys
[       OK ] MultimapTest/0.Keys (0 ms)
[ RUN      ] MultimapTest/0.Iterator
[       OK ] MultimapTest/0.Iterator (0 ms)
[ RUN      ] MultimapTest/0.Foreach
[       OK ] MultimapTest/0.Foreach (0 ms)
[----------] 6 tests from MultimapTest/0 (0 ms total)

[----------] 6 tests from MultimapTest/1, where TypeParam = multihashmap<std::string, unsigned short>
[ RUN      ] MultimapTest/1.Put
[       OK ] MultimapTest/1.Put (0 ms)
[ RUN      ] MultimapTest/1.Remove
[       OK ] MultimapTest/1.Remove (0 ms)
[ RUN      ] MultimapTest/1.Size
[       OK ] MultimapTest/1.Size (0 ms)
[ RUN      ] MultimapTest/1.Keys
[       OK ] MultimapTest/1.Keys (0 ms)
[ RUN      ] MultimapTest/1.Iterator
[       OK ] MultimapTest/1.Iterator (0 ms)
[ RUN      ] MultimapTest/1.Foreach
[       OK ] MultimapTest/1.Foreach (0 ms)
[----------] 6 tests from MultimapTest/1 (1 ms total)

[----------] 2 tests from NetTest
[ RUN      ] NetTest.mac
[       OK ] NetTest.mac (16 ms)
[ RUN      ] NetTest.ip
[       OK ] NetTest.ip (0 ms)
[----------] 2 tests from NetTest (16 ms total)

[----------] 1 test from NoneTest
[ RUN      ] NoneTest.Test
[       OK ] NoneTest.Test (0 ms)
[----------] 1 test from NoneTest (0 ms total)

[----------] 3 tests from OptionTest
[ RUN      ] OptionTest.Min
[       OK ] OptionTest.Min (0 ms)
[ RUN      ] OptionTest.Max
[       OK ] OptionTest.Max (0 ms)
[ RUN      ] OptionTest.Comparison
[       OK ] OptionTest.Comparison (0 ms)
[----------] 3 tests from OptionTest (0 ms total)

[----------] 17 tests from OsTest
[ RUN      ] OsTest.environment
[       OK ] OsTest.environment (0 ms)
[ RUN      ] OsTest.rmdir
[       OK ] OsTest.rmdir (1 ms)
[ RUN      ] OsTest.nonblock
[       OK ] OsTest.nonblock (0 ms)
[ RUN      ] OsTest.touch
[       OK ] OsTest.touch (1 ms)
[ RUN      ] OsTest.readWriteString
[       OK ] OsTest.readWriteString (1 ms)
[ RUN      ] OsTest.find
[       OK ] OsTest.find (0 ms)
[ RUN      ] OsTest.bootId
[       OK ] OsTest.bootId (1 ms)
[ RUN      ] OsTest.uname
[       OK ] OsTest.uname (0 ms)
[ RUN      ] OsTest.sysname
[       OK ] OsTest.sysname (0 ms)
[ RUN      ] OsTest.release
[       OK ] OsTest.release (0 ms)
[ RUN      ] OsTest.sleep
[       OK ] OsTest.sleep (11 ms)
[ RUN      ] OsTest.pids
[       OK ] OsTest.pids (262 ms)
[ RUN      ] OsTest.children
[       OK ] OsTest.children (41 ms)
[ RUN      ] OsTest.process
[       OK ] OsTest.process (0 ms)
[ RUN      ] OsTest.processes
[       OK ] OsTest.processes (18 ms)
[ RUN      ] OsTest.killtree
[       OK ] OsTest.killtree (94 ms)
[ RUN      ] OsTest.pstree
[       OK ] OsTest.pstree (36 ms)
[----------] 17 tests from OsTest (468 ms total)

[----------] 1 test from ProtobufTest
[ RUN      ] ProtobufTest.JSON
[       OK ] ProtobufTest.JSON (1 ms)
[----------] 1 test from ProtobufTest (1 ms total)

[----------] 1 test from OsSendfileTest
[ RUN      ] OsSendfileTest.sendfile
[       OK ] OsSendfileTest.sendfile (0 ms)
[----------] 1 test from OsSendfileTest (0 ms total)

[----------] 1 test from OsSignalsTest
[ RUN      ] OsSignalsTest.suppress
[       OK ] OsSignalsTest.suppress (0 ms)
[----------] 1 test from OsSignalsTest (0 ms total)

[----------] 22 tests from StringsTest
[ RUN      ] StringsTest.Format
[       OK ] StringsTest.Format (0 ms)
[ RUN      ] StringsTest.Remove
[       OK ] StringsTest.Remove (0 ms)
[ RUN      ] StringsTest.Replace
[       OK ] StringsTest.Replace (0 ms)
[ RUN      ] StringsTest.Trim
[       OK ] StringsTest.Trim (0 ms)
[ RUN      ] StringsTest.Tokenize
[       OK ] StringsTest.Tokenize (0 ms)
[ RUN      ] StringsTest.TokenizeStringWithDelimsAtStart
[       OK ] StringsTest.TokenizeStringWithDelimsAtStart (0 ms)
[ RUN      ] StringsTest.TokenizeStringWithDelimsAtEnd
[       OK ] StringsTest.TokenizeStringWithDelimsAtEnd (0 ms)
[ RUN      ] StringsTest.TokenizeStringWithDelimsAtStartAndEnd
[       OK ] StringsTest.TokenizeStringWithDelimsAtStartAndEnd (0 ms)
[ RUN      ] StringsTest.TokenizeWithMultipleDelims
[       OK ] StringsTest.TokenizeWithMultipleDelims (0 ms)
[ RUN      ] StringsTest.TokenizeEmptyString
[       OK ] StringsTest.TokenizeEmptyString (0 ms)
[ RUN      ] StringsTest.TokenizeDelimOnlyString
[       OK ] StringsTest.TokenizeDelimOnlyString (0 ms)
[ RUN      ] StringsTest.TokenizeNullByteDelim
[       OK ] StringsTest.TokenizeNullByteDelim (0 ms)
[ RUN      ] StringsTest.SplitEmptyString
[       OK ] StringsTest.SplitEmptyString (0 ms)
[ RUN      ] StringsTest.SplitDelimOnlyString
[       OK ] StringsTest.SplitDelimOnlyString (0 ms)
[ RUN      ] StringsTest.Split
[       OK ] StringsTest.Split (0 ms)
[ RUN      ] StringsTest.SplitStringWithDelimsAtStart
[       OK ] StringsTest.SplitStringWithDelimsAtStart (0 ms)
[ RUN      ] StringsTest.SplitStringWithDelimsAtEnd
[       OK ] StringsTest.SplitStringWithDelimsAtEnd (0 ms)
[ RUN      ] StringsTest.SplitStringWithDelimsAtStartAndEnd
[       OK ] StringsTest.SplitStringWithDelimsAtStartAndEnd (0 ms)
[ RUN      ] StringsTest.SplitWithMultipleDelims
[       OK ] StringsTest.SplitWithMultipleDelims (0 ms)
[ RUN      ] StringsTest.Pairs
[       OK ] StringsTest.Pairs (1 ms)
[ RUN      ] StringsTest.StartsWith
[       OK ] StringsTest.StartsWith (0 ms)
[ RUN      ] StringsTest.Contains
[       OK ] StringsTest.Contains (0 ms)
[----------] 22 tests from StringsTest (1 ms total)

[----------] 1 test from Thread
[ RUN      ] Thread.local
[       OK ] Thread.local (0 ms)
[----------] 1 test from Thread (0 ms total)

[----------] 1 test from UUIDTest
[ RUN      ] UUIDTest.test
[       OK ] UUIDTest.test (0 ms)
[----------] 1 test from UUIDTest (0 ms total)

[----------] 6 tests from ProcTest
[ RUN      ] ProcTest.pids
[       OK ] ProcTest.pids (1 ms)
[ RUN      ] ProcTest.cpus
[       OK ] ProcTest.cpus (0 ms)
[ RUN      ] ProcTest.SystemStatus
[       OK ] ProcTest.SystemStatus (0 ms)
[ RUN      ] ProcTest.ProcessStatus
[       OK ] ProcTest.ProcessStatus (0 ms)
[ RUN      ] ProcTest.SingleThread
[       OK ] ProcTest.SingleThread (1 ms)
[ RUN      ] ProcTest.MultipleThreads
stout/tests/proc_tests.cpp:164: Failure
read is NONE
[  FAILED  ] ProcTest.MultipleThreads (1 ms)
[----------] 6 tests from ProcTest (4 ms total)

[----------] Global test environment tear-down
[==========] 118 tests from 24 test cases ran. (616 ms total)
[  PASSED  ] 117 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] ProcTest.MultipleThreads

 1 FAILED TEST
make[7]: *** [check-local] Error 1
make[7]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make[6]: *** [check-am] Error 2
make[6]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make[5]: *** [check-recursive] Error 1
make[5]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make[4]: *** [check] Error 2
make[4]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess/3rdparty'
make[3]: *** [check-recursive] Error 1
make[3]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty/libprocess'
make[2]: *** [check-recursive] Error 1
make[2]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
make[1]: *** [check] Error 2
make[1]: Leaving directory `/home/jenkins/jenkins-slave/workspace/mesos-reviewbot/3rdparty'
make: *** [check-recursive] Error 1


- Mesos ReviewBot


On April 10, 2014, 4:21 p.m., Niklas Nielsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20219/
> -----------------------------------------------------------
> 
> (Updated April 10, 2014, 4:21 p.m.)
> 
> 
> Review request for mesos, Ian Downes and Vinod Kone.
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Yet another split out of the task-info RR (r19795/r18403) which turns
> Executor::resources into an option type.  It is needed when the
> executor info isn't known up-front (the main motivation behind the
> task-info RR) and the executor resources therefore cannot be known
> until after the containerizer has launched the container.
> 
> 
> Diffs
> -----
> 
>   src/slave/http.cpp 594032d 
>   src/slave/slave.hpp 08f6005 
>   src/slave/slave.cpp cddb241 
> 
> Diff: https://reviews.apache.org/r/20219/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Niklas Nielsen
> 
>