You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Joseph Wu <jo...@mesosphere.io> on 2016/02/25 03:00:36 UTC

Review Request 43963: Fixed flakiness in DockerContainerizerTest.ROOT_DOCKER_Logs.

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

Review request for mesos, Bernd Mathiske, Artem Harutyunyan, and Timothy Chen.


Bugs: MESOS-4676
    https://issues.apache.org/jira/browse/MESOS-4676


Repository: mesos


Description
-------

Adds the `unbuffer` utility in front of each `echo` in the test.  Since Docker appears to handle simultaneous stdout/stderr in a non-robust fashion, this mitigates the amount of overlap the two streams will have in the test.


Diffs
-----

  src/tests/containerizer/docker_containerizer_tests.cpp a299c9e0744b5657984e5bb0afbe4874a266ddb6 

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


Testing
-------

make check

On Centos7: sudo bin/mesos-tests.sh --gtest_filter="\*ROOT_DOCKER_Logs" --gtest_repeat=1200 --gtest_break_on_failure

---

CI results: 
sudo make check

         | OSX | CentOS 7 | CentOS 6 | Debian 8 | Ubuntu 15.10 | Ubuntu 14 | Ubuntu 12 |
 Non-SSL |  :) |    :)    |     *    |    :)    |       :)     |    :)     |     :)    |
With-SSL |  :) |    :)    |    &*    |     &    |        ^     |    :)     |     :)    |

 :) = Passed.

Known flaky tests:
  * = DockerContainerizerTest.ROOT_DOCKER_LaunchWithPersistentVolumes
  & = MemoryPressureMesosTest.CGROUPS_ROOT_SlaveRecovery
  ^ = LimitedCpuIsolatorTest.ROOT_CGROUPS_Pids_and_Tids


Thanks,

Joseph Wu


Re: Review Request 43963: Fixed flakiness in DockerContainerizerTest.ROOT_DOCKER_Logs.

Posted by haosdent huang <ha...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/43963/#review120650
-----------------------------------------------------------


Ship it!




Verify that add unbuffer works!

- haosdent huang


On Feb. 25, 2016, 2 a.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/43963/
> -----------------------------------------------------------
> 
> (Updated Feb. 25, 2016, 2 a.m.)
> 
> 
> Review request for mesos, Bernd Mathiske, Artem Harutyunyan, and Timothy Chen.
> 
> 
> Bugs: MESOS-4676
>     https://issues.apache.org/jira/browse/MESOS-4676
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds the `unbuffer` utility in front of each `echo` in the test.  Since Docker appears to handle simultaneous stdout/stderr in a non-robust fashion, this mitigates the amount of overlap the two streams will have in the test.
> 
> 
> Diffs
> -----
> 
>   src/tests/containerizer/docker_containerizer_tests.cpp a299c9e0744b5657984e5bb0afbe4874a266ddb6 
> 
> Diff: https://reviews.apache.org/r/43963/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> On Centos7: sudo bin/mesos-tests.sh --gtest_filter="\*ROOT_DOCKER_Logs" --gtest_repeat=1200 --gtest_break_on_failure
> 
> ---
> 
> CI results: 
> sudo make check
> 
>          | OSX | CentOS 7 | CentOS 6 | Debian 8 | Ubuntu 15.10 | Ubuntu 14 | Ubuntu 12 |
>  Non-SSL |  :) |    :)    |     *    |    :)    |       :)     |    :)     |     :)    |
> With-SSL |  :) |    :)    |    &*    |     &    |        ^     |    :)     |     :)    |
> 
>  :) = Passed.
> 
> Known flaky tests:
>   * = DockerContainerizerTest.ROOT_DOCKER_LaunchWithPersistentVolumes
>   & = MemoryPressureMesosTest.CGROUPS_ROOT_SlaveRecovery
>   ^ = LimitedCpuIsolatorTest.ROOT_CGROUPS_Pids_and_Tids
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 43963: Fixed flakiness in DockerContainerizerTest.ROOT_DOCKER_Logs.

Posted by Joseph Wu <jo...@mesosphere.io>.

> On Feb. 25, 2016, 3:36 a.m., Bernd Mathiske wrote:
> > src/tests/containerizer/docker_containerizer_tests.cpp, line 1855
> > <https://reviews.apache.org/r/43963/diff/2/?file=1270618#file1270618line1855>
> >
> >     Why the extra image? This test seems to run just fine with the other changes and simply "alpine".
> >     
> >     What is the significance of "Expect" here?

