You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@reef.apache.org by "Boris Shulman (JIRA)" <ji...@apache.org> on 2016/08/15 20:02:20 UTC

[jira] [Commented] (REEF-1529) Fixing reef-webserver for multi runtime

    [ https://issues.apache.org/jira/browse/REEF-1529?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15421576#comment-15421576 ] 

Boris Shulman commented on REEF-1529:
-------------------------------------

[~markus.weimer] Do you have any input on the removal of TrackingURLProvider , and using HttpTrackingURLProvider  directly in the code (as we don't have any other implementations and I don't see any reasons having any other implementations). I want to deal with not bound http server by creating a Null implementation and testing for the actual httpserver type.

> Fixing reef-webserver for multi runtime
> ---------------------------------------
>
>                 Key: REEF-1529
>                 URL: https://issues.apache.org/jira/browse/REEF-1529
>             Project: REEF
>          Issue Type: Improvement
>            Reporter: Boris Shulman
>            Assignee: Boris Shulman
>
> reef-webserver functionality is broken for multiruntime on yarn. The problem is that the http-server does not exist in the injector that is used for the actual runtime implementation.
> The proposed solution is to check if http server is binded in the original injector and copy it to the aftual runitme injector:
> Add in RuntimesHost.initializeInjector method:
> org.apache.reef.webserver.HttpServer httpServer = null;
>     try{
>       httpServer = this.originalInjector.getInstance(org.apache.reef
>               .webserver
>               .HttpServer.class);
>     }    catch(org.apache.reef.tang.exceptions.InjectionException e) {
>     }
>     if(httpServer != null){
>       runtimeInjector.bindVolatileInstance(
>               org.apache.reef.webserver.HttpServer.class,
>               httpServer);
>     }
> In addition I need to pass the right TrackingURLProvider to the actual runtime. I propose to change the default implementation to the HttpTrackingURLProvider and remove the current DefaultTrackingURLProvider empty implementation. In addition I will need to add default emptyimplementation for HttpServer in order to be able to instantiate the  TrackingURLProvider  implementation when no httpserver is bound.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)