Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave/3.4/ConsoleTests/Program.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave/3.4/ConsoleTests/Program.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Clients.Hive.Slave/3.4/ConsoleTests/Program.cs	(revision 6367)
@@ -133,5 +133,5 @@
 
       //TestAbortAll(mockPluginService, jobManager);
-      TestStopAll(mockPluginService, jobManager);
+      //TestStopAll(mockPluginService, jobManager);
       //TestPauseAll(mockPluginService, jobManager);
 
@@ -143,5 +143,5 @@
       StartStatusObservationThread();
 
-      Task[] tasks = CreateAndStartJobs(mockPluginService, jobManager, 4);
+      Task[] tasks = CreateAndStartJobs(mockPluginService, jobManager, 10, 1000);
       Task.WaitAll(tasks);
 
@@ -209,5 +209,5 @@
       StartStatusObservationThread();
 
-      Task[] tasks = CreateAndStartJobs(mockPluginService, jobManager, 4, 5000);
+      Task[] tasks = CreateAndStartJobs(mockPluginService, jobManager, 4, 1000);
       Task.WaitAll(tasks);
 
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/ApplicationConstants.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/ApplicationConstants.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/ApplicationConstants.cs	(revision 6367)
@@ -21,11 +21,7 @@
 
 using System;
-using System.Data;
 
 namespace HeuristicLab.Services.Hive.Common {
   public class ApplicationConstants {
-
-    public static System.Data.IsolationLevel IsolationLevel = IsolationLevel.ReadUncommitted;
-
     public static TimeSpan SlaveHeartbeatTimeout = TimeSpan.FromMinutes(1);
 
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/HiveItem.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/HiveItem.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/HiveItem.cs	(revision 6367)
@@ -10,5 +10,4 @@
 
     public HiveItem() { }
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/NamedHiveItem.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/NamedHiveItem.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/NamedHiveItem.cs	(revision 6367)
@@ -1,3 +1,24 @@
-﻿using System.Runtime.Serialization;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System.Runtime.Serialization;
 
 namespace HeuristicLab.Services.Hive.Common.DataTransfer {
@@ -10,5 +31,4 @@
 
     protected NamedHiveItem() { }
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Plugin.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Plugin.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Plugin.cs	(revision 6367)
@@ -40,6 +40,4 @@
 
     public Plugin() { }
-
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/PluginData.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/PluginData.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/PluginData.cs	(revision 6367)
@@ -35,6 +35,4 @@
 
     public PluginData() { }
-
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Resource.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Resource.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Resource.cs	(revision 6367)
@@ -31,5 +31,4 @@
 
     public Resource() { }
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/SlaveStatistics.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/SlaveStatistics.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/SlaveStatistics.cs	(revision 6367)
@@ -39,5 +39,4 @@
     [DataMember]
     public double CpuUtilization { get; set; }
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/StateLog.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/StateLog.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/StateLog.cs	(revision 6367)
@@ -41,5 +41,4 @@
 
     public StateLog() { }
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Statistics.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Statistics.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/Statistics.cs	(revision 6367)
@@ -31,7 +31,7 @@
     public DateTime TimeStamp { get; set; }
     [DataMember]
-    public IEnumerable<UserStatistics> UserStatistics {get;set;}
+    public IEnumerable<UserStatistics> UserStatistics { get; set; }
     [DataMember]
-    public IEnumerable<SlaveStatistics> SlaveStatistics {get;set;}
+    public IEnumerable<SlaveStatistics> SlaveStatistics { get; set; }
 
     public Statistics() { }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/UserStatistics.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/UserStatistics.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/DataTransfer/UserStatistics.cs	(revision 6367)
@@ -37,7 +37,4 @@
     [DataMember]
     public TimeSpan StartToEndTime { get; set; }
-    
-
-
   }
 }
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/MessageContainer.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/MessageContainer.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Common/3.4/MessageContainer.cs	(revision 6367)
@@ -48,9 +48,4 @@
       ShutdownSlave,  // slave should shutdown immediately without submitting results
       SayHello,  // Slave should say hello, because he is unknown to the server
-
-      // *** commands from execution engine ***
-      AddChildJob,     // adds a new child job for the provided jobId
-      GetChildJobs,    // return all child jobs of the provided jobId
-      DeleteChildJobs, // delete all child jobs of the provided jobId
     };
 
