Index: /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/JobAdapter.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/JobAdapter.cs	(revision 2082)
+++ /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/JobAdapter.cs	(revision 2083)
@@ -427,12 +427,7 @@
 
           job.JobInfo = GetById(jobId);
-          dsHiveServer.JobRow row
-            = GetRowById(jobId);
-
-          if (job.JobInfo != null && row != null &&
-            !row.IsSerializedJobNull()) {
-
+          if (job.JobInfo != null) {
             job.SerializedJob =
-              row.SerializedJob;
+              base.Adapter.GetSerializedJobById(jobId);
 
             return job;
@@ -457,11 +452,9 @@
             if (row != null) {
               Update(job.JobInfo);
-              row.SerializedJob =
-                job.SerializedJob;
-
-              base.Adapter.Update(row);
+              return base.Adapter.UpdateSerializedJob(
+                job.SerializedJob, job.JobInfo.Id);
             }
 
-            return true;
+            return false;
           });
       }
Index: /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/TableAdapterWrapper/JobAdapterWrapper.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/TableAdapterWrapper/JobAdapterWrapper.cs	(revision 2082)
+++ /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/TableAdapterWrapper/JobAdapterWrapper.cs	(revision 2083)
@@ -39,4 +39,12 @@
     }
 
+    public byte[] GetSerializedJob(Guid jobId) {
+      return TransactionalAdapter.GetSerializedJobById(jobId);
+    }
+
+    public bool UpdateSerialiedJob(byte[] serializedJob, Guid jobId) {
+      return TransactionalAdapter.UpdateSerializedJob(serializedJob, jobId) > 0;
+    }
+
     protected override void SetConnection(DbConnection connection) {
       adapter.Connection = connection as SqlConnection;
Index: /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.Designer.cs
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.Designer.cs	(revision 2082)
+++ /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.Designer.cs	(revision 2083)
@@ -2,5 +2,5 @@
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:2.0.50727.3082
+//     Runtime Version:2.0.50727.3053
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
@@ -1779,6 +1779,4 @@
             private global::System.Data.DataColumn columnPercentage;
             
-            private global::System.Data.DataColumn columnSerializedJob;
-            
             private global::System.Data.DataColumn columnDateCreated;
             
@@ -1861,11 +1859,4 @@
             
             [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-            public global::System.Data.DataColumn SerializedJobColumn {
-                get {
-                    return this.columnSerializedJob;
-                }
-            }
-            
-            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
             public global::System.Data.DataColumn DateCreatedColumn {
                 get {
@@ -1945,5 +1936,5 @@
             
             [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-            public JobRow AddJobRow(System.Guid JobId, JobRow parentJobRowByR_44, string JobState, ClientRow parentClientRowByR_21, double Percentage, byte[] SerializedJob, System.DateTime DateCreated, System.DateTime DateCalculated, int Priority, ProjectRow parentProjectRowByR_49, System.Guid UserId, int CoresNeeded, int MemoryNeeded) {
+            public JobRow AddJobRow(System.Guid JobId, JobRow parentJobRowByR_44, string JobState, ClientRow parentClientRowByR_21, double Percentage, System.DateTime DateCreated, System.DateTime DateCalculated, int Priority, ProjectRow parentProjectRowByR_49, System.Guid UserId, int CoresNeeded, int MemoryNeeded) {
                 JobRow rowJobRow = ((JobRow)(this.NewRow()));
                 object[] columnValuesArray = new object[] {
@@ -1953,5 +1944,4 @@
                         null,
                         Percentage,
-                        SerializedJob,
                         DateCreated,
                         DateCalculated,
@@ -1968,5 +1958,5 @@
                 }
                 if ((parentProjectRowByR_49 != null)) {
-                    columnValuesArray[9] = parentProjectRowByR_49[0];
+                    columnValuesArray[8] = parentProjectRowByR_49[0];
                 }
                 rowJobRow.ItemArray = columnValuesArray;
@@ -2000,5 +1990,4 @@
                 this.columnResourceId = base.Columns["ResourceId"];
                 this.columnPercentage = base.Columns["Percentage"];
-                this.columnSerializedJob = base.Columns["SerializedJob"];
                 this.columnDateCreated = base.Columns["DateCreated"];
                 this.columnDateCalculated = base.Columns["DateCalculated"];
@@ -2022,6 +2011,4 @@
                 this.columnPercentage = new global::System.Data.DataColumn("Percentage", typeof(double), null, global::System.Data.MappingType.Element);
                 base.Columns.Add(this.columnPercentage);
-                this.columnSerializedJob = new global::System.Data.DataColumn("SerializedJob", typeof(byte[]), null, global::System.Data.MappingType.Element);
-                base.Columns.Add(this.columnSerializedJob);
                 this.columnDateCreated = new global::System.Data.DataColumn("DateCreated", typeof(global::System.DateTime), null, global::System.Data.MappingType.Element);
                 base.Columns.Add(this.columnDateCreated);
@@ -4327,19 +4314,4 @@
             
             [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-            public byte[] SerializedJob {
-                get {
-                    try {
-                        return ((byte[])(this[this.tableJob.SerializedJobColumn]));
-                    }
-                    catch (global::System.InvalidCastException e) {
-                        throw new global::System.Data.StrongTypingException("The value for column \'SerializedJob\' in table \'Job\' is DBNull.", e);
-                    }
-                }
-                set {
-                    this[this.tableJob.SerializedJobColumn] = value;
-                }
-            }
-            
-            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
             public System.DateTime DateCreated {
                 get {
@@ -4514,14 +4486,4 @@
             public void SetPercentageNull() {
                 this[this.tableJob.PercentageColumn] = global::System.Convert.DBNull;
-            }
-            
-            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-            public bool IsSerializedJobNull() {
-                return this.IsNull(this.tableJob.SerializedJobColumn);
-            }
-            
-            [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-            public void SetSerializedJobNull() {
-                this[this.tableJob.SerializedJobColumn] = global::System.Convert.DBNull;
             }
             
@@ -7421,5 +7383,4 @@
             tableMapping.ColumnMappings.Add("ResourceId", "ResourceId");
             tableMapping.ColumnMappings.Add("Percentage", "Percentage");
-            tableMapping.ColumnMappings.Add("SerializedJob", "SerializedJob");
             tableMapping.ColumnMappings.Add("DateCreated", "DateCreated");
             tableMapping.ColumnMappings.Add("DateCalculated", "DateCalculated");
@@ -7432,5 +7393,5 @@
             this._adapter.DeleteCommand = new global::System.Data.SqlClient.SqlCommand();
             this._adapter.DeleteCommand.Connection = this.Connection;
-            this._adapter.DeleteCommand.CommandText = @"DELETE FROM [dbo].[Job] WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)))";
+            this._adapter.DeleteCommand.CommandText = @"DELETE FROM [Job] WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)))";
             this._adapter.DeleteCommand.CommandType = global::System.Data.CommandType.Text;
             this._adapter.DeleteCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Original_JobId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Original, false, null, "", "", ""));
@@ -7457,13 +7418,12 @@
             this._adapter.InsertCommand = new global::System.Data.SqlClient.SqlCommand();
             this._adapter.InsertCommand.Connection = this.Connection;
-            this._adapter.InsertCommand.CommandText = @"INSERT INTO [dbo].[Job] ([JobId], [ParentJobId], [JobState], [ResourceId], [Percentage], [SerializedJob], [DateCreated], [DateCalculated], [Priority], [ProjectId], [UserId], [CoresNeeded], [MemoryNeeded]) VALUES (@JobId, @ParentJobId, @JobState, @ResourceId, @Percentage, @SerializedJob, @DateCreated, @DateCalculated, @Priority, @ProjectId, @UserId, @CoresNeeded, @MemoryNeeded);
-WITH ClientGroups(ClientGroupId) AS (SELECT ClientGroupId FROM ClientGroup_Resource WHERE (ResourceId = @ResourceId) UNION ALL SELECT g.ClientGroupId FROM ClientGroup_Resource AS g INNER JOIN ClientGroups AS gr ON gr.ClientGroupId = g.ResourceId) SELECT JobId, ParentJobId, JobState, ResourceId, Percentage, SerializedJob, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId) ORDER BY Priority";
+            this._adapter.InsertCommand.CommandText = @"INSERT INTO [Job] ([JobId], [ParentJobId], [ResourceId], [JobState], [Percentage], [DateCreated], [DateCalculated], [Priority], [ProjectId], [UserId], [CoresNeeded], [MemoryNeeded]) VALUES (@JobId, @ParentJobId, @ResourceId, @JobState, @Percentage, @DateCreated, @DateCalculated, @Priority, @ProjectId, @UserId, @CoresNeeded, @MemoryNeeded);
+SELECT JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId)";
             this._adapter.InsertCommand.CommandType = global::System.Data.CommandType.Text;
             this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@JobId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ParentJobId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ParentJobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@JobState", global::System.Data.SqlDbType.VarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "JobState", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Percentage", global::System.Data.SqlDbType.Float, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Percentage", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@SerializedJob", global::System.Data.SqlDbType.VarBinary, 0, global::System.Data.ParameterDirection.Input, 0, 0, "SerializedJob", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DateCreated", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DateCreated", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.InsertCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DateCalculated", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DateCalculated", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
@@ -7475,35 +7435,30 @@
             this._adapter.UpdateCommand = new global::System.Data.SqlClient.SqlCommand();
             this._adapter.UpdateCommand.Connection = this.Connection;
-            this._adapter.UpdateCommand.CommandText = "UPDATE [dbo].[Job] SET [JobId] = @JobId, [ParentJobId] = @ParentJobId, [JobState]" +
-                " = @JobState, [ResourceId] = @ResourceId, [Percentage] = @Percentage, [Serialize" +
-                "dJob] = @SerializedJob, [DateCreated] = @DateCreated, [DateCalculated] = @DateCa" +
-                "lculated, [Priority] = @Priority, [ProjectId] = @ProjectId, [UserId] = @UserId, " +
-                "[CoresNeeded] = @CoresNeeded, [MemoryNeeded] = @MemoryNeeded WHERE (([JobId] = @" +
-                "Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([Pa" +
-                "rentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceI" +
-                "d] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage =" +
-                " 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@Is" +
-                "Null_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_Da" +
-                "teCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([" +
-                "DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Pri" +
-                "ority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = " +
-                "1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull" +
-                "_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNul" +
-                "l_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_Cores" +
-                "Needed)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryN" +
-                "eeded] = @Original_MemoryNeeded)));\r\nWITH ClientGroups(ClientGroupId) AS (SELECT" +
-                " ClientGroupId FROM ClientGroup_Resource WHERE (ResourceId = @ResourceId) UNION " +
-                "ALL SELECT g.ClientGroupId FROM ClientGroup_Resource AS g INNER JOIN ClientGroup" +
-                "s AS gr ON gr.ClientGroupId = g.ResourceId) SELECT JobId, ParentJobId, JobState," +
-                " ResourceId, Percentage, SerializedJob, DateCreated, DateCalculated, Priority, P" +
-                "rojectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId) ORDE" +
-                "R BY Priority";
+            this._adapter.UpdateCommand.CommandText = "UPDATE [Job] SET [JobId] = @JobId, [ParentJobId] = @ParentJobId, [ResourceId] = @" +
+                "ResourceId, [JobState] = @JobState, [Percentage] = @Percentage, [DateCreated] = " +
+                "@DateCreated, [DateCalculated] = @DateCalculated, [Priority] = @Priority, [Proje" +
+                "ctId] = @ProjectId, [UserId] = @UserId, [CoresNeeded] = @CoresNeeded, [MemoryNee" +
+                "ded] = @MemoryNeeded WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobI" +
+                "d = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND" +
+                " ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original" +
+                "_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percen" +
+                "tage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] I" +
+                "S NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated" +
+                " = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculat" +
+                "ed)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Origin" +
+                "al_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectI" +
+                "d] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([U" +
+                "serId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS N" +
+                "ULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 " +
+                "AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)));\r\nSEL" +
+                "ECT JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, DateCalcu" +
+                "lated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (Jo" +
+                "bId = @JobId)";
             this._adapter.UpdateCommand.CommandType = global::System.Data.CommandType.Text;
             this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@JobId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ParentJobId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ParentJobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@JobState", global::System.Data.SqlDbType.VarChar, 0, global::System.Data.ParameterDirection.Input, 0, 0, "JobState", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 0, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Percentage", global::System.Data.SqlDbType.Float, 0, global::System.Data.ParameterDirection.Input, 0, 0, "Percentage", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@SerializedJob", global::System.Data.SqlDbType.VarBinary, 0, global::System.Data.ParameterDirection.Input, 0, 0, "SerializedJob", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DateCreated", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DateCreated", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._adapter.UpdateCommand.Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@DateCalculated", global::System.Data.SqlDbType.DateTime, 0, global::System.Data.ParameterDirection.Input, 0, 0, "DateCalculated", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
@@ -7544,53 +7499,21 @@
         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
         private void InitCommandCollection() {
-            this._commandCollection = new global::System.Data.SqlClient.SqlCommand[10];
+            this._commandCollection = new global::System.Data.SqlClient.SqlCommand[12];
             this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[0].Connection = this.Connection;
-            this._commandCollection[0].CommandText = @"WITH ClientGroups(ClientGroupId)
-AS
-(
--- Anchor member definition
-    SELECT ClientGroupId
-    FROM ClientGroup_Resource
-    WHERE ResourceId = @ResourceId
-    UNION ALL
--- Recursive member definition
-    SELECT g.ClientGroupId
-    FROM ClientGroup_Resource AS g
-    INNER JOIN  ClientGroups AS gr
-        ON gr.ClientGroupId = g.ResourceId
-)
-
-SELECT * FROM dbo.Job WHERE JobState =@State AND CoresNeeded <= @CoresNeeded
- AND MemoryNeeded <= @MemoryNeeded AND 
-(
- -- no assigned resources - can be executed everywhere
- NOT EXISTS (SELECT * FROM AssignedResources 
- WHERE JobId = Job.JobId)
- 
- -- the resource itself is assigned to the job
- OR  EXISTS ((SELECT * FROM AssignedResources 
-  WHERE JobId = Job.JobId 
-  AND ResourceId = @ResourceId)) 
-  
-  -- a group of the resource is assigned to the job
- OR  EXISTS ((SELECT * FROM AssignedResources  
-  WHERE JobId = Job.JobId AND
-  ResourceId IN (SELECT * FROM ClientGroups))))
-ORDER BY Priority";
+            this._commandCollection[0].CommandText = "SELECT     JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, Dat" +
+                "eCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded\r\nFROM       " +
+                "  Job";
             this._commandCollection[0].CommandType = global::System.Data.CommandType.Text;
-            this._commandCollection[0].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@State", global::System.Data.SqlDbType.VarChar, 2147483647, global::System.Data.ParameterDirection.Input, 0, 0, "JobState", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._commandCollection[0].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CoresNeeded", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "CoresNeeded", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._commandCollection[0].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@MemoryNeeded", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "MemoryNeeded", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
-            this._commandCollection[0].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[1] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[1].Connection = this.Connection;
-            this._commandCollection[1].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job";
+            this._commandCollection[1].CommandText = @"SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobState = 'calculating' OR JobState = 'abort' OR JobState = 'requestSnapshot ' OR JobState = 'requestSnapshotSent') AND (ResourceId = @ResourceId)";
             this._commandCollection[1].CommandType = global::System.Data.CommandType.Text;
+            this._commandCollection[1].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[2] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[2].Connection = this.Connection;
-            this._commandCollection[2].CommandText = @"SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (JobState = 'calculating' OR JobState = 'abort' OR JobState = 'requestSnapshot ' OR JobState = 'requestSnapshotSent') AND (ResourceId = @ResourceId)";
+            this._commandCollection[2].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "ResourceId = @ResourceId)";
             this._commandCollection[2].CommandType = global::System.Data.CommandType.Text;
             this._commandCollection[2].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
@@ -7598,13 +7521,13 @@
             this._commandCollection[3].Connection = this.Connection;
             this._commandCollection[3].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (ResourceId = @ResourceId)";
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "JobId = @Id)";
             this._commandCollection[3].CommandType = global::System.Data.CommandType.Text;
-            this._commandCollection[3].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[3].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Id", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[4] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[4].Connection = this.Connection;
             this._commandCollection[4].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (JobId = @Id)";
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "JobId = @Id)";
             this._commandCollection[4].CommandType = global::System.Data.CommandType.Text;
             this._commandCollection[4].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Id", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
@@ -7612,36 +7535,48 @@
             this._commandCollection[5].Connection = this.Connection;
             this._commandCollection[5].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (JobId = @Id)";
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "ParentJobId = @Id)";
             this._commandCollection[5].CommandType = global::System.Data.CommandType.Text;
-            this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Id", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Id", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ParentJobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[6] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[6].Connection = this.Connection;
             this._commandCollection[6].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (ParentJobId = @Id)";
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "ProjectId = @ProjectId)";
             this._commandCollection[6].CommandType = global::System.Data.CommandType.Text;
-            this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@Id", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ParentJobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ProjectId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ProjectId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[7] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[7].Connection = this.Connection;
             this._commandCollection[7].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (ProjectId = @ProjectId)";
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "JobState = @State)";
             this._commandCollection[7].CommandType = global::System.Data.CommandType.Text;
-            this._commandCollection[7].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ProjectId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ProjectId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[7].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@State", global::System.Data.SqlDbType.VarChar, 18, global::System.Data.ParameterDirection.Input, 0, 0, "JobState", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[8] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[8].Connection = this.Connection;
-            this._commandCollection[8].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (JobState = @State)";
+            this._commandCollection[8].CommandText = @"WITH ClientGroups(ClientGroupId) AS (SELECT ClientGroupId FROM ClientGroup_Resource WHERE (ResourceId = @ResourceId) UNION ALL SELECT g.ClientGroupId FROM ClientGroup_Resource AS g INNER JOIN ClientGroups AS gr ON gr.ClientGroupId = g.ResourceId) SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobState = @State) AND (CoresNeeded <= @CoresNeeded) AND (MemoryNeeded <= @MemoryNeeded) AND (NOT EXISTS (SELECT ResourceId, JobId FROM AssignedResources WHERE (JobId = Job.JobId))) OR (JobState = @State) AND (CoresNeeded <= @CoresNeeded) AND (MemoryNeeded <= @MemoryNeeded) AND EXISTS (SELECT ResourceId, JobId FROM AssignedResources AS AssignedResources_2 WHERE (JobId = Job.JobId) AND (ResourceId = @ResourceId)) OR (JobState = @State) AND (CoresNeeded <= @CoresNeeded) AND (MemoryNeeded <= @MemoryNeeded) AND EXISTS (SELECT ResourceId, JobId FROM AssignedResources AS AssignedResources_1 WHERE (JobId = Job.JobId) AND (ResourceId IN (SELECT ClientGroupId FROM ClientGroups AS ClientGroups_1))) ORDER BY Priority";
             this._commandCollection[8].CommandType = global::System.Data.CommandType.Text;
-            this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@State", global::System.Data.SqlDbType.VarChar, 18, global::System.Data.ParameterDirection.Input, 0, 0, "JobState", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@State", global::System.Data.SqlDbType.VarChar, 2147483647, global::System.Data.ParameterDirection.Input, 0, 0, "JobState", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@CoresNeeded", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "CoresNeeded", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@MemoryNeeded", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "MemoryNeeded", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@ResourceId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "ResourceId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
             this._commandCollection[9] = new global::System.Data.SqlClient.SqlCommand();
             this._commandCollection[9].Connection = this.Connection;
             this._commandCollection[9].CommandText = "SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, P" +
-                "arentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId F" +
-                "ROM Job WHERE (UserId = @UserId)";
+                "arentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (" +
+                "UserId = @UserId)";
             this._commandCollection[9].CommandType = global::System.Data.CommandType.Text;
             this._commandCollection[9].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@UserId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "UserId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[10] = new global::System.Data.SqlClient.SqlCommand();
+            this._commandCollection[10].Connection = this.Connection;
+            this._commandCollection[10].CommandText = "SELECT SerializedJob FROM Job WHERE JobId = @JobId";
+            this._commandCollection[10].CommandType = global::System.Data.CommandType.Text;
+            this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@JobId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[11] = new global::System.Data.SqlClient.SqlCommand();
+            this._commandCollection[11].Connection = this.Connection;
+            this._commandCollection[11].CommandText = "UPDATE Job SET SerializedJob = @SerializedJob WHERE JobId = @JobId";
+            this._commandCollection[11].CommandType = global::System.Data.CommandType.Text;
+            this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@SerializedJob", global::System.Data.SqlDbType.VarBinary, 2147483647, global::System.Data.ParameterDirection.Input, 0, 0, "SerializedJob", global::System.Data.DataRowVersion.Current, false, null, "", "", ""));
+            this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@JobId", global::System.Data.SqlDbType.UniqueIdentifier, 16, global::System.Data.ParameterDirection.Input, 0, 0, "JobId", global::System.Data.DataRowVersion.Original, false, null, "", "", ""));
         }
         
@@ -7649,25 +7584,6 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, true)]
-        public virtual int FillByStateCoresMemoryResource(dsHiveServer.JobDataTable dataTable, string State, global::System.Nullable<int> CoresNeeded, global::System.Nullable<int> MemoryNeeded, System.Guid ResourceId) {
+        public virtual int Fill(dsHiveServer.JobDataTable dataTable) {
             this.Adapter.SelectCommand = this.CommandCollection[0];
-            if ((State == null)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((string)(State));
-            }
-            if ((CoresNeeded.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[1].Value = ((int)(CoresNeeded.Value));
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value;
-            }
-            if ((MemoryNeeded.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[2].Value = ((int)(MemoryNeeded.Value));
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[2].Value = global::System.DBNull.Value;
-            }
-            this.Adapter.SelectCommand.Parameters[3].Value = ((System.Guid)(ResourceId));
             if ((this.ClearBeforeFill == true)) {
                 dataTable.Clear();
@@ -7680,25 +7596,6 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, true)]
-        public virtual dsHiveServer.JobDataTable GetDataByStateCoresMemoryResource(string State, global::System.Nullable<int> CoresNeeded, global::System.Nullable<int> MemoryNeeded, System.Guid ResourceId) {
+        public virtual dsHiveServer.JobDataTable GetData() {
             this.Adapter.SelectCommand = this.CommandCollection[0];
-            if ((State == null)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((string)(State));
-            }
-            if ((CoresNeeded.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[1].Value = ((int)(CoresNeeded.Value));
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value;
-            }
-            if ((MemoryNeeded.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[2].Value = ((int)(MemoryNeeded.Value));
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[2].Value = global::System.DBNull.Value;
-            }
-            this.Adapter.SelectCommand.Parameters[3].Value = ((System.Guid)(ResourceId));
             dsHiveServer.JobDataTable dataTable = new dsHiveServer.JobDataTable();
             this.Adapter.Fill(dataTable);
@@ -7709,6 +7606,12 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int Fill(dsHiveServer.JobDataTable dataTable) {
+        public virtual int FillByCalculatingClient(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> ResourceId) {
             this.Adapter.SelectCommand = this.CommandCollection[1];
+            if ((ResourceId.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ResourceId.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
+            }
             if ((this.ClearBeforeFill == true)) {
                 dataTable.Clear();
@@ -7721,6 +7624,12 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetData() {
+        public virtual dsHiveServer.JobDataTable GetDataByCalculatingClient(global::System.Nullable<global::System.Guid> ResourceId) {
             this.Adapter.SelectCommand = this.CommandCollection[1];
+            if ((ResourceId.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ResourceId.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
+            }
             dsHiveServer.JobDataTable dataTable = new dsHiveServer.JobDataTable();
             this.Adapter.Fill(dataTable);
@@ -7731,5 +7640,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillByCalculatingClient(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> ResourceId) {
+        public virtual int FillByClient(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> ResourceId) {
             this.Adapter.SelectCommand = this.CommandCollection[2];
             if ((ResourceId.HasValue == true)) {
@@ -7749,5 +7658,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataByCalculatingClient(global::System.Nullable<global::System.Guid> ResourceId) {
+        public virtual dsHiveServer.JobDataTable GetDataByClient(global::System.Nullable<global::System.Guid> ResourceId) {
             this.Adapter.SelectCommand = this.CommandCollection[2];
             if ((ResourceId.HasValue == true)) {
@@ -7765,12 +7674,7 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillByClient(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> ResourceId) {
+        public virtual int FillById(dsHiveServer.JobDataTable dataTable, System.Guid Id) {
             this.Adapter.SelectCommand = this.CommandCollection[3];
-            if ((ResourceId.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ResourceId.Value));
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
-            }
+            this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id));
             if ((this.ClearBeforeFill == true)) {
                 dataTable.Clear();
@@ -7783,12 +7687,7 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataByClient(global::System.Nullable<global::System.Guid> ResourceId) {
+        public virtual dsHiveServer.JobDataTable GetDataById(System.Guid Id) {
             this.Adapter.SelectCommand = this.CommandCollection[3];
-            if ((ResourceId.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ResourceId.Value));
-            }
-            else {
-                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
-            }
+            this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id));
             dsHiveServer.JobDataTable dataTable = new dsHiveServer.JobDataTable();
             this.Adapter.Fill(dataTable);
@@ -7799,5 +7698,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillById(dsHiveServer.JobDataTable dataTable, System.Guid Id) {
+        public virtual int FillByJob(dsHiveServer.JobDataTable dataTable, System.Guid Id) {
             this.Adapter.SelectCommand = this.CommandCollection[4];
             this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id));
@@ -7812,5 +7711,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataById(System.Guid Id) {
+        public virtual dsHiveServer.JobDataTable GetDataByJob(System.Guid Id) {
             this.Adapter.SelectCommand = this.CommandCollection[4];
             this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id));
@@ -7823,7 +7722,12 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillByJob(dsHiveServer.JobDataTable dataTable, System.Guid Id) {
+        public virtual int FillByParentJob(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> Id) {
             this.Adapter.SelectCommand = this.CommandCollection[5];
-            this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id));
+            if ((Id.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
+            }
             if ((this.ClearBeforeFill == true)) {
                 dataTable.Clear();
@@ -7836,7 +7740,12 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataByJob(System.Guid Id) {
+        public virtual dsHiveServer.JobDataTable GetDataByParentJob(global::System.Nullable<global::System.Guid> Id) {
             this.Adapter.SelectCommand = this.CommandCollection[5];
-            this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id));
+            if ((Id.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
+            }
             dsHiveServer.JobDataTable dataTable = new dsHiveServer.JobDataTable();
             this.Adapter.Fill(dataTable);
@@ -7847,8 +7756,8 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillByParentJob(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> Id) {
+        public virtual int FillByProjectId(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> ProjectId) {
             this.Adapter.SelectCommand = this.CommandCollection[6];
-            if ((Id.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id.Value));
+            if ((ProjectId.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ProjectId.Value));
             }
             else {
@@ -7865,8 +7774,8 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataByParentJob(global::System.Nullable<global::System.Guid> Id) {
+        public virtual dsHiveServer.JobDataTable GetDataByProjectId(global::System.Nullable<global::System.Guid> ProjectId) {
             this.Adapter.SelectCommand = this.CommandCollection[6];
-            if ((Id.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(Id.Value));
+            if ((ProjectId.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ProjectId.Value));
             }
             else {
@@ -7881,11 +7790,11 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillByProjectId(dsHiveServer.JobDataTable dataTable, global::System.Nullable<global::System.Guid> ProjectId) {
+        public virtual int FillByState(dsHiveServer.JobDataTable dataTable, string State) {
             this.Adapter.SelectCommand = this.CommandCollection[7];
-            if ((ProjectId.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ProjectId.Value));
-            }
-            else {
+            if ((State == null)) {
                 this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((string)(State));
             }
             if ((this.ClearBeforeFill == true)) {
@@ -7899,11 +7808,11 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataByProjectId(global::System.Nullable<global::System.Guid> ProjectId) {
+        public virtual dsHiveServer.JobDataTable GetDataByState(string State) {
             this.Adapter.SelectCommand = this.CommandCollection[7];
-            if ((ProjectId.HasValue == true)) {
-                this.Adapter.SelectCommand.Parameters[0].Value = ((System.Guid)(ProjectId.Value));
-            }
-            else {
+            if ((State == null)) {
                 this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value;
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[0].Value = ((string)(State));
             }
             dsHiveServer.JobDataTable dataTable = new dsHiveServer.JobDataTable();
@@ -7915,5 +7824,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)]
-        public virtual int FillByState(dsHiveServer.JobDataTable dataTable, string State) {
+        public virtual int FillByStateCoresMemoryResource(dsHiveServer.JobDataTable dataTable, string State, global::System.Nullable<int> CoresNeeded, global::System.Nullable<int> MemoryNeeded, System.Guid ResourceId) {
             this.Adapter.SelectCommand = this.CommandCollection[8];
             if ((State == null)) {
@@ -7923,4 +7832,17 @@
                 this.Adapter.SelectCommand.Parameters[0].Value = ((string)(State));
             }
+            if ((CoresNeeded.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[1].Value = ((int)(CoresNeeded.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value;
+            }
+            if ((MemoryNeeded.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[2].Value = ((int)(MemoryNeeded.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[2].Value = global::System.DBNull.Value;
+            }
+            this.Adapter.SelectCommand.Parameters[3].Value = ((System.Guid)(ResourceId));
             if ((this.ClearBeforeFill == true)) {
                 dataTable.Clear();
@@ -7933,5 +7855,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
-        public virtual dsHiveServer.JobDataTable GetDataByState(string State) {
+        public virtual dsHiveServer.JobDataTable GetDataByStateCoresMemoryResource(string State, global::System.Nullable<int> CoresNeeded, global::System.Nullable<int> MemoryNeeded, System.Guid ResourceId) {
             this.Adapter.SelectCommand = this.CommandCollection[8];
             if ((State == null)) {
@@ -7941,4 +7863,17 @@
                 this.Adapter.SelectCommand.Parameters[0].Value = ((string)(State));
             }
+            if ((CoresNeeded.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[1].Value = ((int)(CoresNeeded.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value;
+            }
+            if ((MemoryNeeded.HasValue == true)) {
+                this.Adapter.SelectCommand.Parameters[2].Value = ((int)(MemoryNeeded.Value));
+            }
+            else {
+                this.Adapter.SelectCommand.Parameters[2].Value = global::System.DBNull.Value;
+            }
+            this.Adapter.SelectCommand.Parameters[3].Value = ((System.Guid)(ResourceId));
             dsHiveServer.JobDataTable dataTable = new dsHiveServer.JobDataTable();
             this.Adapter.Fill(dataTable);
@@ -8109,5 +8044,5 @@
         [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
         [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Insert, true)]
-        public virtual int Insert(System.Guid JobId, global::System.Nullable<global::System.Guid> ParentJobId, string JobState, global::System.Nullable<global::System.Guid> ResourceId, global::System.Nullable<double> Percentage, byte[] SerializedJob, global::System.Nullable<global::System.DateTime> DateCreated, global::System.Nullable<global::System.DateTime> DateCalculated, global::System.Nullable<int> Priority, global::System.Nullable<global::System.Guid> ProjectId, global::System.Nullable<global::System.Guid> UserId, global::System.Nullable<int> CoresNeeded, global::System.Nullable<int> MemoryNeeded) {
+        public virtual int Insert(System.Guid JobId, global::System.Nullable<global::System.Guid> ParentJobId, global::System.Nullable<global::System.Guid> ResourceId, string JobState, global::System.Nullable<double> Percentage, global::System.Nullable<global::System.DateTime> DateCreated, global::System.Nullable<global::System.DateTime> DateCalculated, global::System.Nullable<int> Priority, global::System.Nullable<global::System.Guid> ProjectId, global::System.Nullable<global::System.Guid> UserId, global::System.Nullable<int> CoresNeeded, global::System.Nullable<int> MemoryNeeded) {
             this.Adapter.InsertCommand.Parameters[0].Value = ((System.Guid)(JobId));
             if ((ParentJobId.HasValue == true)) {
@@ -8117,15 +8052,15 @@
                 this.Adapter.InsertCommand.Parameters[1].Value = global::System.DBNull.Value;
             }
+            if ((ResourceId.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[2].Value = ((System.Guid)(ResourceId.Value));
+            }
+            else {
+                this.Adapter.InsertCommand.Parameters[2].Value = global::System.DBNull.Value;
+            }
             if ((JobState == null)) {
-                this.Adapter.InsertCommand.Parameters[2].Value = global::System.DBNull.Value;
-            }
-            else {
-                this.Adapter.InsertCommand.Parameters[2].Value = ((string)(JobState));
-            }
-            if ((ResourceId.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[3].Value = ((System.Guid)(ResourceId.Value));
-            }
-            else {
                 this.Adapter.InsertCommand.Parameters[3].Value = global::System.DBNull.Value;
+            }
+            else {
+                this.Adapter.InsertCommand.Parameters[3].Value = ((string)(JobState));
             }
             if ((Percentage.HasValue == true)) {
@@ -8135,51 +8070,45 @@
                 this.Adapter.InsertCommand.Parameters[4].Value = global::System.DBNull.Value;
             }
-            if ((SerializedJob == null)) {
+            if ((DateCreated.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[5].Value = ((System.DateTime)(DateCreated.Value));
+            }
+            else {
                 this.Adapter.InsertCommand.Parameters[5].Value = global::System.DBNull.Value;
             }
-            else {
-                this.Adapter.InsertCommand.Parameters[5].Value = ((byte[])(SerializedJob));
-            }
-            if ((DateCreated.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[6].Value = ((System.DateTime)(DateCreated.Value));
+            if ((DateCalculated.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[6].Value = ((System.DateTime)(DateCalculated.Value));
             }
             else {
                 this.Adapter.InsertCommand.Parameters[6].Value = global::System.DBNull.Value;
             }
-            if ((DateCalculated.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[7].Value = ((System.DateTime)(DateCalculated.Value));
+            if ((Priority.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[7].Value = ((int)(Priority.Value));
             }
             else {
                 this.Adapter.InsertCommand.Parameters[7].Value = global::System.DBNull.Value;
             }
-            if ((Priority.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[8].Value = ((int)(Priority.Value));
+            if ((ProjectId.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[8].Value = ((System.Guid)(ProjectId.Value));
             }
             else {
                 this.Adapter.InsertCommand.Parameters[8].Value = global::System.DBNull.Value;
             }
-            if ((ProjectId.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[9].Value = ((System.Guid)(ProjectId.Value));
+            if ((UserId.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[9].Value = ((System.Guid)(UserId.Value));
             }
             else {
                 this.Adapter.InsertCommand.Parameters[9].Value = global::System.DBNull.Value;
             }
-            if ((UserId.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[10].Value = ((System.Guid)(UserId.Value));
+            if ((CoresNeeded.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[10].Value = ((int)(CoresNeeded.Value));
             }
             else {
                 this.Adapter.InsertCommand.Parameters[10].Value = global::System.DBNull.Value;
             }
-            if ((CoresNeeded.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[11].Value = ((int)(CoresNeeded.Value));
+            if ((MemoryNeeded.HasValue == true)) {
+                this.Adapter.InsertCommand.Parameters[11].Value = ((int)(MemoryNeeded.Value));
             }
             else {
                 this.Adapter.InsertCommand.Parameters[11].Value = global::System.DBNull.Value;
-            }
-            if ((MemoryNeeded.HasValue == true)) {
-                this.Adapter.InsertCommand.Parameters[12].Value = ((int)(MemoryNeeded.Value));
-            }
-            else {
-                this.Adapter.InsertCommand.Parameters[12].Value = global::System.DBNull.Value;
             }
             global::System.Data.ConnectionState previousConnectionState = this.Adapter.InsertCommand.Connection.State;
@@ -8205,8 +8134,7 @@
                     System.Guid JobId, 
                     global::System.Nullable<global::System.Guid> ParentJobId, 
+                    global::System.Nullable<global::System.Guid> ResourceId, 
                     string JobState, 
-                    global::System.Nullable<global::System.Guid> ResourceId, 
                     global::System.Nullable<double> Percentage, 
-                    byte[] SerializedJob, 
                     global::System.Nullable<global::System.DateTime> DateCreated, 
                     global::System.Nullable<global::System.DateTime> DateCalculated, 
@@ -8234,15 +8162,15 @@
                 this.Adapter.UpdateCommand.Parameters[1].Value = global::System.DBNull.Value;
             }
+            if ((ResourceId.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[2].Value = ((System.Guid)(ResourceId.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[2].Value = global::System.DBNull.Value;
+            }
             if ((JobState == null)) {
-                this.Adapter.UpdateCommand.Parameters[2].Value = global::System.DBNull.Value;
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[2].Value = ((string)(JobState));
-            }
-            if ((ResourceId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[3].Value = ((System.Guid)(ResourceId.Value));
-            }
-            else {
                 this.Adapter.UpdateCommand.Parameters[3].Value = global::System.DBNull.Value;
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[3].Value = ((string)(JobState));
             }
             if ((Percentage.HasValue == true)) {
@@ -8252,132 +8180,126 @@
                 this.Adapter.UpdateCommand.Parameters[4].Value = global::System.DBNull.Value;
             }
-            if ((SerializedJob == null)) {
+            if ((DateCreated.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[5].Value = ((System.DateTime)(DateCreated.Value));
+            }
+            else {
                 this.Adapter.UpdateCommand.Parameters[5].Value = global::System.DBNull.Value;
             }
-            else {
-                this.Adapter.UpdateCommand.Parameters[5].Value = ((byte[])(SerializedJob));
-            }
-            if ((DateCreated.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[6].Value = ((System.DateTime)(DateCreated.Value));
+            if ((DateCalculated.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[6].Value = ((System.DateTime)(DateCalculated.Value));
             }
             else {
                 this.Adapter.UpdateCommand.Parameters[6].Value = global::System.DBNull.Value;
             }
-            if ((DateCalculated.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[7].Value = ((System.DateTime)(DateCalculated.Value));
+            if ((Priority.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[7].Value = ((int)(Priority.Value));
             }
             else {
                 this.Adapter.UpdateCommand.Parameters[7].Value = global::System.DBNull.Value;
             }
-            if ((Priority.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[8].Value = ((int)(Priority.Value));
+            if ((ProjectId.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[8].Value = ((System.Guid)(ProjectId.Value));
             }
             else {
                 this.Adapter.UpdateCommand.Parameters[8].Value = global::System.DBNull.Value;
             }
-            if ((ProjectId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[9].Value = ((System.Guid)(ProjectId.Value));
+            if ((UserId.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[9].Value = ((System.Guid)(UserId.Value));
             }
             else {
                 this.Adapter.UpdateCommand.Parameters[9].Value = global::System.DBNull.Value;
             }
-            if ((UserId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[10].Value = ((System.Guid)(UserId.Value));
+            if ((CoresNeeded.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[10].Value = ((int)(CoresNeeded.Value));
             }
             else {
                 this.Adapter.UpdateCommand.Parameters[10].Value = global::System.DBNull.Value;
             }
-            if ((CoresNeeded.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[11].Value = ((int)(CoresNeeded.Value));
+            if ((MemoryNeeded.HasValue == true)) {
+                this.Adapter.UpdateCommand.Parameters[11].Value = ((int)(MemoryNeeded.Value));
             }
             else {
                 this.Adapter.UpdateCommand.Parameters[11].Value = global::System.DBNull.Value;
             }
-            if ((MemoryNeeded.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[12].Value = ((int)(MemoryNeeded.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[12].Value = global::System.DBNull.Value;
-            }
-            this.Adapter.UpdateCommand.Parameters[13].Value = ((System.Guid)(Original_JobId));
+            this.Adapter.UpdateCommand.Parameters[12].Value = ((System.Guid)(Original_JobId));
             if ((Original_ParentJobId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[14].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[15].Value = ((System.Guid)(Original_ParentJobId.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[14].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[15].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[13].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[14].Value = ((System.Guid)(Original_ParentJobId.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[13].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[14].Value = global::System.DBNull.Value;
             }
             if ((Original_ResourceId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[16].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[17].Value = ((System.Guid)(Original_ResourceId.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[16].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[17].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[15].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[16].Value = ((System.Guid)(Original_ResourceId.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[15].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[16].Value = global::System.DBNull.Value;
             }
             if ((Original_Percentage.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[18].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[19].Value = ((double)(Original_Percentage.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[18].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[19].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[17].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[18].Value = ((double)(Original_Percentage.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[17].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[18].Value = global::System.DBNull.Value;
             }
             if ((Original_DateCreated.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[20].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[21].Value = ((System.DateTime)(Original_DateCreated.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[20].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[21].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[19].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[20].Value = ((System.DateTime)(Original_DateCreated.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[19].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[20].Value = global::System.DBNull.Value;
             }
             if ((Original_DateCalculated.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[22].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[23].Value = ((System.DateTime)(Original_DateCalculated.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[22].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[23].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[21].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[22].Value = ((System.DateTime)(Original_DateCalculated.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[21].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[22].Value = global::System.DBNull.Value;
             }
             if ((Original_Priority.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[24].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[25].Value = ((int)(Original_Priority.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[24].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[25].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[23].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[24].Value = ((int)(Original_Priority.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[23].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[24].Value = global::System.DBNull.Value;
             }
             if ((Original_ProjectId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[26].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[27].Value = ((System.Guid)(Original_ProjectId.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[26].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[27].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[25].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[26].Value = ((System.Guid)(Original_ProjectId.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[25].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[26].Value = global::System.DBNull.Value;
             }
             if ((Original_UserId.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[28].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[29].Value = ((System.Guid)(Original_UserId.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[28].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[29].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[27].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[28].Value = ((System.Guid)(Original_UserId.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[27].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[28].Value = global::System.DBNull.Value;
             }
             if ((Original_CoresNeeded.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[30].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[31].Value = ((int)(Original_CoresNeeded.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[30].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[31].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[29].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[30].Value = ((int)(Original_CoresNeeded.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[29].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[30].Value = global::System.DBNull.Value;
             }
             if ((Original_MemoryNeeded.HasValue == true)) {
-                this.Adapter.UpdateCommand.Parameters[32].Value = ((object)(0));
-                this.Adapter.UpdateCommand.Parameters[33].Value = ((int)(Original_MemoryNeeded.Value));
-            }
-            else {
-                this.Adapter.UpdateCommand.Parameters[32].Value = ((object)(1));
-                this.Adapter.UpdateCommand.Parameters[33].Value = global::System.DBNull.Value;
+                this.Adapter.UpdateCommand.Parameters[31].Value = ((object)(0));
+                this.Adapter.UpdateCommand.Parameters[32].Value = ((int)(Original_MemoryNeeded.Value));
+            }
+            else {
+                this.Adapter.UpdateCommand.Parameters[31].Value = ((object)(1));
+                this.Adapter.UpdateCommand.Parameters[32].Value = global::System.DBNull.Value;
             }
             global::System.Data.ConnectionState previousConnectionState = this.Adapter.UpdateCommand.Connection.State;
@@ -8402,8 +8324,7 @@
         public virtual int Update(
                     global::System.Nullable<global::System.Guid> ParentJobId, 
+                    global::System.Nullable<global::System.Guid> ResourceId, 
                     string JobState, 
-                    global::System.Nullable<global::System.Guid> ResourceId, 
                     global::System.Nullable<double> Percentage, 
-                    byte[] SerializedJob, 
                     global::System.Nullable<global::System.DateTime> DateCreated, 
                     global::System.Nullable<global::System.DateTime> DateCalculated, 
@@ -8424,5 +8345,62 @@
                     global::System.Nullable<int> Original_CoresNeeded, 
                     global::System.Nullable<int> Original_MemoryNeeded) {
-            return this.Update(Original_JobId, ParentJobId, JobState, ResourceId, Percentage, SerializedJob, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded, Original_JobId, Original_ParentJobId, Original_ResourceId, Original_Percentage, Original_DateCreated, Original_DateCalculated, Original_Priority, Original_ProjectId, Original_UserId, Original_CoresNeeded, Original_MemoryNeeded);
+            return this.Update(Original_JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded, Original_JobId, Original_ParentJobId, Original_ResourceId, Original_Percentage, Original_DateCreated, Original_DateCalculated, Original_Priority, Original_ProjectId, Original_UserId, Original_CoresNeeded, Original_MemoryNeeded);
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
+        public virtual byte[] GetSerializedJobById(System.Guid JobId) {
+            global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[10];
+            command.Parameters[0].Value = ((System.Guid)(JobId));
+            global::System.Data.ConnectionState previousConnectionState = command.Connection.State;
+            if (((command.Connection.State & global::System.Data.ConnectionState.Open) 
+                        != global::System.Data.ConnectionState.Open)) {
+                command.Connection.Open();
+            }
+            object returnValue;
+            try {
+                returnValue = command.ExecuteScalar();
+            }
+            finally {
+                if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) {
+                    command.Connection.Close();
+                }
+            }
+            if (((returnValue == null) 
+                        || (returnValue.GetType() == typeof(global::System.DBNull)))) {
+                return null;
+            }
+            else {
+                return ((byte[])(returnValue));
+            }
+        }
+        
+        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
+        [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Update, false)]
+        public virtual int UpdateSerializedJob(byte[] SerializedJob, System.Guid JobId) {
+            global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[11];
+            if ((SerializedJob == null)) {
+                command.Parameters[0].Value = global::System.DBNull.Value;
+            }
+            else {
+                command.Parameters[0].Value = ((byte[])(SerializedJob));
+            }
+            command.Parameters[1].Value = ((System.Guid)(JobId));
+            global::System.Data.ConnectionState previousConnectionState = command.Connection.State;
+            if (((command.Connection.State & global::System.Data.ConnectionState.Open) 
+                        != global::System.Data.ConnectionState.Open)) {
+                command.Connection.Open();
+            }
+            int returnValue;
+            try {
+                returnValue = command.ExecuteNonQuery();
+            }
+            finally {
+                if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) {
+                    command.Connection.Close();
+                }
+            }
+            return returnValue;
         }
     }
Index: /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.xsd
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.xsd	(revision 2082)
+++ /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.xsd	(revision 2083)
@@ -355,8 +355,8 @@
           <TableAdapter BaseClass="System.ComponentModel.Component" DataAccessorModifier="AutoLayout, AnsiClass, Class, Public" DataAccessorName="JobTableAdapter" GeneratorDataComponentClassName="JobTableAdapter" Name="Job" UserDataComponentName="JobTableAdapter">
             <MainSource>
-              <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="FillByStateCoresMemoryResource" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetDataByStateCoresMemoryResource" GeneratorSourceName="FillByStateCoresMemoryResource" GetMethodModifier="Public" GetMethodName="GetDataByStateCoresMemoryResource" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataByStateCoresMemoryResource" UserSourceName="FillByStateCoresMemoryResource">
+              <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
                 <DeleteCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="false">
-                    <CommandText>DELETE FROM [dbo].[Job] WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)))</CommandText>
+                    <CommandText>DELETE FROM [Job] WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)))</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@Original_JobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Original" />
@@ -386,13 +386,12 @@
                 <InsertCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="false">
-                    <CommandText>INSERT INTO [dbo].[Job] ([JobId], [ParentJobId], [JobState], [ResourceId], [Percentage], [SerializedJob], [DateCreated], [DateCalculated], [Priority], [ProjectId], [UserId], [CoresNeeded], [MemoryNeeded]) VALUES (@JobId, @ParentJobId, @JobState, @ResourceId, @Percentage, @SerializedJob, @DateCreated, @DateCalculated, @Priority, @ProjectId, @UserId, @CoresNeeded, @MemoryNeeded);
-WITH ClientGroups(ClientGroupId) AS (SELECT ClientGroupId FROM ClientGroup_Resource WHERE (ResourceId = @ResourceId) UNION ALL SELECT g.ClientGroupId FROM ClientGroup_Resource AS g INNER JOIN ClientGroups AS gr ON gr.ClientGroupId = g.ResourceId) SELECT JobId, ParentJobId, JobState, ResourceId, Percentage, SerializedJob, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId) ORDER BY Priority</CommandText>
+                    <CommandText>INSERT INTO [Job] ([JobId], [ParentJobId], [ResourceId], [JobState], [Percentage], [DateCreated], [DateCalculated], [Priority], [ProjectId], [UserId], [CoresNeeded], [MemoryNeeded]) VALUES (@JobId, @ParentJobId, @ResourceId, @JobState, @Percentage, @DateCreated, @DateCalculated, @Priority, @ProjectId, @UserId, @CoresNeeded, @MemoryNeeded);
+SELECT JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@JobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@ParentJobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="ParentJobId" SourceColumnNullMapping="false" SourceVersion="Current" />
+                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@JobState" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="JobState" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Double" Direction="Input" ParameterName="@Percentage" Precision="0" ProviderType="Float" Scale="0" Size="0" SourceColumn="Percentage" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Binary" Direction="Input" ParameterName="@SerializedJob" Precision="0" ProviderType="VarBinary" Scale="0" Size="0" SourceColumn="SerializedJob" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@DateCreated" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="DateCreated" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@DateCalculated" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="DateCalculated" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -407,55 +406,19 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>WITH ClientGroups(ClientGroupId)
-AS
-(
--- Anchor member definition
-    SELECT ClientGroupId
-    FROM ClientGroup_Resource
-    WHERE ResourceId = @ResourceId
-    UNION ALL
--- Recursive member definition
-    SELECT g.ClientGroupId
-    FROM ClientGroup_Resource AS g
-    INNER JOIN  ClientGroups AS gr
-        ON gr.ClientGroupId = g.ResourceId
-)
-
-SELECT * FROM dbo.Job WHERE JobState =@State AND CoresNeeded &lt;= @CoresNeeded
- AND MemoryNeeded &lt;= @MemoryNeeded AND 
-(
- -- no assigned resources - can be executed everywhere
- NOT EXISTS (SELECT * FROM AssignedResources 
- WHERE JobId = Job.JobId)
- 
- -- the resource itself is assigned to the job
- OR  EXISTS ((SELECT * FROM AssignedResources 
-  WHERE JobId = Job.JobId 
-  AND ResourceId = @ResourceId)) 
-  
-  -- a group of the resource is assigned to the job
- OR  EXISTS ((SELECT * FROM AssignedResources  
-  WHERE JobId = Job.JobId AND
-  ResourceId IN (SELECT * FROM ClientGroups))))
-ORDER BY Priority</CommandText>
-                    <Parameters>
-                      <Parameter AllowDbNull="true" AutogeneratedName="State" ColumnName="JobState" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="varchar(MAX)" DbType="AnsiString" Direction="Input" ParameterName="@State" Precision="0" ProviderType="VarChar" Scale="0" Size="2147483647" SourceColumn="JobState" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="true" AutogeneratedName="CoresNeeded" ColumnName="CoresNeeded" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@CoresNeeded" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="CoresNeeded" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="true" AutogeneratedName="MemoryNeeded" ColumnName="MemoryNeeded" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@MemoryNeeded" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="MemoryNeeded" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="false" AutogeneratedName="ResourceId" ColumnName="ResourceId" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
-                    </Parameters>
+                    <CommandText>SELECT     JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded
+FROM         Job</CommandText>
+                    <Parameters />
                   </DbCommand>
                 </SelectCommand>
                 <UpdateCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="false">
-                    <CommandText>UPDATE [dbo].[Job] SET [JobId] = @JobId, [ParentJobId] = @ParentJobId, [JobState] = @JobState, [ResourceId] = @ResourceId, [Percentage] = @Percentage, [SerializedJob] = @SerializedJob, [DateCreated] = @DateCreated, [DateCalculated] = @DateCalculated, [Priority] = @Priority, [ProjectId] = @ProjectId, [UserId] = @UserId, [CoresNeeded] = @CoresNeeded, [MemoryNeeded] = @MemoryNeeded WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)));
-WITH ClientGroups(ClientGroupId) AS (SELECT ClientGroupId FROM ClientGroup_Resource WHERE (ResourceId = @ResourceId) UNION ALL SELECT g.ClientGroupId FROM ClientGroup_Resource AS g INNER JOIN ClientGroups AS gr ON gr.ClientGroupId = g.ResourceId) SELECT JobId, ParentJobId, JobState, ResourceId, Percentage, SerializedJob, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId) ORDER BY Priority</CommandText>
+                    <CommandText>UPDATE [Job] SET [JobId] = @JobId, [ParentJobId] = @ParentJobId, [ResourceId] = @ResourceId, [JobState] = @JobState, [Percentage] = @Percentage, [DateCreated] = @DateCreated, [DateCalculated] = @DateCalculated, [Priority] = @Priority, [ProjectId] = @ProjectId, [UserId] = @UserId, [CoresNeeded] = @CoresNeeded, [MemoryNeeded] = @MemoryNeeded WHERE (([JobId] = @Original_JobId) AND ((@IsNull_ParentJobId = 1 AND [ParentJobId] IS NULL) OR ([ParentJobId] = @Original_ParentJobId)) AND ((@IsNull_ResourceId = 1 AND [ResourceId] IS NULL) OR ([ResourceId] = @Original_ResourceId)) AND ((@IsNull_Percentage = 1 AND [Percentage] IS NULL) OR ([Percentage] = @Original_Percentage)) AND ((@IsNull_DateCreated = 1 AND [DateCreated] IS NULL) OR ([DateCreated] = @Original_DateCreated)) AND ((@IsNull_DateCalculated = 1 AND [DateCalculated] IS NULL) OR ([DateCalculated] = @Original_DateCalculated)) AND ((@IsNull_Priority = 1 AND [Priority] IS NULL) OR ([Priority] = @Original_Priority)) AND ((@IsNull_ProjectId = 1 AND [ProjectId] IS NULL) OR ([ProjectId] = @Original_ProjectId)) AND ((@IsNull_UserId = 1 AND [UserId] IS NULL) OR ([UserId] = @Original_UserId)) AND ((@IsNull_CoresNeeded = 1 AND [CoresNeeded] IS NULL) OR ([CoresNeeded] = @Original_CoresNeeded)) AND ((@IsNull_MemoryNeeded = 1 AND [MemoryNeeded] IS NULL) OR ([MemoryNeeded] = @Original_MemoryNeeded)));
+SELECT JobId, ParentJobId, ResourceId, JobState, Percentage, DateCreated, DateCalculated, Priority, ProjectId, UserId, CoresNeeded, MemoryNeeded FROM Job WHERE (JobId = @JobId)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@JobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@ParentJobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="ParentJobId" SourceColumnNullMapping="false" SourceVersion="Current" />
+                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@JobState" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="JobState" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="0" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Double" Direction="Input" ParameterName="@Percentage" Precision="0" ProviderType="Float" Scale="0" Size="0" SourceColumn="Percentage" SourceColumnNullMapping="false" SourceVersion="Current" />
-                      <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="Binary" Direction="Input" ParameterName="@SerializedJob" Precision="0" ProviderType="VarBinary" Scale="0" Size="0" SourceColumn="SerializedJob" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@DateCreated" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="DateCreated" SourceColumnNullMapping="false" SourceVersion="Current" />
                       <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="DateTime" Direction="Input" ParameterName="@DateCalculated" Precision="0" ProviderType="DateTime" Scale="0" Size="0" SourceColumn="DateCalculated" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -497,5 +460,4 @@
               <Mapping SourceColumn="ResourceId" DataSetColumn="ResourceId" />
               <Mapping SourceColumn="Percentage" DataSetColumn="Percentage" />
-              <Mapping SourceColumn="SerializedJob" DataSetColumn="SerializedJob" />
               <Mapping SourceColumn="DateCreated" DataSetColumn="DateCreated" />
               <Mapping SourceColumn="DateCalculated" DataSetColumn="DateCalculated" />
@@ -507,16 +469,8 @@
             </Mappings>
             <Sources>
-              <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="Fill" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetData" GeneratorSourceName="Fill" GetMethodModifier="Public" GetMethodName="GetData" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetData" UserSourceName="Fill">
-                <SelectCommand>
-                  <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job</CommandText>
-                    <Parameters />
-                  </DbCommand>
-                </SelectCommand>
-              </DbSource>
               <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="FillByCalculatingClient" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetDataByCalculatingClient" GeneratorSourceName="FillByCalculatingClient" GetMethodModifier="Public" GetMethodName="GetDataByCalculatingClient" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataByCalculatingClient" UserSourceName="FillByCalculatingClient">
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (JobState = 'calculating' OR JobState = 'abort' OR JobState = 'requestSnapshot ' OR JobState = 'requestSnapshotSent') AND (ResourceId = @ResourceId)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobState = 'calculating' OR JobState = 'abort' OR JobState = 'requestSnapshot ' OR JobState = 'requestSnapshotSent') AND (ResourceId = @ResourceId)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="true" AutogeneratedName="ResourceId" ColumnName="ResourceId" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -528,5 +482,5 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (ResourceId = @ResourceId)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (ResourceId = @ResourceId)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="true" AutogeneratedName="ResourceId" ColumnName="ResourceId" DataSourceName="[HeuristicLab.Hive].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -538,5 +492,5 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (JobId = @Id)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobId = @Id)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="false" AutogeneratedName="Id" ColumnName="JobId" DataSourceName="[HeuristicLab.Hive].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@Id" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -548,5 +502,5 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (JobId = @Id)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobId = @Id)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="false" AutogeneratedName="Id" ColumnName="JobId" DataSourceName="[HeuristicLab.Hive].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@Id" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -558,5 +512,5 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (ParentJobId = @Id)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (ParentJobId = @Id)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="true" AutogeneratedName="Id" ColumnName="ParentJobId" DataSourceName="[HeuristicLab.Hive].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@Id" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="ParentJobId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -568,5 +522,5 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (ProjectId = @ProjectId)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (ProjectId = @ProjectId)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="true" AutogeneratedName="ProjectId" ColumnName="ProjectId" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@ProjectId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="ProjectId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -578,5 +532,5 @@
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (JobState = @State)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobState = @State)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="true" AutogeneratedName="State" ColumnName="JobState" DataSourceName="[HeuristicLab.Hive].dbo.Job" DataTypeServer="varchar(18)" DbType="AnsiString" Direction="Input" ParameterName="@State" Precision="0" ProviderType="VarChar" Scale="0" Size="18" SourceColumn="JobState" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -585,8 +539,21 @@
                 </SelectCommand>
               </DbSource>
+              <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="FillByStateCoresMemoryResource" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetDataByStateCoresMemoryResource" GeneratorSourceName="FillByStateCoresMemoryResource" GetMethodModifier="Public" GetMethodName="GetDataByStateCoresMemoryResource" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataByStateCoresMemoryResource" UserSourceName="FillByStateCoresMemoryResource">
+                <SelectCommand>
+                  <DbCommand CommandType="Text" ModifiedByUser="true">
+                    <CommandText>WITH ClientGroups(ClientGroupId) AS (SELECT ClientGroupId FROM ClientGroup_Resource WHERE (ResourceId = @ResourceId) UNION ALL SELECT g.ClientGroupId FROM ClientGroup_Resource AS g INNER JOIN ClientGroups AS gr ON gr.ClientGroupId = g.ResourceId) SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (JobState = @State) AND (CoresNeeded &lt;= @CoresNeeded) AND (MemoryNeeded &lt;= @MemoryNeeded) AND (NOT EXISTS (SELECT ResourceId, JobId FROM AssignedResources WHERE (JobId = Job.JobId))) OR (JobState = @State) AND (CoresNeeded &lt;= @CoresNeeded) AND (MemoryNeeded &lt;= @MemoryNeeded) AND EXISTS (SELECT ResourceId, JobId FROM AssignedResources AS AssignedResources_2 WHERE (JobId = Job.JobId) AND (ResourceId = @ResourceId)) OR (JobState = @State) AND (CoresNeeded &lt;= @CoresNeeded) AND (MemoryNeeded &lt;= @MemoryNeeded) AND EXISTS (SELECT ResourceId, JobId FROM AssignedResources AS AssignedResources_1 WHERE (JobId = Job.JobId) AND (ResourceId IN (SELECT ClientGroupId FROM ClientGroups AS ClientGroups_1))) ORDER BY Priority</CommandText>
+                    <Parameters>
+                      <Parameter AllowDbNull="true" AutogeneratedName="State" ColumnName="JobState" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="varchar(MAX)" DbType="AnsiString" Direction="Input" ParameterName="@State" Precision="0" ProviderType="VarChar" Scale="0" Size="2147483647" SourceColumn="JobState" SourceColumnNullMapping="false" SourceVersion="Current" />
+                      <Parameter AllowDbNull="true" AutogeneratedName="CoresNeeded" ColumnName="CoresNeeded" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@CoresNeeded" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="CoresNeeded" SourceColumnNullMapping="false" SourceVersion="Current" />
+                      <Parameter AllowDbNull="true" AutogeneratedName="MemoryNeeded" ColumnName="MemoryNeeded" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="int" DbType="Int32" Direction="Input" ParameterName="@MemoryNeeded" Precision="0" ProviderType="Int" Scale="0" Size="4" SourceColumn="MemoryNeeded" SourceColumnNullMapping="false" SourceVersion="Current" />
+                      <Parameter AllowDbNull="false" AutogeneratedName="ResourceId" ColumnName="ResourceId" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@ResourceId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="ResourceId" SourceColumnNullMapping="false" SourceVersion="Current" />
+                    </Parameters>
+                  </DbCommand>
+                </SelectCommand>
+              </DbSource>
               <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" FillMethodModifier="Public" FillMethodName="FillByUser" GenerateMethods="Both" GenerateShortCommands="true" GeneratorGetMethodName="GetDataByUser" GeneratorSourceName="FillByUser" GetMethodModifier="Public" GetMethodName="GetDataByUser" QueryType="Rowset" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataByUser" UserSourceName="FillByUser">
                 <SelectCommand>
                   <DbCommand CommandType="Text" ModifiedByUser="true">
-                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, SerializedJob, UserId FROM Job WHERE (UserId = @UserId)</CommandText>
+                    <CommandText>SELECT CoresNeeded, DateCalculated, DateCreated, JobId, JobState, MemoryNeeded, ParentJobId, Percentage, Priority, ProjectId, ResourceId, UserId FROM Job WHERE (UserId = @UserId)</CommandText>
                     <Parameters>
                       <Parameter AllowDbNull="true" AutogeneratedName="UserId" ColumnName="UserId" DataSourceName="[HeuristicLab.Hive].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@UserId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="UserId" SourceColumnNullMapping="false" SourceVersion="Current" />
@@ -594,4 +561,25 @@
                   </DbCommand>
                 </SelectCommand>
+              </DbSource>
+              <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="[HeuristicLab.Hive_DBTesting].dbo.Job" DbObjectType="Table" GenerateShortCommands="true" GeneratorSourceName="GetSerializedJobById" Modifier="Public" Name="GetSerializedJobById" QueryType="Scalar" ScalarCallRetval="System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy" UserSourceName="GetSerializedJobById">
+                <SelectCommand>
+                  <DbCommand CommandType="Text" ModifiedByUser="true">
+                    <CommandText>SELECT SerializedJob FROM Job WHERE JobId = @JobId</CommandText>
+                    <Parameters>
+                      <Parameter AllowDbNull="false" AutogeneratedName="JobId" ColumnName="JobId" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@JobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Current" />
+                    </Parameters>
+                  </DbCommand>
+                </SelectCommand>
+              </DbSource>
+              <DbSource ConnectionRef="HiveServerConnectionString (Settings)" DbObjectName="" DbObjectType="Unknown" GenerateShortCommands="true" GeneratorSourceName="UpdateSerializedJob" Modifier="Public" Name="UpdateSerializedJob" QueryType="NoData" ScalarCallRetval="System.Object, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" UseOptimisticConcurrency="true" UserGetMethodName="GetDataBy1" UserSourceName="UpdateSerializedJob">
+                <UpdateCommand>
+                  <DbCommand CommandType="Text" ModifiedByUser="true">
+                    <CommandText>UPDATE Job SET SerializedJob = @SerializedJob WHERE JobId = @JobId</CommandText>
+                    <Parameters>
+                      <Parameter AllowDbNull="true" AutogeneratedName="SerializedJob" ColumnName="SerializedJob" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="varbinary(MAX)" DbType="Binary" Direction="Input" ParameterName="@SerializedJob" Precision="0" ProviderType="VarBinary" Scale="0" Size="2147483647" SourceColumn="SerializedJob" SourceColumnNullMapping="false" SourceVersion="Current" />
+                      <Parameter AllowDbNull="false" AutogeneratedName="JobId" ColumnName="JobId" DataSourceName="[HeuristicLab.Hive_DBTesting].dbo.Job" DataTypeServer="uniqueidentifier" DbType="Guid" Direction="Input" ParameterName="@JobId" Precision="0" ProviderType="UniqueIdentifier" Scale="0" Size="16" SourceColumn="JobId" SourceColumnNullMapping="false" SourceVersion="Original" />
+                    </Parameters>
+                  </DbCommand>
+                </UpdateCommand>
               </DbSource>
             </Sources>
@@ -1040,9 +1028,9 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
-              <xs:element name="CPUSpeed" msprop:Generator_UserColumnName="CPUSpeed" msprop:Generator_ColumnVarNameInTable="columnCPUSpeed" msprop:Generator_ColumnPropNameInRow="CPUSpeed" msprop:Generator_ColumnPropNameInTable="CPUSpeedColumn" type="xs:int" minOccurs="0" />
-              <xs:element name="Memory" msprop:Generator_UserColumnName="Memory" msprop:Generator_ColumnVarNameInTable="columnMemory" msprop:Generator_ColumnPropNameInRow="Memory" msprop:Generator_ColumnPropNameInTable="MemoryColumn" type="xs:int" minOccurs="0" />
-              <xs:element name="Login" msprop:Generator_UserColumnName="Login" msprop:Generator_ColumnVarNameInTable="columnLogin" msprop:Generator_ColumnPropNameInRow="Login" msprop:Generator_ColumnPropNameInTable="LoginColumn" type="xs:dateTime" minOccurs="0" />
-              <xs:element name="Status" msprop:Generator_UserColumnName="Status" msprop:Generator_ColumnVarNameInTable="columnStatus" msprop:Generator_ColumnPropNameInRow="Status" msprop:Generator_ColumnPropNameInTable="StatusColumn" minOccurs="0">
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
+              <xs:element name="CPUSpeed" msprop:Generator_UserColumnName="CPUSpeed" msprop:Generator_ColumnPropNameInRow="CPUSpeed" msprop:Generator_ColumnVarNameInTable="columnCPUSpeed" msprop:Generator_ColumnPropNameInTable="CPUSpeedColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="Memory" msprop:Generator_UserColumnName="Memory" msprop:Generator_ColumnPropNameInRow="Memory" msprop:Generator_ColumnVarNameInTable="columnMemory" msprop:Generator_ColumnPropNameInTable="MemoryColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="Login" msprop:Generator_UserColumnName="Login" msprop:Generator_ColumnPropNameInRow="Login" msprop:Generator_ColumnVarNameInTable="columnLogin" msprop:Generator_ColumnPropNameInTable="LoginColumn" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="Status" msprop:Generator_UserColumnName="Status" msprop:Generator_ColumnPropNameInRow="Status" msprop:Generator_ColumnVarNameInTable="columnStatus" msprop:Generator_ColumnPropNameInTable="StatusColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1051,8 +1039,8 @@
                 </xs:simpleType>
               </xs:element>
-              <xs:element name="ClientConfigId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ClientConfigId" msprop:Generator_ColumnVarNameInTable="columnClientConfigId" msprop:Generator_ColumnPropNameInRow="ClientConfigId" msprop:Generator_ColumnPropNameInTable="ClientConfigIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="NumberOfCores" msprop:Generator_UserColumnName="NumberOfCores" msprop:Generator_ColumnVarNameInTable="columnNumberOfCores" msprop:Generator_ColumnPropNameInRow="NumberOfCores" msprop:Generator_ColumnPropNameInTable="NumberOfCoresColumn" type="xs:int" minOccurs="0" />
-              <xs:element name="NumberOfFreeCores" msprop:Generator_UserColumnName="NumberOfFreeCores" msprop:Generator_ColumnPropNameInRow="NumberOfFreeCores" msprop:Generator_ColumnVarNameInTable="columnNumberOfFreeCores" msprop:Generator_ColumnPropNameInTable="NumberOfFreeCoresColumn" type="xs:int" minOccurs="0" />
-              <xs:element name="FreeMemory" msprop:Generator_UserColumnName="FreeMemory" msprop:Generator_ColumnPropNameInRow="FreeMemory" msprop:Generator_ColumnVarNameInTable="columnFreeMemory" msprop:Generator_ColumnPropNameInTable="FreeMemoryColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="ClientConfigId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ClientConfigId" msprop:Generator_ColumnPropNameInRow="ClientConfigId" msprop:Generator_ColumnVarNameInTable="columnClientConfigId" msprop:Generator_ColumnPropNameInTable="ClientConfigIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="NumberOfCores" msprop:Generator_UserColumnName="NumberOfCores" msprop:Generator_ColumnPropNameInRow="NumberOfCores" msprop:Generator_ColumnVarNameInTable="columnNumberOfCores" msprop:Generator_ColumnPropNameInTable="NumberOfCoresColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="NumberOfFreeCores" msprop:Generator_UserColumnName="NumberOfFreeCores" msprop:Generator_ColumnVarNameInTable="columnNumberOfFreeCores" msprop:Generator_ColumnPropNameInRow="NumberOfFreeCores" msprop:Generator_ColumnPropNameInTable="NumberOfFreeCoresColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="FreeMemory" msprop:Generator_UserColumnName="FreeMemory" msprop:Generator_ColumnVarNameInTable="columnFreeMemory" msprop:Generator_ColumnPropNameInRow="FreeMemory" msprop:Generator_ColumnPropNameInTable="FreeMemoryColumn" type="xs:int" minOccurs="0" />
             </xs:sequence>
           </xs:complexType>
@@ -1061,6 +1049,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
-              <xs:element name="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" minOccurs="0">
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
+              <xs:element name="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInTable="NameColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1075,5 +1063,5 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
             </xs:sequence>
           </xs:complexType>
@@ -1082,6 +1070,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ClientGroupId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ClientGroupId" msprop:Generator_ColumnPropNameInRow="ClientGroupId" msprop:Generator_ColumnVarNameInTable="columnClientGroupId" msprop:Generator_ColumnPropNameInTable="ClientGroupIdColumn" type="xs:string" />
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
+              <xs:element name="ClientGroupId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ClientGroupId" msprop:Generator_ColumnVarNameInTable="columnClientGroupId" msprop:Generator_ColumnPropNameInRow="ClientGroupId" msprop:Generator_ColumnPropNameInTable="ClientGroupIdColumn" type="xs:string" />
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
             </xs:sequence>
           </xs:complexType>
@@ -1090,7 +1078,7 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" />
-              <xs:element name="ParentJobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ParentJobId" msprop:Generator_ColumnPropNameInRow="ParentJobId" msprop:Generator_ColumnVarNameInTable="columnParentJobId" msprop:Generator_ColumnPropNameInTable="ParentJobIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="JobState" msprop:Generator_UserColumnName="JobState" msprop:Generator_ColumnPropNameInRow="JobState" msprop:Generator_ColumnVarNameInTable="columnJobState" msprop:Generator_ColumnPropNameInTable="JobStateColumn" minOccurs="0">
+              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" />
+              <xs:element name="ParentJobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ParentJobId" msprop:Generator_ColumnVarNameInTable="columnParentJobId" msprop:Generator_ColumnPropNameInRow="ParentJobId" msprop:Generator_ColumnPropNameInTable="ParentJobIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="JobState" msprop:Generator_UserColumnName="JobState" msprop:Generator_ColumnVarNameInTable="columnJobState" msprop:Generator_ColumnPropNameInRow="JobState" msprop:Generator_ColumnPropNameInTable="JobStateColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1099,14 +1087,13 @@
                 </xs:simpleType>
               </xs:element>
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="Percentage" msprop:Generator_UserColumnName="Percentage" msprop:Generator_ColumnPropNameInRow="Percentage" msprop:Generator_ColumnVarNameInTable="columnPercentage" msprop:Generator_ColumnPropNameInTable="PercentageColumn" type="xs:double" minOccurs="0" />
-              <xs:element name="SerializedJob" msprop:Generator_UserColumnName="SerializedJob" msprop:Generator_ColumnPropNameInRow="SerializedJob" msprop:Generator_ColumnVarNameInTable="columnSerializedJob" msprop:Generator_ColumnPropNameInTable="SerializedJobColumn" type="xs:base64Binary" minOccurs="0" />
-              <xs:element name="DateCreated" msprop:Generator_UserColumnName="DateCreated" msprop:Generator_ColumnPropNameInRow="DateCreated" msprop:Generator_ColumnVarNameInTable="columnDateCreated" msprop:Generator_ColumnPropNameInTable="DateCreatedColumn" type="xs:dateTime" minOccurs="0" />
-              <xs:element name="DateCalculated" msprop:Generator_UserColumnName="DateCalculated" msprop:Generator_ColumnPropNameInRow="DateCalculated" msprop:Generator_ColumnVarNameInTable="columnDateCalculated" msprop:Generator_ColumnPropNameInTable="DateCalculatedColumn" type="xs:dateTime" minOccurs="0" />
-              <xs:element name="Priority" msprop:Generator_UserColumnName="Priority" msprop:Generator_ColumnPropNameInRow="Priority" msprop:Generator_ColumnVarNameInTable="columnPriority" msprop:Generator_ColumnPropNameInTable="PriorityColumn" type="xs:int" minOccurs="0" />
-              <xs:element name="ProjectId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ProjectId" msprop:Generator_ColumnPropNameInRow="ProjectId" msprop:Generator_ColumnVarNameInTable="columnProjectId" msprop:Generator_ColumnPropNameInTable="ProjectIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="UserId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="UserId" msprop:Generator_ColumnPropNameInRow="UserId" msprop:Generator_ColumnVarNameInTable="columnUserId" msprop:Generator_ColumnPropNameInTable="UserIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="CoresNeeded" msprop:Generator_UserColumnName="CoresNeeded" msprop:Generator_ColumnPropNameInRow="CoresNeeded" msprop:Generator_ColumnVarNameInTable="columnCoresNeeded" msprop:Generator_ColumnPropNameInTable="CoresNeededColumn" type="xs:int" minOccurs="0" />
-              <xs:element name="MemoryNeeded" msprop:Generator_UserColumnName="MemoryNeeded" msprop:Generator_ColumnPropNameInRow="MemoryNeeded" msprop:Generator_ColumnVarNameInTable="columnMemoryNeeded" msprop:Generator_ColumnPropNameInTable="MemoryNeededColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="Percentage" msprop:Generator_UserColumnName="Percentage" msprop:Generator_ColumnVarNameInTable="columnPercentage" msprop:Generator_ColumnPropNameInRow="Percentage" msprop:Generator_ColumnPropNameInTable="PercentageColumn" type="xs:double" minOccurs="0" />
+              <xs:element name="DateCreated" msprop:Generator_UserColumnName="DateCreated" msprop:Generator_ColumnVarNameInTable="columnDateCreated" msprop:Generator_ColumnPropNameInRow="DateCreated" msprop:Generator_ColumnPropNameInTable="DateCreatedColumn" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="DateCalculated" msprop:Generator_UserColumnName="DateCalculated" msprop:Generator_ColumnVarNameInTable="columnDateCalculated" msprop:Generator_ColumnPropNameInRow="DateCalculated" msprop:Generator_ColumnPropNameInTable="DateCalculatedColumn" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="Priority" msprop:Generator_UserColumnName="Priority" msprop:Generator_ColumnVarNameInTable="columnPriority" msprop:Generator_ColumnPropNameInRow="Priority" msprop:Generator_ColumnPropNameInTable="PriorityColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="ProjectId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ProjectId" msprop:Generator_ColumnVarNameInTable="columnProjectId" msprop:Generator_ColumnPropNameInRow="ProjectId" msprop:Generator_ColumnPropNameInTable="ProjectIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="UserId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="UserId" msprop:Generator_ColumnVarNameInTable="columnUserId" msprop:Generator_ColumnPropNameInRow="UserId" msprop:Generator_ColumnPropNameInTable="UserIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="CoresNeeded" msprop:Generator_UserColumnName="CoresNeeded" msprop:Generator_ColumnVarNameInTable="columnCoresNeeded" msprop:Generator_ColumnPropNameInRow="CoresNeeded" msprop:Generator_ColumnPropNameInTable="CoresNeededColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="MemoryNeeded" msprop:Generator_UserColumnName="MemoryNeeded" msprop:Generator_ColumnVarNameInTable="columnMemoryNeeded" msprop:Generator_ColumnPropNameInRow="MemoryNeeded" msprop:Generator_ColumnPropNameInTable="MemoryNeededColumn" type="xs:int" minOccurs="0" />
             </xs:sequence>
           </xs:complexType>
@@ -1115,8 +1102,8 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="JobResultId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobResultId" msprop:Generator_ColumnPropNameInRow="JobResultId" msprop:Generator_ColumnVarNameInTable="columnJobResultId" msprop:Generator_ColumnPropNameInTable="JobResultIdColumn" type="xs:string" />
-              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="JobResult" msprop:Generator_UserColumnName="JobResult" msprop:Generator_ColumnPropNameInRow="JobResult" msprop:Generator_ColumnVarNameInTable="columnJobResult" msprop:Generator_ColumnPropNameInTable="JobResultColumn" type="xs:base64Binary" minOccurs="0" />
-              <xs:element name="Message" msprop:Generator_UserColumnName="Message" msprop:Generator_ColumnPropNameInRow="Message" msprop:Generator_ColumnVarNameInTable="columnMessage" msprop:Generator_ColumnPropNameInTable="MessageColumn" minOccurs="0">
+              <xs:element name="JobResultId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobResultId" msprop:Generator_ColumnVarNameInTable="columnJobResultId" msprop:Generator_ColumnPropNameInRow="JobResultId" msprop:Generator_ColumnPropNameInTable="JobResultIdColumn" type="xs:string" />
+              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="JobResult" msprop:Generator_UserColumnName="JobResult" msprop:Generator_ColumnVarNameInTable="columnJobResult" msprop:Generator_ColumnPropNameInRow="JobResult" msprop:Generator_ColumnPropNameInTable="JobResultColumn" type="xs:base64Binary" minOccurs="0" />
+              <xs:element name="Message" msprop:Generator_UserColumnName="Message" msprop:Generator_ColumnVarNameInTable="columnMessage" msprop:Generator_ColumnPropNameInRow="Message" msprop:Generator_ColumnPropNameInTable="MessageColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1125,7 +1112,7 @@
                 </xs:simpleType>
               </xs:element>
-              <xs:element name="Percentage" msprop:Generator_UserColumnName="Percentage" msprop:Generator_ColumnPropNameInRow="Percentage" msprop:Generator_ColumnVarNameInTable="columnPercentage" msprop:Generator_ColumnPropNameInTable="PercentageColumn" type="xs:double" minOccurs="0" />
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" minOccurs="0" />
-              <xs:element name="DateFinished" msprop:Generator_UserColumnName="DateFinished" msprop:Generator_ColumnPropNameInRow="DateFinished" msprop:Generator_ColumnVarNameInTable="columnDateFinished" msprop:Generator_ColumnPropNameInTable="DateFinishedColumn" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="Percentage" msprop:Generator_UserColumnName="Percentage" msprop:Generator_ColumnVarNameInTable="columnPercentage" msprop:Generator_ColumnPropNameInRow="Percentage" msprop:Generator_ColumnPropNameInTable="PercentageColumn" type="xs:double" minOccurs="0" />
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" minOccurs="0" />
+              <xs:element name="DateFinished" msprop:Generator_UserColumnName="DateFinished" msprop:Generator_ColumnVarNameInTable="columnDateFinished" msprop:Generator_ColumnPropNameInRow="DateFinished" msprop:Generator_ColumnPropNameInTable="DateFinishedColumn" type="xs:dateTime" minOccurs="0" />
             </xs:sequence>
           </xs:complexType>
@@ -1134,6 +1121,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" />
-              <xs:element name="PluginId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="PluginId" msprop:Generator_ColumnPropNameInRow="PluginId" msprop:Generator_ColumnVarNameInTable="columnPluginId" msprop:Generator_ColumnPropNameInTable="PluginIdColumn" type="xs:string" />
+              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" />
+              <xs:element name="PluginId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="PluginId" msprop:Generator_ColumnVarNameInTable="columnPluginId" msprop:Generator_ColumnPropNameInRow="PluginId" msprop:Generator_ColumnPropNameInTable="PluginIdColumn" type="xs:string" />
             </xs:sequence>
           </xs:complexType>
@@ -1142,6 +1129,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="PluginId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="PluginId" msprop:Generator_ColumnVarNameInTable="columnPluginId" msprop:Generator_ColumnPropNameInRow="PluginId" msprop:Generator_ColumnPropNameInTable="PluginIdColumn" type="xs:string" />
-              <xs:element name="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" minOccurs="0">
+              <xs:element name="PluginId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="PluginId" msprop:Generator_ColumnPropNameInRow="PluginId" msprop:Generator_ColumnVarNameInTable="columnPluginId" msprop:Generator_ColumnPropNameInTable="PluginIdColumn" type="xs:string" />
+              <xs:element name="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInTable="NameColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1150,5 +1137,5 @@
                 </xs:simpleType>
               </xs:element>
-              <xs:element name="Version" msprop:Generator_UserColumnName="Version" msprop:Generator_ColumnVarNameInTable="columnVersion" msprop:Generator_ColumnPropNameInRow="Version" msprop:Generator_ColumnPropNameInTable="VersionColumn" minOccurs="0">
+              <xs:element name="Version" msprop:Generator_UserColumnName="Version" msprop:Generator_ColumnPropNameInRow="Version" msprop:Generator_ColumnVarNameInTable="columnVersion" msprop:Generator_ColumnPropNameInTable="VersionColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1157,5 +1144,5 @@
                 </xs:simpleType>
               </xs:element>
-              <xs:element name="BuildDate" msprop:Generator_UserColumnName="BuildDate" msprop:Generator_ColumnVarNameInTable="columnBuildDate" msprop:Generator_ColumnPropNameInRow="BuildDate" msprop:Generator_ColumnPropNameInTable="BuildDateColumn" type="xs:dateTime" minOccurs="0" />
+              <xs:element name="BuildDate" msprop:Generator_UserColumnName="BuildDate" msprop:Generator_ColumnPropNameInRow="BuildDate" msprop:Generator_ColumnVarNameInTable="columnBuildDate" msprop:Generator_ColumnPropNameInTable="BuildDateColumn" type="xs:dateTime" minOccurs="0" />
             </xs:sequence>
           </xs:complexType>
@@ -1164,6 +1151,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ProjectId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ProjectId" msprop:Generator_ColumnPropNameInRow="ProjectId" msprop:Generator_ColumnVarNameInTable="columnProjectId" msprop:Generator_ColumnPropNameInTable="ProjectIdColumn" type="xs:string" />
-              <xs:element name="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInTable="NameColumn" minOccurs="0">
+              <xs:element name="ProjectId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ProjectId" msprop:Generator_ColumnVarNameInTable="columnProjectId" msprop:Generator_ColumnPropNameInRow="ProjectId" msprop:Generator_ColumnPropNameInTable="ProjectIdColumn" type="xs:string" />
+              <xs:element name="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1178,6 +1165,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
-              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" />
+              <xs:element name="ResourceId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ResourceId" msprop:Generator_ColumnPropNameInRow="ResourceId" msprop:Generator_ColumnVarNameInTable="columnResourceId" msprop:Generator_ColumnPropNameInTable="ResourceIdColumn" type="xs:string" />
+              <xs:element name="JobId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="JobId" msprop:Generator_ColumnPropNameInRow="JobId" msprop:Generator_ColumnVarNameInTable="columnJobId" msprop:Generator_ColumnPropNameInTable="JobIdColumn" type="xs:string" />
             </xs:sequence>
           </xs:complexType>
@@ -1186,6 +1173,6 @@
           <xs:complexType>
             <xs:sequence>
-              <xs:element name="ClientConfigId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ClientConfigId" msprop:Generator_ColumnPropNameInRow="ClientConfigId" msprop:Generator_ColumnVarNameInTable="columnClientConfigId" msprop:Generator_ColumnPropNameInTable="ClientConfigIdColumn" type="xs:string" />
-              <xs:element name="UpDownTimeCalendar" msprop:Generator_UserColumnName="UpDownTimeCalendar" msprop:Generator_ColumnPropNameInRow="UpDownTimeCalendar" msprop:Generator_ColumnVarNameInTable="columnUpDownTimeCalendar" msprop:Generator_ColumnPropNameInTable="UpDownTimeCalendarColumn" minOccurs="0">
+              <xs:element name="ClientConfigId" msdata:DataType="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" msprop:Generator_UserColumnName="ClientConfigId" msprop:Generator_ColumnVarNameInTable="columnClientConfigId" msprop:Generator_ColumnPropNameInRow="ClientConfigId" msprop:Generator_ColumnPropNameInTable="ClientConfigIdColumn" type="xs:string" />
+              <xs:element name="UpDownTimeCalendar" msprop:Generator_UserColumnName="UpDownTimeCalendar" msprop:Generator_ColumnVarNameInTable="columnUpDownTimeCalendar" msprop:Generator_ColumnPropNameInRow="UpDownTimeCalendar" msprop:Generator_ColumnPropNameInTable="UpDownTimeCalendarColumn" minOccurs="0">
                 <xs:simpleType>
                   <xs:restriction base="xs:string">
@@ -1194,5 +1181,5 @@
                 </xs:simpleType>
               </xs:element>
-              <xs:element name="HeartBeatIntervall" msprop:Generator_UserColumnName="HeartBeatIntervall" msprop:Generator_ColumnPropNameInRow="HeartBeatIntervall" msprop:Generator_ColumnVarNameInTable="columnHeartBeatIntervall" msprop:Generator_ColumnPropNameInTable="HeartBeatIntervallColumn" type="xs:int" minOccurs="0" />
+              <xs:element name="HeartBeatIntervall" msprop:Generator_UserColumnName="HeartBeatIntervall" msprop:Generator_ColumnVarNameInTable="columnHeartBeatIntervall" msprop:Generator_ColumnPropNameInRow="HeartBeatIntervall" msprop:Generator_ColumnPropNameInTable="HeartBeatIntervallColumn" type="xs:int" minOccurs="0" />
             </xs:sequence>
           </xs:complexType>
Index: /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.xss
===================================================================
--- /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.xss	(revision 2082)
+++ /trunk/sources/HeuristicLab.Hive.Server.ADODataAccess/3.2/dsHiveServer.xss	(revision 2083)
@@ -5,5 +5,5 @@
      the code is regenerated.
 </autogenerated>-->
-<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-600" ViewPortY="367" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
+<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-649" ViewPortY="443" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
   <Shapes>
     <Shape ID="DesignTable:Client" ZOrder="24" X="-36" Y="593" Height="275" Width="229" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="177" />
@@ -11,5 +11,5 @@
     <Shape ID="DesignTable:ClientGroup" ZOrder="18" X="346" Y="589" Height="123" Width="298" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="42" />
     <Shape ID="DesignTable:ClientGroup_Resource" ZOrder="23" X="197" Y="766" Height="156" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="58" />
-    <Shape ID="DesignTable:Job" ZOrder="1" X="-466" Y="444" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="22" OldDataTableHeight="0" SplitterPosition="228" />
+    <Shape ID="DesignTable:Job" ZOrder="1" X="-466" Y="443" Height="343" Width="300" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="22" OldDataTableHeight="0" SplitterPosition="228" />
     <Shape ID="DesignTable:JobResult" ZOrder="22" X="108" Y="76" Height="224" Width="197" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="143" />
     <Shape ID="DesignTable:RequiredPlugins" ZOrder="8" X="-699" Y="259" Height="122" Width="243" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="58" />
@@ -60,5 +60,5 @@
         <Point>
           <X>-325</X>
-          <Y>787</Y>
+          <Y>786</Y>
         </Point>
       </RoutePoints>
@@ -68,5 +68,5 @@
         <Point>
           <X>-333</X>
-          <Y>444</Y>
+          <Y>443</Y>
         </Point>
         <Point>
@@ -84,5 +84,5 @@
         <Point>
           <X>-458</X>
-          <Y>444</Y>
+          <Y>443</Y>
         </Point>
         <Point>
@@ -164,9 +164,9 @@
         <Point>
           <X>-78</X>
-          <Y>550</Y>
+          <Y>549</Y>
         </Point>
         <Point>
           <X>-166</X>
-          <Y>550</Y>
+          <Y>549</Y>
         </Point>
       </RoutePoints>
@@ -192,5 +192,5 @@
         <Point>
           <X>-435</X>
-          <Y>444</Y>
+          <Y>443</Y>
         </Point>
         <Point>
@@ -216,21 +216,21 @@
         <Point>
           <X>-466</X>
-          <Y>461</Y>
+          <Y>460</Y>
         </Point>
         <Point>
           <X>-496</X>
-          <Y>461</Y>
+          <Y>460</Y>
         </Point>
         <Point>
           <X>-496</X>
-          <Y>414</Y>
+          <Y>413</Y>
         </Point>
         <Point>
           <X>-449</X>
-          <Y>414</Y>
+          <Y>413</Y>
         </Point>
         <Point>
           <X>-449</X>
-          <Y>444</Y>
+          <Y>443</Y>
         </Point>
       </RoutePoints>