The plain `alpine` image doesn't have the `unbuffer` command.

I originally tried modifying the double-echo command with `apk add --update expect`.  But the alpine package repos are flaky (or rate-limited), so that step would fail every ~100 or so iterations.

Therefore, to not "fix" flakiness with more flakiness, an `alpine` with `expect` pre-installed was the next best solution.


- Joseph


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


On Feb. 24, 2016, 9:43 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/43963/
> -----------------------------------------------------------
> 
> (Updated Feb. 24, 2016, 9:43 p.m.)
> 
> 
> Review request for mesos, Bernd Mathiske, Artem Harutyunyan, and Timothy Chen.
> 
> 
> Bugs: MESOS-4676
>     https://issues.apache.org/jira/browse/MESOS-4676
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds the `unbuffer` utility in front of each `echo` in the test.  Since Docker appears to handle simultaneous stdout/stderr in a non-robust fashion, this mitigates the amount of overlap the two streams will have in the test.
> 
> 
> Diffs
> -----
> 
>   src/tests/containerizer/docker_containerizer_tests.cpp a299c9e0744b5657984e5bb0afbe4874a266ddb6 
> 
> Diff: https://reviews.apache.org/r/43963/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> On Centos7: sudo bin/mesos-tests.sh --gtest_filter="\*ROOT_DOCKER_Logs" --gtest_repeat=1200 --gtest_break_on_failure
> 
> ---
> 
> CI results: 
> sudo make check
> 
>          | OSX | CentOS 7 | CentOS 6 | Debian 8 | Ubuntu 15.10 | Ubuntu 14 | Ubuntu 12 |
>  Non-SSL |  :) |    :)    |     *    |    :)    |       :)     |    :)     |     :)    |
> With-SSL |  :) |    :)    |    &*    |     &    |        ^     |    :)     |     :)    |
> 
>  :) = Passed.
> 
> Known flaky tests:
>   * = DockerContainerizerTest.ROOT_DOCKER_LaunchWithPersistentVolumes
>   & = MemoryPressureMesosTest.CGROUPS_ROOT_SlaveRecovery
>   ^ = LimitedCpuIsolatorTest.ROOT_CGROUPS_Pids_and_Tids
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 43963: Fixed flakiness in DockerContainerizerTest.ROOT_DOCKER_Logs.

Posted by Bernd Mathiske <be...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/43963/#review120686
-----------------------------------------------------------




src/tests/containerizer/docker_containerizer_tests.cpp (line 1855)
<https://reviews.apache.org/r/43963/#comment182145>

    Why the extra image? This test seems to run just fine with the other changes and simply "alpine".
    
    What is the significance of "Expect" here?


- Bernd Mathiske


On Feb. 24, 2016, 9:43 p.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/43963/
> -----------------------------------------------------------
> 
> (Updated Feb. 24, 2016, 9:43 p.m.)
> 
> 
> Review request for mesos, Bernd Mathiske, Artem Harutyunyan, and Timothy Chen.
> 
> 
> Bugs: MESOS-4676
>     https://issues.apache.org/jira/browse/MESOS-4676
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds the `unbuffer` utility in front of each `echo` in the test.  Since Docker appears to handle simultaneous stdout/stderr in a non-robust fashion, this mitigates the amount of overlap the two streams will have in the test.
> 
> 
> Diffs
> -----
> 
>   src/tests/containerizer/docker_containerizer_tests.cpp a299c9e0744b5657984e5bb0afbe4874a266ddb6 
> 
> Diff: https://reviews.apache.org/r/43963/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> On Centos7: sudo bin/mesos-tests.sh --gtest_filter="\*ROOT_DOCKER_Logs" --gtest_repeat=1200 --gtest_break_on_failure
> 
> ---
> 
> CI results: 
> sudo make check
> 
>          | OSX | CentOS 7 | CentOS 6 | Debian 8 | Ubuntu 15.10 | Ubuntu 14 | Ubuntu 12 |
>  Non-SSL |  :) |    :)    |     *    |    :)    |       :)     |    :)     |     :)    |
> With-SSL |  :) |    :)    |    &*    |     &    |        ^     |    :)     |     :)    |
> 
>  :) = Passed.
> 
> Known flaky tests:
>   * = DockerContainerizerTest.ROOT_DOCKER_LaunchWithPersistentVolumes
>   & = MemoryPressureMesosTest.CGROUPS_ROOT_SlaveRecovery
>   ^ = LimitedCpuIsolatorTest.ROOT_CGROUPS_Pids_and_Tids
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>