@@ -63,4 +58,6 @@
     public Guid JobId { get; set; }
 
+    [StorableConstructor]
+    protected MessageContainer(bool deserializing) { }
     protected MessageContainer() { }
     public MessageContainer(MessageType message) {
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/Exceptions/DaoException.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/Exceptions/DaoException.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/Exceptions/DaoException.cs	(revision 6367)
@@ -1,6 +1,24 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 
 namespace HeuristicLab.Services.Hive.DataAccess {
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDao.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDao.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/HiveDao.cs	(revision 6367)
@@ -1,5 +1,5 @@
 ﻿#region License Information
 /* HeuristicLab
- * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
  *
  * This file is part of HeuristicLab.
@@ -68,5 +68,9 @@
         if (entity == null) db.Jobs.InsertOnSubmit(Convert.ToEntity(dto));
         else Convert.ToEntity(dto, entity);
-        // todo: update required plugins
+        foreach (Guid pluginId in dto.PluginsNeededIds) {
+          if (db.RequiredPlugins.Count(p => p.PluginId == pluginId) == 0) {
+            db.RequiredPlugins.InsertOnSubmit(new RequiredPlugin() { JobId = entity.JobId, PluginId = pluginId });
+          }          
+        }
         db.SubmitChanges();
       }
Index: anches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/Tools/cleanHiveDatabase.sql
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/Tools/cleanHiveDatabase.sql	(revision 6366)
+++ 	(revision )
@@ -1,19 +1,0 @@
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].AssignedResources
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].RequiredPlugins
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].PluginData
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].Plugin
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].UptimeCalendar
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].SlaveGroup_Resource
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].[Resource]
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].HiveExperiment
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].JobData
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].Job
-
-/** only jobs & experiments **/
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].AssignedResources
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].RequiredPlugins
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].PluginData
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].Plugin
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].HiveExperiment
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].JobData
-DELETE FROM [HeuristicLab.Hive-3.4].[dbo].Job
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/TransactionManager.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/TransactionManager.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.DataAccess/3.4/TransactionManager.cs	(revision 6367)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Transactions;
 
Index: anches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Tests/PluginLoader.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Tests/PluginLoader.cs	(revision 6366)
+++ 	(revision )
@@ -1,47 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * HeuristicLab is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Reflection;
-using HeuristicLab.PluginInfrastructure;
-
-namespace HeuristicLab.Services.Hive.Tests {
-  internal static class PluginLoader {
-    public const string AssemblyExtension = ".dll";
-    public static List<Assembly> pluginAssemblies;
-
-    static PluginLoader() {
-      foreach (string path in Directory.EnumerateFiles(Environment.CurrentDirectory)
-        .Where(s => s.EndsWith(AssemblyExtension)))
-        Assembly.LoadFrom(path);
-
-      pluginAssemblies = AppDomain.CurrentDomain.GetAssemblies().Where(IsPluginAssembly).ToList();
-    }
-
-    private static bool IsPluginAssembly(Assembly assembly) {
-      return assembly.GetExportedTypes()
-        .Where(t => typeof(IPlugin).IsAssignableFrom(t) && !t.IsAbstract && !t.IsInterface).Any();
-    }
-  }
-}
Index: anches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Tests/ServerTest.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive.Tests/ServerTest.cs	(revision 6366)
+++ 	(revision )
@@ -1,45 +1,0 @@
-﻿using System;
-using System.Text;
-using System.Collections.Generic;
-using System.Linq;
-using Microsoft.VisualStudio.TestTools.UnitTesting;
-using HeuristicLab.Services.Hive.Common.DataTransfer;
-using HeuristicLab.Services.Hive.Common.ServiceContracts;
-using HeuristicLab.Clients.Hive.Slave.Tests;
-using HeuristicLab.Clients.Hive;
-
-namespace HeuristicLab.Services.Hive.Tests {
-  [TestClass]
-  public class ServerTest {
-
-    [ClassInitialize]
-    public static void MyClassInitialize(TestContext testContext) {
-      PluginLoader.pluginAssemblies.Any();
-      ServiceLocator.Instance = new MockServiceLocator(ServiceLocator.Instance);
-    }
-    
-    private IHiveService GetService() {
-      return new HiveService();
-    }
-
-    [TestMethod]
-    public void TestMethod1() {
-      var service = GetService();
-
-      Job job = new Job() {
-        CoresNeeded = 1,
-        MemoryNeeded = 0,
-        Priority = 0
-      };
-
-      JobData jobData = new JobData() {
-        Data = PersistenceUtil.Serialize(new MockJob(500))
-      };
-
-      Guid jobId = service.AddJob(job, jobData);
-
-      Job newJob = service.GetJob(jobId);
-      Assert.AreEqual(job, newJob);
-    }
-  }
-}
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/HiveService.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/HiveService.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/HiveService.cs	(revision 6367)
@@ -41,10 +41,6 @@
         jobData.JobId = job.Id;
         jobData.LastUpdate = DateTime.Now;
