You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Andrew Schwartzmeyer <an...@schwartzmeyer.com> on 2017/12/01 23:17:38 UTC
Review Request 64272: Improved Windows isolators with `struct Info`
abstraction.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64272/
-----------------------------------------------------------
Review request for mesos, Akash Gupta, Jie Yu, and Joseph Wu.
Repository: mesos
Description
-------
Replaced the two maps of `ContainerId -> pid` and `ContainerId -> limit`
with a mapping of `ContainerId -> struct Info { pid, limit }`. This
abstraction correctly ties the the `pid` and cpu/mem `limit` together.
Notably this fixes a subtle bug in `prepare` so that it can no longer be
called multiple times if a resource limit hadn't been set.
Furthermore, this patch imports all the types used in the source files
to enchance code conciseness, and then reformatted with `clang-format`.
Diffs
-----
src/slave/containerizer/mesos/isolators/windows/cpu.hpp 8672b5943ff305b929dd7514581df4515dff1f50
src/slave/containerizer/mesos/isolators/windows/cpu.cpp e9f4daccdd507312998984cad231c3c7d310af2b
src/slave/containerizer/mesos/isolators/windows/mem.hpp 24426f7219bc7831c1682153d7c9c1a6e502e3d6
src/slave/containerizer/mesos/isolators/windows/mem.cpp 5abcb4edfa350e1de5b34bfd43d4e961b7208799
Diff: https://reviews.apache.org/r/64272/diff/1/
Testing
-------
`make check` on CentOS 7 (probably pointless)
`ctest` on Windows 10. All tests passed. (Building again after rebase.)
Thanks,
Andrew Schwartzmeyer
Re: Review Request 64272: Improved Windows isolators with `struct
Info` abstraction.
Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64272/#review192753
-----------------------------------------------------------
Ship it!
Ship It!
- Jie Yu
On Dec. 1, 2017, 11:37 p.m., Andrew Schwartzmeyer wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64272/
> -----------------------------------------------------------
>
> (Updated Dec. 1, 2017, 11:37 p.m.)
>
>
> Review request for mesos, Akash Gupta, Jie Yu, and Joseph Wu.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> Replaced the two maps of `ContainerId -> pid` and `ContainerId -> limit`
> with a mapping of `ContainerId -> struct Info { pid, limit }`. This
> abstraction correctly ties the the `pid` and cpu/mem `limit` together.
> Notably this fixes a subtle bug in `prepare` so that it can no longer be
> called multiple times if a resource limit hadn't been set.
>
> Furthermore, this patch imports all the types used in the source files
> to enchance code conciseness, and then reformatted with `clang-format`.
>
>
> Diffs
> -----
>
> src/slave/containerizer/mesos/isolators/windows/cpu.hpp 8672b5943ff305b929dd7514581df4515dff1f50
> src/slave/containerizer/mesos/isolators/windows/cpu.cpp e9f4daccdd507312998984cad231c3c7d310af2b
> src/slave/containerizer/mesos/isolators/windows/mem.hpp 24426f7219bc7831c1682153d7c9c1a6e502e3d6
> src/slave/containerizer/mesos/isolators/windows/mem.cpp 5abcb4edfa350e1de5b34bfd43d4e961b7208799
>
>
> Diff: https://reviews.apache.org/r/64272/diff/2/
>
>
> Testing
> -------
>
> `make check` on CentOS 7 (probably pointless)
>
> `ctest` on Windows 10. All tests passed. (Building again after rebase.)
>
>
> Thanks,
>
> Andrew Schwartzmeyer
>
>
Re: Review Request 64272: Improved Windows isolators with `struct
Info` abstraction.
Posted by Andrew Schwartzmeyer <an...@schwartzmeyer.com>.
> On Dec. 3, 2017, 1:19 a.m., Mesos Reviewbot Windows wrote:
> > FAIL: Some Mesos libprocess-tests failed.
> >
> > Reviews applied: `['64272']`
> >
> > Failed command: `C:\DCOS\mesos\3rdparty\libprocess\src\tests\Debug\libprocess-tests.exe`
> >
> > All the build artifacts available at: http://dcos-win.westus.cloudapp.azure.com/mesos-build/review/64272
> >
> > Relevant logs:
> >
> > - [libprocess-tests-stdout.log](http://dcos-win.westus.cloudapp.azure.com/mesos-build/review/64272/logs/libprocess-tests-stdout.log):
> >
> > ```
> > [ OK ] Scheme/HTTPTest.WWWAuthenticateHeader/0 (844 ms)
> > [ RUN ] Scheme/HTTPTest.WWWAuthenticateHeader/1
> > [ OK ] Scheme/HTTPTest.WWWAuthenticateHeader/1 (75 ms)
> > [ RUN ] Scheme/HTTPTest.Accepts/0
> > [ OK ] Scheme/HTTPTest.Accepts/0 (1087 ms)
> > [ RUN ] Scheme/HTTPTest.Accepts/1
> > [ OK ] Scheme/HTTPTest.Accepts/1 (96 ms)
> > [----------] 36 tests from Scheme/HTTPTest (17921 ms total)
> >
> > [----------] 4 tests from SSLVerifyIPAdd/SSLTest
> > [ RUN ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/0
> > [ OK ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/0 (758 ms)
> > [ RUN ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/1
> > [ OK ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/1 (515 ms)
> > [ RUN ] SSLVerifyIPAdd/SSLTest.RequireCertificate/0
> > [ OK ] SSLVerifyIPAdd/SSLTest.RequireCertificate/0 (683 ms)
> > [ RUN ] SSLVerifyIPAdd/SSLTest.RequireCertificate/1
> > [ OK ] SSLVerifyIPAdd/SSLTest.RequireCertificate/1 (1393 ms)
> > [----------] 4 tests from SSLVerifyIPAdd/SSLTest (3469 ms total)
> >
> > [----------] Global test environment tear-down
> > [==========] 222 tests from 35 test cases ran. (53173 ms total)
> > [ PASSED ] 221 tests.
> > [ FAILED ] 1 test, listed below:
> > [ FAILED ] SSLTest.ProtocolMismatch
> >
> > 1 FAILED TEST
> > YOU HAVE 19 DISABLED TESTS
> >
> > ```
> >
> > - [libprocess-tests-stderr.log](http://dcos-win.westus.cloudapp.azure.com/mesos-build/review/64272/logs/libprocess-tests-stderr.log):
> >
> > ```
> > I1203 09:18:57.895561 928 openssl.cpp:509] CA directory path unspecified! NOTE: Set CA directory path with LIBPROCESS_SSL_CA_DIR=<dirpath>
> > I1203 09:18:57.897562 928 openssl.cpp:514] Will not verify peer certificate!
> > NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
> > I1203 09:18:57.897562 928 openssl.cpp:526] Will use IP address verification in subject alternative name certificate extension.
> > I1203 09:18:57.897562 928 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
> > LIBPROCESS_SSL_VERIFY_CERT set to true
> > I1203 09:18:57.900570 928 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\RpIuP4\cert.pem
> > ata\Local\Temp\5Tdxrn
> > I1203 09:18:55.911415 4844 openssl.cpp:514] Will not verify peer certificate!
> > NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
> > I1203 09:18:55.911415 4844 openssl.cpp:526] Will use IP address verification in subject alternative name certificate extension.
> > I1203 09:18:55.911415 4844 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
> > LIBPROCESS_SSL_VERIFY_CERT set to true
> > I1203 09:18:55.911415 4844 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\jkdVcc\cert.pem
> > I1203 09:18:55.912417 4844 openssl.cpp:566] Using CA dir: C:\Users\mesos\AppData\Local\Temp\jkdVcc
> > I1203 09:18:56.208425 4844 openssl.cpp:509] CA directory path unspecified! NOTE: Set CA directory path with LIBPROCESS_SSL_CA_DIR=<dirpath>
> > I1203 09:18:56.208425 4844 openssl.cpp:514] Will not verify peer certificate!
> > NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
> > I1203 09:18:56.208425 4844 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
> > LIBPROCESS_SSL_VERIFY_CERT set to true
> > I1203 09:18:56.208425 4844 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\UHwagq\cert.pem
> > I1203 09:18:57.584547 4844 openssl.cpp:509] CA directory path unspecified! NOTE: Set CA directory path with LIBPROCESS_SSL_CA_DIR=<dirpath>
> > I1203 09:18:57.584547 4844 openssl.cpp:514] Will not verify peer certificate!
> > NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
> > I1203 09:18:57.584547 4844 openssl.cpp:526] Will use IP address verification in subject alternative name certificate extension.
> > I1203 09:18:57.584547 4844 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
> > LIBPROCESS_SSL_VERIFY_CERT set to true
> > I1203 09:18:57.584547 4844 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\RpIuP4\cert.pem
> > I1203 09:18:58.168562 472 process.cpp:887] Failed to accept socket: future discarded
> > ```
This is a flakyl test, it can be ignored.
- Andrew
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64272/#review192642
-----------------------------------------------------------
On Dec. 1, 2017, 3:37 p.m., Andrew Schwartzmeyer wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64272/
> -----------------------------------------------------------
>
> (Updated Dec. 1, 2017, 3:37 p.m.)
>
>
> Review request for mesos, Akash Gupta, Jie Yu, and Joseph Wu.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> Replaced the two maps of `ContainerId -> pid` and `ContainerId -> limit`
> with a mapping of `ContainerId -> struct Info { pid, limit }`. This
> abstraction correctly ties the the `pid` and cpu/mem `limit` together.
> Notably this fixes a subtle bug in `prepare` so that it can no longer be
> called multiple times if a resource limit hadn't been set.
>
> Furthermore, this patch imports all the types used in the source files
> to enchance code conciseness, and then reformatted with `clang-format`.
>
>
> Diffs
> -----
>
> src/slave/containerizer/mesos/isolators/windows/cpu.hpp 8672b5943ff305b929dd7514581df4515dff1f50
> src/slave/containerizer/mesos/isolators/windows/cpu.cpp e9f4daccdd507312998984cad231c3c7d310af2b
> src/slave/containerizer/mesos/isolators/windows/mem.hpp 24426f7219bc7831c1682153d7c9c1a6e502e3d6
> src/slave/containerizer/mesos/isolators/windows/mem.cpp 5abcb4edfa350e1de5b34bfd43d4e961b7208799
>
>
> Diff: https://reviews.apache.org/r/64272/diff/2/
>
>
> Testing
> -------
>
> `make check` on CentOS 7 (probably pointless)
>
> `ctest` on Windows 10. All tests passed. (Building again after rebase.)
>
>
> Thanks,
>
> Andrew Schwartzmeyer
>
>
Re: Review Request 64272: Improved Windows isolators with `struct
Info` abstraction.
Posted by Mesos Reviewbot Windows <re...@mesos.apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64272/#review192642
-----------------------------------------------------------
FAIL: Some Mesos libprocess-tests failed.
Reviews applied: `['64272']`
Failed command: `C:\DCOS\mesos\3rdparty\libprocess\src\tests\Debug\libprocess-tests.exe`
All the build artifacts available at: http://dcos-win.westus.cloudapp.azure.com/mesos-build/review/64272
Relevant logs:
- [libprocess-tests-stdout.log](http://dcos-win.westus.cloudapp.azure.com/mesos-build/review/64272/logs/libprocess-tests-stdout.log):
```
[ OK ] Scheme/HTTPTest.WWWAuthenticateHeader/0 (844 ms)
[ RUN ] Scheme/HTTPTest.WWWAuthenticateHeader/1
[ OK ] Scheme/HTTPTest.WWWAuthenticateHeader/1 (75 ms)
[ RUN ] Scheme/HTTPTest.Accepts/0
[ OK ] Scheme/HTTPTest.Accepts/0 (1087 ms)
[ RUN ] Scheme/HTTPTest.Accepts/1
[ OK ] Scheme/HTTPTest.Accepts/1 (96 ms)
[----------] 36 tests from Scheme/HTTPTest (17921 ms total)
[----------] 4 tests from SSLVerifyIPAdd/SSLTest
[ RUN ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/0
[ OK ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/0 (758 ms)
[ RUN ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/1
[ OK ] SSLVerifyIPAdd/SSLTest.BasicSameProcess/1 (515 ms)
[ RUN ] SSLVerifyIPAdd/SSLTest.RequireCertificate/0
[ OK ] SSLVerifyIPAdd/SSLTest.RequireCertificate/0 (683 ms)
[ RUN ] SSLVerifyIPAdd/SSLTest.RequireCertificate/1
[ OK ] SSLVerifyIPAdd/SSLTest.RequireCertificate/1 (1393 ms)
[----------] 4 tests from SSLVerifyIPAdd/SSLTest (3469 ms total)
[----------] Global test environment tear-down
[==========] 222 tests from 35 test cases ran. (53173 ms total)
[ PASSED ] 221 tests.
[ FAILED ] 1 test, listed below:
[ FAILED ] SSLTest.ProtocolMismatch
1 FAILED TEST
YOU HAVE 19 DISABLED TESTS
```
- [libprocess-tests-stderr.log](http://dcos-win.westus.cloudapp.azure.com/mesos-build/review/64272/logs/libprocess-tests-stderr.log):
```
I1203 09:18:57.895561 928 openssl.cpp:509] CA directory path unspecified! NOTE: Set CA directory path with LIBPROCESS_SSL_CA_DIR=<dirpath>
I1203 09:18:57.897562 928 openssl.cpp:514] Will not verify peer certificate!
NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
I1203 09:18:57.897562 928 openssl.cpp:526] Will use IP address verification in subject alternative name certificate extension.
I1203 09:18:57.897562 928 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
LIBPROCESS_SSL_VERIFY_CERT set to true
I1203 09:18:57.900570 928 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\RpIuP4\cert.pem
ata\Local\Temp\5Tdxrn
I1203 09:18:55.911415 4844 openssl.cpp:514] Will not verify peer certificate!
NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
I1203 09:18:55.911415 4844 openssl.cpp:526] Will use IP address verification in subject alternative name certificate extension.
I1203 09:18:55.911415 4844 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
LIBPROCESS_SSL_VERIFY_CERT set to true
I1203 09:18:55.911415 4844 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\jkdVcc\cert.pem
I1203 09:18:55.912417 4844 openssl.cpp:566] Using CA dir: C:\Users\mesos\AppData\Local\Temp\jkdVcc
I1203 09:18:56.208425 4844 openssl.cpp:509] CA directory path unspecified! NOTE: Set CA directory path with LIBPROCESS_SSL_CA_DIR=<dirpath>
I1203 09:18:56.208425 4844 openssl.cpp:514] Will not verify peer certificate!
NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
I1203 09:18:56.208425 4844 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
LIBPROCESS_SSL_VERIFY_CERT set to true
I1203 09:18:56.208425 4844 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\UHwagq\cert.pem
I1203 09:18:57.584547 4844 openssl.cpp:509] CA directory path unspecified! NOTE: Set CA directory path with LIBPROCESS_SSL_CA_DIR=<dirpath>
I1203 09:18:57.584547 4844 openssl.cpp:514] Will not verify peer certificate!
NOTE: Set LIBPROCESS_SSL_VERIFY_CERT=1 to enable peer certificate verification
I1203 09:18:57.584547 4844 openssl.cpp:526] Will use IP address verification in subject alternative name certificate extension.
I1203 09:18:57.584547 4844 openssl.cpp:534] LIBPROCESS_SSL_REQUIRE_CERT implies peer certificate verification.
LIBPROCESS_SSL_VERIFY_CERT set to true
I1203 09:18:57.584547 4844 openssl.cpp:563] Using CA file: C:\Users\mesos\AppData\Local\Temp\RpIuP4\cert.pem
I1203 09:18:58.168562 472 process.cpp:887] Failed to accept socket: future discarded
```
- Mesos Reviewbot Windows
On Dec. 1, 2017, 11:37 p.m., Andrew Schwartzmeyer wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/64272/
> -----------------------------------------------------------
>
> (Updated Dec. 1, 2017, 11:37 p.m.)
>
>
> Review request for mesos, Akash Gupta, Jie Yu, and Joseph Wu.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> Replaced the two maps of `ContainerId -> pid` and `ContainerId -> limit`
> with a mapping of `ContainerId -> struct Info { pid, limit }`. This
> abstraction correctly ties the the `pid` and cpu/mem `limit` together.
> Notably this fixes a subtle bug in `prepare` so that it can no longer be
> called multiple times if a resource limit hadn't been set.
>
> Furthermore, this patch imports all the types used in the source files
> to enchance code conciseness, and then reformatted with `clang-format`.
>
>
> Diffs
> -----
>
> src/slave/containerizer/mesos/isolators/windows/cpu.hpp 8672b5943ff305b929dd7514581df4515dff1f50
> src/slave/containerizer/mesos/isolators/windows/cpu.cpp e9f4daccdd507312998984cad231c3c7d310af2b
> src/slave/containerizer/mesos/isolators/windows/mem.hpp 24426f7219bc7831c1682153d7c9c1a6e502e3d6
> src/slave/containerizer/mesos/isolators/windows/mem.cpp 5abcb4edfa350e1de5b34bfd43d4e961b7208799
>
>
> Diff: https://reviews.apache.org/r/64272/diff/2/
>
>
> Testing
> -------
>
> `make check` on CentOS 7 (probably pointless)
>
> `ctest` on Windows 10. All tests passed. (Building again after rebase.)
>
>
> Thanks,
>
> Andrew Schwartzmeyer
>
>
Re: Review Request 64272: Improved Windows isolators with `struct
Info` abstraction.
Posted by Andrew Schwartzmeyer <an...@schwartzmeyer.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64272/
-----------------------------------------------------------
(Updated Dec. 1, 2017, 3:37 p.m.)
Review request for mesos, Akash Gupta, Jie Yu, and Joseph Wu.
Changes
-------
Added check in update that `pid.isSome()`.
Repository: mesos
Description
-------
Replaced the two maps of `ContainerId -> pid` and `ContainerId -> limit`
with a mapping of `ContainerId -> struct Info { pid, limit }`. This
abstraction correctly ties the the `pid` and cpu/mem `limit` together.
Notably this fixes a subtle bug in `prepare` so that it can no longer be
called multiple times if a resource limit hadn't been set.
Furthermore, this patch imports all the types used in the source files
to enchance code conciseness, and then reformatted with `clang-format`.
Diffs (updated)
-----
src/slave/containerizer/mesos/isolators/windows/cpu.hpp 8672b5943ff305b929dd7514581df4515dff1f50
src/slave/containerizer/mesos/isolators/windows/cpu.cpp e9f4daccdd507312998984cad231c3c7d310af2b
src/slave/containerizer/mesos/isolators/windows/mem.hpp 24426f7219bc7831c1682153d7c9c1a6e502e3d6
src/slave/containerizer/mesos/isolators/windows/mem.cpp 5abcb4edfa350e1de5b34bfd43d4e961b7208799
Diff: https://reviews.apache.org/r/64272/diff/2/
Changes: https://reviews.apache.org/r/64272/diff/1-2/
Testing
-------
`make check` on CentOS 7 (probably pointless)
`ctest` on Windows 10. All tests passed. (Building again after rebase.)
Thanks,
Andrew Schwartzmeyer