Repository: reef
Updated Branches:
  refs/heads/master fe9771096 -> ce9e85cc4


[REEF-217] Evaluator reads the driver configuration (it shouldn't)

This addressed the issue by
  * Fork Evaluators off of the main EvaluatorConfiguration.
  * Fix up configuration parameters that used to depend on DriverConfiguration.

JIRA:
  [REEF-217](https://issues.apache.org/jira/browse/REEF-217)

This closes #919


Project: http://git-wip-us.apache.org/repos/asf/reef/repo
Commit: http://git-wip-us.apache.org/repos/asf/reef/commit/ce9e85cc
Tree: http://git-wip-us.apache.org/repos/asf/reef/tree/ce9e85cc
Diff: http://git-wip-us.apache.org/repos/asf/reef/diff/ce9e85cc

Branch: refs/heads/master
Commit: ce9e85cc4a7c4976dc0b1247415ff366e3562b3f
Parents: fe97710
Author: Andrew Chung <[email protected]>
Authored: Fri Apr 1 17:30:41 2016 -0700
Committer: Julia Wang <[email protected]>
Committed: Mon Apr 4 13:17:42 2016 -0700

----------------------------------------------------------------------
 .../Common/DriverFolderPreparationHelper.cs     |  4 --
 .../DefaultYarnClusterHttpDriverConnection.cs   | 10 +++--
 .../DefaultYarnOneBoxHttpDriverConnection.cs    |  9 ++--
 .../Runtime/Evaluator/Context/ContextManager.cs | 46 +++-----------------
 .../Runtime/Evaluator/Context/ContextRuntime.cs |  4 +-
 .../Evaluator/Context/RootContextLauncher.cs    | 45 +++++++++++++++----
 .../Bridge/DriverBridge.cs                      | 13 +++++-
 .../ContextRuntimeTests.cs                      | 10 ++---
 lang/cs/Org.Apache.REEF.Evaluator/Evaluator.cs  | 37 +---------------
 .../DriverRestart.cs                            |  3 +-
 10 files changed, 72 insertions(+), 109 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Client/Common/DriverFolderPreparationHelper.cs
----------------------------------------------------------------------
diff --git 
a/lang/cs/Org.Apache.REEF.Client/Common/DriverFolderPreparationHelper.cs 
b/lang/cs/Org.Apache.REEF.Client/Common/DriverFolderPreparationHelper.cs
index 8996a2a..4f3f811 100644
--- a/lang/cs/Org.Apache.REEF.Client/Common/DriverFolderPreparationHelper.cs
+++ b/lang/cs/Org.Apache.REEF.Client/Common/DriverFolderPreparationHelper.cs
@@ -106,10 +106,6 @@ namespace Org.Apache.REEF.Client.Common
 
             _configurationSerializer.ToFile(driverConfiguration,
                 Path.Combine(driverFolderPath, 
_fileNames.GetClrDriverConfigurationPath()));
-
-            // TODO: Remove once we cleaned up the Evaluator to not expect 
this [REEF-217]
-            _configurationSerializer.ToFile(driverConfiguration,
-                Path.Combine(driverFolderPath, 
_fileNames.GetGlobalFolderPath(), _fileNames.GetClrBridgeConfigurationName()));
         }
 
         /// <summary>

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnClusterHttpDriverConnection.cs
----------------------------------------------------------------------
diff --git 
a/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnClusterHttpDriverConnection.cs
 
b/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnClusterHttpDriverConnection.cs
index 367c50d..aacb957 100644
--- 
a/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnClusterHttpDriverConnection.cs
+++ 
b/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnClusterHttpDriverConnection.cs
@@ -17,6 +17,7 @@
 
 using System;
 using Org.Apache.REEF.Tang.Annotations;
+using Org.Apache.REEF.Utilities;
 
 namespace Org.Apache.REEF.Common.Evaluator
 {
@@ -28,14 +29,15 @@ namespace Org.Apache.REEF.Common.Evaluator
         private DefaultYarnClusterHttpDriverConnection()
         {
             _applicationId = 
Environment.GetEnvironmentVariable(Constants.ReefYarnApplicationIdEnvironmentVariable);
-            if (_applicationId == null)
-            {
-                throw new ApplicationException("Could not fetch the 
application ID from YARN's container environment variables.");
-            }
         }
 
         public DriverInformation GetDriverInformation()
         {
+            if (string.IsNullOrWhiteSpace(_applicationId))
+            {
+                throw new ApplicationException("Could not fetch the 
application ID from YARN's container environment variables.");
+            }
+
             // e.g., 
http://headnodehost:9014/proxy/application_1407519727821_0012/reef/v1/driver
             Uri queryUri = new Uri(
                 string.Concat(

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnOneBoxHttpDriverConnection.cs
----------------------------------------------------------------------
diff --git 
a/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnOneBoxHttpDriverConnection.cs
 
b/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnOneBoxHttpDriverConnection.cs
index ed0cfdf..6d8d322 100644
--- 
a/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnOneBoxHttpDriverConnection.cs
+++ 
b/lang/cs/Org.Apache.REEF.Common/Evaluator/DefaultYarnOneBoxHttpDriverConnection.cs
@@ -29,14 +29,15 @@ namespace Org.Apache.REEF.Common.Evaluator
         private DefaultYarnOneBoxHttpDriverConnection()
         {
             _applicationId = 
Environment.GetEnvironmentVariable(Constants.ReefYarnApplicationIdEnvironmentVariable);
-            if (_applicationId == null)
-            {
-                throw new ApplicationException("Could not fetch the 
application ID from YARN's container environment variables.");
-            }
         }
 
         public DriverInformation GetDriverInformation()
         {
+            if (string.IsNullOrWhiteSpace(_applicationId))
+            {
+                throw new ApplicationException("Could not fetch the 
application ID from YARN's container environment variables.");
+            }
+
             // e.g., 
http://yingdac1:8088/proxy/application_1407519727821_0012/reef/v1/driver
             string oneBoxHost = string.Format(CultureInfo.InvariantCulture, 
"http://{0}:8088/proxy/";, Environment.MachineName);
             Uri queryUri = new Uri(

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextManager.cs
----------------------------------------------------------------------
diff --git 
a/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextManager.cs 
b/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextManager.cs
index f959cca..1d3fed2 100644
--- a/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextManager.cs
+++ b/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextManager.cs
@@ -22,11 +22,9 @@ using System.Globalization;
 using System.Linq;
 using Org.Apache.REEF.Common.Protobuf.ReefProtocol;
 using Org.Apache.REEF.Common.Runtime.Evaluator.Task;
-using Org.Apache.REEF.Common.Runtime.Evaluator.Utils;
 using Org.Apache.REEF.Common.Tasks;
 using Org.Apache.REEF.Tang.Annotations;
 using Org.Apache.REEF.Tang.Formats;
-using Org.Apache.REEF.Tang.Interface;
 using Org.Apache.REEF.Utilities;
 using Org.Apache.REEF.Utilities.Logging;
 
@@ -43,45 +41,13 @@ namespace Org.Apache.REEF.Common.Runtime.Evaluator.Context
 
         [Inject]
         private ContextManager(
-            IHeartBeatManager heartBeatManager,
-            AvroConfigurationSerializer serializer,
-            [Parameter(typeof(RootContextConfiguration))] string 
rootContextConfiguration,
-            [Parameter(typeof(RootServiceConfiguration))] string 
rootServiceConfiguration)
-            : this(heartBeatManager, serializer, 
serializer.FromString(rootContextConfiguration),
-            serializer.FromString(rootServiceConfiguration), 
Optional<IConfiguration>.Empty())
-        {
-        }
-
-        [Inject]
-        private ContextManager(
-            IHeartBeatManager heartBeatManager,
             AvroConfigurationSerializer serializer,
-            [Parameter(typeof(RootContextConfiguration))] string 
rootContextConfiguration,
-            [Parameter(typeof(RootServiceConfiguration))] string 
rootServiceConfiguration,
-            [Parameter(typeof(InitialTaskConfiguration))] string 
initialTaskConfiguration)
-            : this(heartBeatManager, serializer, 
serializer.FromString(rootContextConfiguration),
-            serializer.FromString(rootServiceConfiguration), 
Optional<IConfiguration>.Of(serializer.FromString(initialTaskConfiguration)))
-        {
-        }
-
-        private ContextManager(
             IHeartBeatManager heartBeatManager,
-            AvroConfigurationSerializer serializer,
-            IConfiguration rootContextConfiguration,
-            IConfiguration rootServiceConfiguration,
-            Optional<IConfiguration> initialTaskConfiguration)
+            RootContextLauncher rootContextLauncher)
         {
-            using (LOGGER.LogFunction("ContextManager::ContextManager"))
-            {
-                _heartBeatManager = heartBeatManager;
-                _serializer = serializer;
-
-                _rootContextLauncher = new RootContextLauncher(
-                    rootContextConfiguration,
-                    rootServiceConfiguration,
-                    initialTaskConfiguration,
-                    heartBeatManager);
-            }
+            _rootContextLauncher = rootContextLauncher;
+            _heartBeatManager = heartBeatManager;
+            _serializer = serializer;
         }
 
         /// <summary>
@@ -99,7 +65,7 @@ namespace Org.Apache.REEF.Common.Runtime.Evaluator.Context
                     LOGGER.Log(Level.Info, "Launching the initial Task");
                     try
                     {
-                        
_topContext.StartTask(_rootContextLauncher.RootTaskConfig.Value, 
_heartBeatManager);
+                        
_topContext.StartTask(_rootContextLauncher.RootTaskConfig.Value);
                     }
                     catch (TaskClientCodeException e)
                     {
@@ -372,7 +338,7 @@ namespace Org.Apache.REEF.Common.Runtime.Evaluator.Context
                 }
                 
                 var configuration = 
_serializer.FromString(startTaskProto.configuration);
-                currentActiveContext.StartTask(configuration, 
_heartBeatManager);
+                currentActiveContext.StartTask(configuration);
             }
         }
 

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextRuntime.cs
----------------------------------------------------------------------
diff --git 
a/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextRuntime.cs 
b/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextRuntime.cs
index 7bc0863..9901a6f 100644
--- a/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextRuntime.cs
+++ b/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/ContextRuntime.cs
@@ -193,11 +193,9 @@ namespace Org.Apache.REEF.Common.Runtime.Evaluator.Context
 
         /// <summary>
         /// Launches an Task on this context.
-        /// TODO[JIRA REEF-217]: Remove heartBeatManager from argument.
         /// </summary>
         /// <param name="taskConfiguration"></param>
-        /// <param name="heartBeatManager"></param>
-        public void StartTask(IConfiguration taskConfiguration, 
IHeartBeatManager heartBeatManager)
+        public void StartTask(IConfiguration taskConfiguration)
         {
             lock (_contextLifeCycle)
             {

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/RootContextLauncher.cs
----------------------------------------------------------------------
diff --git 
a/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/RootContextLauncher.cs
 
b/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/RootContextLauncher.cs
index 2f18816..165bc4d 100644
--- 
a/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/RootContextLauncher.cs
+++ 
b/lang/cs/Org.Apache.REEF.Common/Runtime/Evaluator/Context/RootContextLauncher.cs
@@ -15,14 +15,15 @@
 // specific language governing permissions and limitations
 // under the License.
 
-using System;
 using System.Collections.Generic;
 using System.Globalization;
 using Org.Apache.REEF.Common.Context;
+using Org.Apache.REEF.Common.Runtime.Evaluator.Utils;
 using Org.Apache.REEF.Common.Services;
+using Org.Apache.REEF.Tang.Annotations;
+using Org.Apache.REEF.Tang.Formats;
 using Org.Apache.REEF.Tang.Implementations.Tang;
 using Org.Apache.REEF.Tang.Interface;
-using Org.Apache.REEF.Tang.Util;
 using Org.Apache.REEF.Utilities;
 using Org.Apache.REEF.Utilities.Logging;
 
@@ -40,20 +41,46 @@ namespace Org.Apache.REEF.Common.Runtime.Evaluator.Context
         private ISet<object> _services;
         private ContextRuntime _rootContext;
 
-        public RootContextLauncher(
-            IConfiguration contextConfiguration, 
-            IConfiguration rootServiceConfig, 
-            Optional<IConfiguration> rootTaskConfig, 
-            IHeartBeatManager heartbeatManager)
+        [Inject]
+        private RootContextLauncher(
+            AvroConfigurationSerializer serializer,
+            [Parameter(typeof(RootContextConfiguration))] string 
rootContextConfiguration,
+            [Parameter(typeof(RootServiceConfiguration))] string 
rootServiceConfiguration,
+            IInjector injector)
+            : this(serializer.FromString(rootContextConfiguration),
+            serializer.FromString(rootServiceConfiguration), 
+            Optional<IConfiguration>.Empty(),
+            injector)
+        {
+        }
+
+        [Inject]
+        private RootContextLauncher(
+            AvroConfigurationSerializer serializer,
+            [Parameter(typeof(RootContextConfiguration))] string 
rootContextConfiguration,
+            [Parameter(typeof(RootServiceConfiguration))] string 
rootServiceConfiguration,
+            [Parameter(typeof(InitialTaskConfiguration))] string 
initialTaskConfiguration,
+            IInjector injector)
+            : this(serializer.FromString(rootContextConfiguration), 
+            serializer.FromString(rootServiceConfiguration), 
+            
Optional<IConfiguration>.Of(serializer.FromString(initialTaskConfiguration)),
+            injector)
+        {
+        }
+
+        private RootContextLauncher(
+            IConfiguration contextConfiguration,
+            IConfiguration rootServiceConfig,
+            Optional<IConfiguration> rootTaskConfig,
+            IInjector injector)
         {
             _rootContextConfiguration = contextConfiguration;
-            _rootServiceInjector = 
TangFactory.GetTang().NewInjector(rootServiceConfig);
+            _rootServiceInjector = injector.ForkInjector(rootServiceConfig);
             Id = _rootServiceInjector
                 .ForkInjector(contextConfiguration)
                 
.GetNamedInstance<ContextConfigurationOptions.ContextIdentifier, string>();
             _services = _rootServiceInjector.GetNamedInstance<ServicesSet, 
ISet<object>>();
             Logger.Log(Level.Verbose, 
string.Format(CultureInfo.InvariantCulture, "injected service(s)"));
-            
_rootServiceInjector.BindVolatileInstance(GenericType<IHeartBeatManager>.Class, 
heartbeatManager);
             RootTaskConfig = rootTaskConfig;
         }
 

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Driver/Bridge/DriverBridge.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Driver/Bridge/DriverBridge.cs 
b/lang/cs/Org.Apache.REEF.Driver/Bridge/DriverBridge.cs
index baa8eb8..795aefe 100644
--- a/lang/cs/Org.Apache.REEF.Driver/Bridge/DriverBridge.cs
+++ b/lang/cs/Org.Apache.REEF.Driver/Bridge/DriverBridge.cs
@@ -146,6 +146,7 @@ namespace Org.Apache.REEF.Driver.Bridge
             [Parameter(Value = typeof(EvaluatorConfigurationProviders))] 
ISet<IConfigurationProvider> configurationProviders,
             [Parameter(Value = 
typeof(DriverBridgeConfigurationOptions.TraceLevel))] string traceLevel,
             IDriverReconnConfigProvider driverReconnConfigProvider,
+            IDriverConnection driverConnection,
             HttpServerHandler httpServerHandler,
             IProgressProvider progressProvider)
         {
@@ -190,7 +191,7 @@ namespace Org.Apache.REEF.Driver.Bridge
             // TODO[JIRA REEF-1306]: Remove after it is bound directly into 
EvaluatorConfigurationProviders.
             _configurationProviders = new 
HashSet<IConfigurationProvider>(configurationProviders)
             {
-                GetDriverReconnectionProvider(driverReconnConfigProvider)
+                GetDriverReconnectionProvider(driverReconnConfigProvider, 
driverConnection)
             };
 
             _progressProvider = progressProvider;
@@ -216,7 +217,8 @@ namespace Org.Apache.REEF.Driver.Bridge
         }
 
         private static IDriverReconnConfigProvider 
GetDriverReconnectionProvider(
-            IDriverReconnConfigProvider driverReconnConfigProvider)
+            IDriverReconnConfigProvider driverReconnConfigProvider,
+            IDriverConnection driverConnection)
         {
             // If not the default, this means that the user has bound the 
newer configuration. Return it.
             if (!(driverReconnConfigProvider is 
DefaultDriverReconnConfigProvider))
@@ -224,6 +226,13 @@ namespace Org.Apache.REEF.Driver.Bridge
                 return driverReconnConfigProvider;
             }
 
+            // If not default, this means that the user has bound the old 
configuration.
+            // Use the dynamic configuration provider in that case.
+            if (!(driverConnection is MissingDriverConnection))
+            {
+                return new 
DynamicDriverReconnConfigProvider(driverConnection.GetType());
+            }
+
             // This is done as a stop gap for deprecation because we cannot 
bind an implementation 
             // of IDriverConnection to the driver CLRBridgeConfiguration if it 
is already bound
             // by the user, since the driver configuration and Evaluator 
configuration will be combined

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Evaluator.Tests/ContextRuntimeTests.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Evaluator.Tests/ContextRuntimeTests.cs 
b/lang/cs/Org.Apache.REEF.Evaluator.Tests/ContextRuntimeTests.cs
index da540a3..9a2ff96 100644
--- a/lang/cs/Org.Apache.REEF.Evaluator.Tests/ContextRuntimeTests.cs
+++ b/lang/cs/Org.Apache.REEF.Evaluator.Tests/ContextRuntimeTests.cs
@@ -211,7 +211,7 @@ namespace Org.Apache.REEF.Evaluator.Tests
                 {
                     var hbMgr = Substitute.For<IHeartBeatManager>();
                     
contextRuntime.ContextInjector.BindVolatileInstance(GenericType<IHeartBeatManager>.Class,
 hbMgr);
-                    contextRuntime.StartTask(taskConfig, hbMgr);
+                    contextRuntime.StartTask(taskConfig);
 
                     Assert.True(contextRuntime.TaskRuntime.IsPresent());
                     Assert.True(contextRuntime.GetTaskStatus().IsPresent());
@@ -255,14 +255,14 @@ namespace Org.Apache.REEF.Evaluator.Tests
                 {
                     var hbMgr = Substitute.For<IHeartBeatManager>();
                     
contextRuntime.ContextInjector.BindVolatileInstance(GenericType<IHeartBeatManager>.Class,
 hbMgr);
-                    contextRuntime.StartTask(taskConfig, hbMgr);
+                    contextRuntime.StartTask(taskConfig);
 
                     Assert.True(contextRuntime.TaskRuntime.IsPresent());
                     Assert.True(contextRuntime.GetTaskStatus().IsPresent());
                     Assert.Equal(contextRuntime.GetTaskStatus().Value.state, 
State.RUNNING);
 
                     Assert.Throws<InvalidOperationException>(
-                        () => contextRuntime.StartTask(taskConfig, hbMgr));
+                        () => contextRuntime.StartTask(taskConfig));
                 }
                 finally
                 {
@@ -296,7 +296,7 @@ namespace Org.Apache.REEF.Evaluator.Tests
 
                 var hbMgr = Substitute.For<IHeartBeatManager>();
                 
contextRuntime.ContextInjector.BindVolatileInstance(GenericType<IHeartBeatManager>.Class,
 hbMgr);
-                contextRuntime.StartTask(taskConfig, hbMgr);
+                contextRuntime.StartTask(taskConfig);
                 var testTask = contextRuntime.TaskRuntime.Value.Task as 
TestTask;
                 if (testTask == null)
                 {
@@ -308,7 +308,7 @@ namespace Org.Apache.REEF.Evaluator.Tests
                 Assert.False(contextRuntime.GetTaskStatus().IsPresent());
                 testTask.DisposedEvent.Wait();
 
-                contextRuntime.StartTask(taskConfig, hbMgr);
+                contextRuntime.StartTask(taskConfig);
                 Assert.Equal(contextRuntime.GetTaskStatus().Value.state, 
State.RUNNING);
 
                 var secondTestTask = contextRuntime.TaskRuntime.Value.Task as 
TestTask;

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Evaluator/Evaluator.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Evaluator/Evaluator.cs 
b/lang/cs/Org.Apache.REEF.Evaluator/Evaluator.cs
index 82b12f3..4f37c72 100644
--- a/lang/cs/Org.Apache.REEF.Evaluator/Evaluator.cs
+++ b/lang/cs/Org.Apache.REEF.Evaluator/Evaluator.cs
@@ -22,11 +22,9 @@ using System.Globalization;
 using System.IO;
 using System.Linq;
 using System.Threading;
-using Org.Apache.REEF.Common.Files;
 using Org.Apache.REEF.Common.Runtime.Evaluator;
 using Org.Apache.REEF.Common.Runtime.Evaluator.Utils;
 using Org.Apache.REEF.Driver.Bridge;
-using Org.Apache.REEF.Evaluator.Exceptions;
 using Org.Apache.REEF.Tang.Annotations;
 using Org.Apache.REEF.Tang.Formats;
 using Org.Apache.REEF.Tang.Implementations.InjectionPlan;
@@ -85,10 +83,7 @@ namespace Org.Apache.REEF.Evaluator
                 var serializer = 
injector.GetInstance<AvroConfigurationSerializer>();
                 var rootEvaluatorConfiguration =
                     
serializer.FromString(injector.GetNamedInstance<EvaluatorConfiguration, 
string>());
-                var evaluator = injector.ForkInjector(
-                    ReadClrBridgeConfiguration(),
-                    rootEvaluatorConfiguration)
-                    .GetInstance<Evaluator>();
+                var evaluator = 
injector.ForkInjector(rootEvaluatorConfiguration).GetInstance<Evaluator>();
 
                 evaluator.Run();
                 logger.Log(Level.Info, "Evaluator is returned from Run()");
@@ -129,36 +124,6 @@ namespace Org.Apache.REEF.Evaluator
         }
 
         /// <summary>
-        /// Reads the Evaluator Configuration.
-        /// </summary>
-        /// <exception cref="EvaluatorConfigurationFileNotFoundException">When 
the configuration file cannot be found.</exception>
-        /// <exception cref="EvaluatorConfigurationParseException">When the 
configuration file exists, but can't be deserialized.</exception>
-        /// <returns></returns>
-        //// TODO[JIRA REEF-217]: Remove this method.
-        private static IConfiguration ReadClrBridgeConfiguration()
-        {
-            var clrRuntimeConfigurationFile = 
Path.Combine(Directory.GetCurrentDirectory(), "reef", "global",
-                new REEFFileNames().GetClrBridgeConfigurationName());
-
-            if (!File.Exists(clrRuntimeConfigurationFile))
-            {
-                throw new 
EvaluatorConfigurationFileNotFoundException(clrRuntimeConfigurationFile);
-            }
-            
-            try
-            {
-                var clrDriverConfig = new 
AvroConfigurationSerializer().FromFile(clrRuntimeConfigurationFile);
-                logger.Log(Level.Info, 
-                    string.Format(CultureInfo.CurrentCulture, "Clr Driver 
Configuration is deserialized from file {0}:", clrRuntimeConfigurationFile));
-                return clrDriverConfig;
-            }
-            catch (Exception e)
-            {
-                throw new EvaluatorConfigurationParseException(e);
-            }
-        }
-
-        /// <summary>
         /// Read evaluator configuration from evaluator.conf generated from 
Java
         /// </summary>
         /// <param name="evaluatorConfigFile"></param>

http://git-wip-us.apache.org/repos/asf/reef/blob/ce9e85cc/lang/cs/Org.Apache.REEF.Examples.DriverRestart/DriverRestart.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Org.Apache.REEF.Examples.DriverRestart/DriverRestart.cs 
b/lang/cs/Org.Apache.REEF.Examples.DriverRestart/DriverRestart.cs
index fb27128..9aca5df 100644
--- a/lang/cs/Org.Apache.REEF.Examples.DriverRestart/DriverRestart.cs
+++ b/lang/cs/Org.Apache.REEF.Examples.DriverRestart/DriverRestart.cs
@@ -63,8 +63,7 @@ namespace Org.Apache.REEF.Examples.DriverRestart
                 .Set(DriverConfiguration.OnEvaluatorAllocated, 
GenericType<HelloRestartDriver>.Class)
                 .Set(DriverConfiguration.OnEvaluatorFailed, 
GenericType<HelloRestartDriver>.Class)
                 .Set(DriverConfiguration.OnDriverRestartEvaluatorFailed, 
GenericType<HelloRestartDriver>.Class)
-                
.Set(DriverConfiguration.DriverReconnectionConfigurationProvider, 
-                    
GenericType<YarnClusterHttpDriverReconnConfigProvider>.Class)
+                .Set(DriverConfiguration.OnDriverReconnect, 
GenericType<DefaultYarnClusterHttpDriverConnection>.Class)
                 
.Set(DriverConfiguration.DriverRestartEvaluatorRecoverySeconds, (5 * 
60).ToString())
                 .Build();
 

Reply via email to