-        if (resourceIds != null) {
-          foreach (Guid slaveGroupId in resourceIds) {
-            dao.AssignJobToResource(job.Id, slaveGroupId);
-          }
-        } else {
-          // todo: use default group
+        foreach (Guid slaveGroupId in resourceIds) {
+          dao.AssignJobToResource(job.Id, slaveGroupId);
         }
         dao.AddJobData(jobData);
@@ -138,5 +134,5 @@
           job.Command = null;
         } else if (jobState == JobState.Paused && !job.Command.HasValue) {
-          // job was paused and uploaded by slave without the user-command to pause it -> set waiting
+          // slave paused and uploaded the job (no user-command) -> set waiting.
           job = dao.UpdateJobState(jobId, JobState.Waiting, slaveId, userId, exception);
         }
@@ -256,7 +252,5 @@
           dbSlave.SlaveState = SlaveState.Idle;
 
-          // don't update those properties:
-          // dbSlave.IsAllowedToCalculate = slaveInfo.IsAllowedToCalculate; 
-          // dbSlave.ParentResourceId = slaveInfo.ParentResourceId;
+          // don't update those properties: dbSlave.IsAllowedToCalculate, dbSlave.ParentResourceId 
 
           dao.UpdateSlave(dbSlave);
Index: /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/LifecycleManager.cs
===================================================================
--- /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/LifecycleManager.cs	(revision 6366)
+++ /branches/HeuristicLab.Hive-3.4/sources/HeuristicLab.Services.Hive/3.4/LifecycleManager.cs	(revision 6367)
@@ -1,3 +1,24 @@
-﻿using System;
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -48,7 +69,5 @@
       }
       stats.SlaveStatistics = slaveStats;
-
       stats.UserStatistics = dao.GetUserStatistics();
-
       dao.AddStatistics(stats);
     }
@@ -91,5 +110,5 @@
     /// </summary>
     private void SetTimeoutJobsWaiting() {
-      var jobs = dao.GetJobs(x => (x.State == JobState.Calculating && (DateTime.Now - x.LastHeartbeat) > ApplicationConstants.CalculatingJobHeartbeatTimeout) 
+      var jobs = dao.GetJobs(x => (x.State == JobState.Calculating && (DateTime.Now - x.LastHeartbeat) > ApplicationConstants.CalculatingJobHeartbeatTimeout)
                                || (x.State == JobState.Transferring && (DateTime.Now - x.LastHeartbeat) > ApplicationConstants.TransferringJobHeartbeatTimeout));
       foreach (var j in jobs) {
