[ 
https://issues.apache.org/jira/browse/BEAM-3327?focusedWorklogId=92978&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-92978
 ]

ASF GitHub Bot logged work on BEAM-3327:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 20/Apr/18 00:36
            Start Date: 20/Apr/18 00:36
    Worklog Time Spent: 10m 
      Work Description: bsidhom commented on a change in pull request #5189: 
[BEAM-3327] Basic Docker environment factory
URL: https://github.com/apache/beam/pull/5189#discussion_r182920837
 
 

 ##########
 File path: 
runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/control/ControlClientPool.java
 ##########
 @@ -17,16 +17,12 @@
  */
 package org.apache.beam.runners.fnexecution.control;
 
-import org.apache.beam.sdk.fn.function.ThrowingConsumer;
-import org.apache.beam.sdk.util.ThrowingSupplier;
-
 /** Control client pool that exposes a source and sink of control clients. */
-public interface ControlClientPool<T extends InstructionRequestHandler> {
+public interface ControlClientPool {
 
   /** Source of control clients. */
 
 Review comment:
   <!--thread_id:cc_182896324_t; 
commit:1fd121da1417624b3b84f0300648251da64b9cb5; resolved:1-->
   <!--section:context-quote-->
   > **jkff** wrote:
   > Generally, why the higher-order functions here: why not have 
ControlClientPool have a function for getting a client, and a function for 
adding a client to the pool? That would match how other pool-like abstractions 
typically work.
   
   <!--section:body-->
   I want to minimize the surface area that consumers of these endpoints can 
interact with. We previously bundled everything into a single pool that could 
be read from or written to, but it made separation of responsibilities very 
unclear and the APIs hard to work with.
   
   In general, the owner of the pool will be separate from the client producers 
and consumers. With this interface, the owner is the _only_ one with access to 
the client pool itself. The producer of incoming control connections (in 
practice, the gRPC service) should only have access to an object sink into 
which it feeds clients. The consumer (for example, the docker factory) only has 
access to the source of incoming clients.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 92978)
    Time Spent: 11h 50m  (was: 11h 40m)

> Add abstractions to manage Environment Instance lifecycles.
> -----------------------------------------------------------
>
>                 Key: BEAM-3327
>                 URL: https://issues.apache.org/jira/browse/BEAM-3327
>             Project: Beam
>          Issue Type: New Feature
>          Components: runner-core
>            Reporter: Thomas Groh
>            Assignee: Ben Sidhom
>            Priority: Major
>              Labels: portability
>          Time Spent: 11h 50m
>  Remaining Estimate: 0h
>
> This permits remote stage execution for arbitrary environments



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to