Re: Review Request 43963: Fixed flakiness in DockerContainerizerTest.ROOT_DOCKER_Logs.

Posted by Joseph Wu <jo...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/43963/
-----------------------------------------------------------

(Updated Feb. 24, 2016, 9:43 p.m.)


Review request for mesos, Bernd Mathiske, Artem Harutyunyan, and Timothy Chen.


Changes
-------

Added JIRA number in a comment.


Bugs: MESOS-4676
    https://issues.apache.org/jira/browse/MESOS-4676


Repository: mesos


Description
-------

Adds the `unbuffer` utility in front of each `echo` in the test.  Since Docker appears to handle simultaneous stdout/stderr in a non-robust fashion, this mitigates the amount of overlap the two streams will have in the test.


Diffs (updated)
-----

  src/tests/containerizer/docker_containerizer_tests.cpp a299c9e0744b5657984e5bb0afbe4874a266ddb6 

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


Testing
-------

make check

On Centos7: sudo bin/mesos-tests.sh --gtest_filter="\*ROOT_DOCKER_Logs" --gtest_repeat=1200 --gtest_break_on_failure

---

CI results: 
sudo make check

         | OSX | CentOS 7 | CentOS 6 | Debian 8 | Ubuntu 15.10 | Ubuntu 14 | Ubuntu 12 |
 Non-SSL |  :) |    :)    |     *    |    :)    |       :)     |    :)     |     :)    |
With-SSL |  :) |    :)    |    &*    |     &    |        ^     |    :)     |     :)    |

 :) = Passed.

Known flaky tests:
  * = DockerContainerizerTest.ROOT_DOCKER_LaunchWithPersistentVolumes
  & = MemoryPressureMesosTest.CGROUPS_ROOT_SlaveRecovery
  ^ = LimitedCpuIsolatorTest.ROOT_CGROUPS_Pids_and_Tids


Thanks,

Joseph Wu


Re: Review Request 43963: Fixed flakiness in DockerContainerizerTest.ROOT_DOCKER_Logs.

Posted by Timothy Chen <tn...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/43963/#review120643
-----------------------------------------------------------


Fix it, then Ship it!




Ship It!


src/tests/containerizer/docker_containerizer_tests.cpp (line 1841)
<https://reviews.apache.org/r/43963/#comment182103>

    Can you add the mesos ticket in the comments as well? it has good information about this.


- Timothy Chen


On Feb. 25, 2016, 2 a.m., Joseph Wu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/43963/
> -----------------------------------------------------------
> 
> (Updated Feb. 25, 2016, 2 a.m.)
> 
> 
> Review request for mesos, Bernd Mathiske, Artem Harutyunyan, and Timothy Chen.
> 
> 
> Bugs: MESOS-4676
>     https://issues.apache.org/jira/browse/MESOS-4676
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Adds the `unbuffer` utility in front of each `echo` in the test.  Since Docker appears to handle simultaneous stdout/stderr in a non-robust fashion, this mitigates the amount of overlap the two streams will have in the test.
> 
> 
> Diffs
> -----
> 
>   src/tests/containerizer/docker_containerizer_tests.cpp a299c9e0744b5657984e5bb0afbe4874a266ddb6 
> 
> Diff: https://reviews.apache.org/r/43963/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> On Centos7: sudo bin/mesos-tests.sh --gtest_filter="\*ROOT_DOCKER_Logs" --gtest_repeat=1200 --gtest_break_on_failure
> 
> ---
> 
> CI results: 
> sudo make check
> 
>          | OSX | CentOS 7 | CentOS 6 | Debian 8 | Ubuntu 15.10 | Ubuntu 14 | Ubuntu 12 |
>  Non-SSL |  :) |    :)    |     *    |    :)    |       :)     |    :)     |     :)    |
> With-SSL |  :) |    :)    |    &*    |     &    |        ^     |    :)     |     :)    |
> 
>  :) = Passed.
> 
> Known flaky tests:
>   * = DockerContainerizerTest.ROOT_DOCKER_LaunchWithPersistentVolumes
>   & = MemoryPressureMesosTest.CGROUPS_ROOT_SlaveRecovery
>   ^ = LimitedCpuIsolatorTest.ROOT_CGROUPS_Pids_and_Tids
> 
> 
> Thanks,
> 
> Joseph Wu
> 
>