You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@mesos.apache.org by Andrei Sekretenko <as...@mesosphere.io> on 2020/08/20 17:06:19 UTC

Review Request 72790: Deduplicated concurrent image pulls by docker store.

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

Review request for mesos and Qian Zhang.


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


Repository: mesos


Description
-------

This patch makes the docker store reuse a pending pull if asked for
an image that is already being pulled.

The pull caching follows the same approach as the earlier attempt in
https://reviews.apache.org/r/39331 . However, handing out futures to
the store callers and handling their discards are performed differently,
using a form of reference counting, so that the pull itself is discarded
only if all the futures returned by `Store::get()` have been discarded.


Diffs
-----

  src/slave/containerizer/mesos/provisioner/docker/store.cpp bf2be90aa4fcd7541849a157eb6930b491ccf03a 


Diff: https://reviews.apache.org/r/72790/diff/1/


Testing
-------


Thanks,

Andrei Sekretenko


Re: Review Request 72790: Deduplicated concurrent image pulls by docker store.

Posted by Qian Zhang <zh...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/72790/#review221778
-----------------------------------------------------------


Fix it, then Ship it!





src/slave/containerizer/mesos/provisioner/docker/store.cpp
Lines 152 (patched)
<https://reviews.apache.org/r/72790/#comment310840>

    Can we add a comment for this `hashmap`? Like what is its key.



src/slave/containerizer/mesos/provisioner/docker/store.cpp
Line 362 (original), 384-385 (patched)
<https://reviews.apache.org/r/72790/#comment310841>

    A newline between.


- Qian Zhang


On Aug. 21, 2020, 1:06 a.m., Andrei Sekretenko wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/72790/
> -----------------------------------------------------------
> 
> (Updated Aug. 21, 2020, 1:06 a.m.)
> 
> 
> Review request for mesos and Qian Zhang.
> 
> 
> Bugs: MESOS-10169
>     https://issues.apache.org/jira/browse/MESOS-10169
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> This patch makes the docker store reuse a pending pull if asked for
> an image that is already being pulled.
> 
> The pull caching follows the same approach as the earlier attempt in
> https://reviews.apache.org/r/39331 . However, handing out futures to
> the store callers and handling their discards are performed differently,
> using a form of reference counting, so that the pull itself is discarded
> only if all the futures returned by `Store::get()` have been discarded.
> 
> 
> Diffs
> -----
> 
>   src/slave/containerizer/mesos/provisioner/docker/store.cpp bf2be90aa4fcd7541849a157eb6930b491ccf03a 
> 
> 
> Diff: https://reviews.apache.org/r/72790/diff/1/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Andrei Sekretenko
> 
>


Re: Review Request 72790: Deduplicated concurrent image pulls by docker store.

Posted by Andrei Sekretenko <as...@mesosphere.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/72790/
-----------------------------------------------------------

(Updated Sept. 3, 2020, 12:29 p.m.)


Review request for mesos and Qian Zhang.


Changes
-------

Added a comment for the pull hashmap; fixed indentation.


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


Repository: mesos


Description
-------

This patch makes the docker store reuse a pending pull if asked for
an image that is already being pulled.

The pull caching follows the same approach as the earlier attempt in
https://reviews.apache.org/r/39331 . However, handing out futures to
the store callers and handling their discards are performed differently,
using a form of reference counting, so that the pull itself is discarded
only if all the futures returned by `Store::get()` have been discarded.


Diffs (updated)
-----

  src/slave/containerizer/mesos/provisioner/docker/store.cpp bf2be90aa4fcd7541849a157eb6930b491ccf03a 


Diff: https://reviews.apache.org/r/72790/diff/2/

Changes: https://reviews.apache.org/r/72790/diff/1-2/


Testing
-------


Thanks,

Andrei Sekretenko