Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
07/18/14 13:34:37 (10 years ago)
Author:
ascheibe
Message:

merged only Hive changes from trunk into branch

Location:
branches/HiveStatistics/sources/HeuristicLab.Clients.Hive.Slave
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/HiveStatistics/sources/HeuristicLab.Clients.Hive.Slave

    • Property svn:mergeinfo set to (toggle deleted branches)
      /trunk/sources/HeuristicLab.Clients.Hive.Slavemergedeligible
      /branches/Algorithms.GradientDescent/HeuristicLab.Clients.Hive.Slave5516-5520
      /branches/Benchmarking/sources/HeuristicLab.Clients.Hive.Slave6917-7005
      /branches/CloningRefactoring/HeuristicLab.Clients.Hive.Slave4656-4721
      /branches/DataAnalysis Refactoring/HeuristicLab.Clients.Hive.Slave5471-5808
      /branches/DataAnalysis SolutionEnsembles/HeuristicLab.Clients.Hive.Slave5815-6180
      /branches/DataAnalysis/HeuristicLab.Clients.Hive.Slave4458-4459,​4462,​4464
      /branches/GP.Grammar.Editor/HeuristicLab.Clients.Hive.Slave6284-6795
      /branches/GP.Symbols (TimeLag, Diff, Integral)/HeuristicLab.Clients.Hive.Slave5060
      /branches/NET40/sources/HeuristicLab.Clients.Hive.Slave5138-5162
      /branches/ParallelEngine/HeuristicLab.Clients.Hive.Slave5175-5192
      /branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Clients.Hive.Slave7568-7810
      /branches/QAPAlgorithms/HeuristicLab.Clients.Hive.Slave6350-6627
      /branches/Restructure trunk solution/HeuristicLab.Clients.Hive.Slave6828
      /branches/RuntimeOptimizer/HeuristicLab.Clients.Hive.Slave8943-9078
      /branches/ScatterSearch (trunk integration)/HeuristicLab.Clients.Hive.Slave7787-8333
      /branches/SlaveShutdown/HeuristicLab.Clients.Hive.Slave8944-8956
      /branches/SuccessProgressAnalysis/HeuristicLab.Clients.Hive.Slave5370-5682
      /branches/Trunk/HeuristicLab.Clients.Hive.Slave6829-6865
      /branches/UnloadJobs/HeuristicLab.Clients.Hive.Slave9168-9215
      /branches/VNS/HeuristicLab.Clients.Hive.Slave5594-5752
      /branches/histogram/HeuristicLab.Clients.Hive.Slave5959-6341
  • branches/HiveStatistics/sources/HeuristicLab.Clients.Hive.Slave/3.3/SlaveTask.cs

    r11203 r11204  
    11#region License Information
    22/* HeuristicLab
    3  * Copyright (C) 2002-2012 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     3 * Copyright (C) 2002-2014 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
    44 *
    55 * This file is part of HeuristicLab.
     
    4343    public Guid TaskId { get; private set; }
    4444    public bool IsPrepared { get; private set; }
     45    private TaskData originalTaskData;
    4546
    4647    private int coresNeeded;
     
    7475      try {
    7576        this.TaskId = task.Id;
     77        originalTaskData = taskData;
    7678        Prepare(task);
    7779        StartTaskInAppDomain(taskData);
     
    143145        while (repeat > 0) {
    144146          try {
    145             waitForStartBeforeKillSem.WaitOne();
     147            waitForStartBeforeKillSem.WaitOne(Settings.Default.ExecutorSemTimeouts);
    146148            AppDomain.Unload(appDomain);
    147149            waitForStartBeforeKillSem.Dispose();
     
    164166    private void AppDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) {
    165167      DisposeAppDomain();
    166       OnExceptionOccured(new Exception("Unhandled exception: " + e.ExceptionObject.ToString()));
     168      OnTaskFailed(new Exception("Unhandled exception: " + e.ExceptionObject.ToString()));
    167169    }
    168170
     
    171173      try {
    172174        data = executor.GetTaskData();
     175        //this means that there was a problem executing the task
     176        if (data == null) return originalTaskData;
    173177      }
    174178      catch (Exception ex) {
     
    233237            executorMonitoringRun = false;
    234238            break;
    235 
    236           case ExecutorMessageType.ExceptionOccured:
    237             executorMonitoringRun = false;
    238             DisposeAppDomain();
    239             if (executor.CurrentException != null) {
    240               OnExceptionOccured(executor.CurrentException);
    241             } else {
    242               OnExceptionOccured(new Exception(string.Format("Unknow exception occured in Executor for task {0}", TaskId)));
    243             }
    244             break;
    245239        }
    246240      }
     
    277271      if (handler != null) handler(this, new EventArgs<Guid, Exception>(this.TaskId, exception));
    278272    }
    279 
    280     public event EventHandler<EventArgs<Guid, Exception>> ExceptionOccured;
    281     private void OnExceptionOccured(Exception exception) {
    282       var handler = ExceptionOccured;
    283       if (handler != null) handler(this, new EventArgs<Guid, Exception>(this.TaskId, exception));
    284     }
    285273  }
    286274}
Note: See TracChangeset for help on using the changeset viewer.