Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/02/15 13:16:18 (10 years ago)
Author:
gkronber
Message:

#2434 merged r12878:12927 from trunk to branch (hive changes)

Location:
branches/crossvalidation-2434
Files:
7 deleted
8 edited
5 copied

Legend:

Unmodified
Added
Removed
  • branches/crossvalidation-2434

  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess

  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess/3.3/HeuristicLab.Services.Hive.DataAccess-3.3.csproj

    r11623 r12931  
    104104  <ItemGroup>
    105105    <None Include="Plugin.cs.frame" />
     106    <Compile Include="Daos\AssignedResourceDao.cs" />
     107    <Compile Include="Daos\DowntimeDao.cs" />
     108    <Compile Include="Daos\GenericDao.cs" />
     109    <Compile Include="Daos\HiveStatistics\DimClientDao.cs" />
     110    <Compile Include="Daos\HiveStatistics\DimJobDao.cs" />
     111    <Compile Include="Daos\HiveStatistics\DimTimeDao.cs" />
     112    <Compile Include="Daos\HiveStatistics\DimUserDao.cs" />
     113    <Compile Include="Daos\HiveStatistics\FactClientInfoDao.cs" />
     114    <Compile Include="Daos\HiveStatistics\FactTaskDao.cs" />
     115    <Compile Include="Daos\JobDao.cs" />
     116    <Compile Include="Daos\JobPermissionDao.cs" />
     117    <Compile Include="Daos\LifecycleDao.cs" />
     118    <Compile Include="Daos\PluginDao.cs" />
     119    <Compile Include="Daos\PluginDataDao.cs" />
     120    <Compile Include="Daos\RequiredPluginDao.cs" />
     121    <Compile Include="Daos\ResourceDao.cs" />
     122    <Compile Include="Daos\ResourcePermissionDao.cs" />
     123    <Compile Include="Daos\SlaveDao.cs" />
     124    <Compile Include="Daos\SlaveGroupDao.cs" />
     125    <Compile Include="Daos\StateLogDao.cs" />
     126    <Compile Include="Daos\TaskDao.cs" />
     127    <Compile Include="Daos\TaskDataDao.cs" />
     128    <Compile Include="Daos\UserPriorityDao.cs" />
     129    <Compile Include="Data\TableInformation.cs" />
     130    <Compile Include="Interfaces\IGenericDao.cs" />
    106131    <Compile Include="Enums\Command.cs" />
    107132    <Compile Include="Enums\DowntimeType.cs" />
    108133    <Compile Include="Enums\CpuArchitecture.cs" />
     134    <Compile Include="Interfaces\IPersistenceManager.cs" />
     135    <Compile Include="Manager\PersistenceManager.cs" />
    109136    <Compile Include="Plugin.cs" />
    110137    <Compile Include="HiveDataContext.cs">
     
    116143      <DependentUpon>HiveDataContext.dbml</DependentUpon>
    117144    </Compile>
    118     <Compile Include="ITransactionManager.cs" />
    119145    <Compile Include="Enums\TaskState.cs" />
    120146    <Compile Include="Logger.cs" />
     
    128154    </Compile>
    129155    <Compile Include="Enums\SlaveState.cs" />
    130     <Compile Include="TransactionManager.cs" />
    131156  </ItemGroup>
    132157  <ItemGroup>
     
    155180  <ItemGroup>
    156181    <Content Include="SQL Scripts\Initialize Hive Database.sql" />
    157     <Content Include="SQL Scripts\Migrate to Filestream.sql" />
    158182    <Content Include="SQL Scripts\Prepare Hive Database.sql" />
    159183  </ItemGroup>
     184  <ItemGroup />
    160185  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
    161186  <PropertyGroup>
  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml

    r9665 r12931  
    7676      <Column Name="Command" Type="global::HeuristicLab.Services.Hive.DataAccess.Command?" DbType="VarChar(30)" CanBeNull="true" />
    7777      <Column Name="JobId" Storage="_HiveExperimentId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
    78       <Column Name="IsPrivileged" Type="System.Boolean" DbType="Bit" CanBeNull="false" />
    7978      <Association Name="Task_AssignedResource" Member="AssignedResources" ThisKey="TaskId" OtherKey="TaskId" Type="AssignedResource" />
    8079      <Association Name="Task_RequiredPlugin" Member="RequiredPlugins" ThisKey="TaskId" OtherKey="TaskId" Type="RequiredPlugin" />
     
    156155    </Type>
    157156  </Table>
    158   <Table Name="" Member="DeletedJobStatistics">
    159     <Type Name="DeletedJobStatistics">
    160       <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
    161       <Column Name="ExecutionTimeS" Storage="_ExecutionTime" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    162       <Column Name="ExecutionTimeSFinishedJobs" Storage="_ExecutionTimeFinishedJobs" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    163       <Column Name="StartToEndTimeS" Storage="_StartToEndTime" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    164       <Column Name="DeletedJobStatisticsId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    165     </Type>
    166   </Table>
    167   <Table Name="" Member="UserStatistics">
    168     <Type Name="UserStatistics">
    169       <Column Name="StatisticsId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    170       <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    171       <Column Name="ExecutionTimeMs" Storage="_ExecutionTime" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    172       <Column Name="UsedCores" Storage="_CoresUsed" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    173       <Column Name="ExecutionTimeMsFinishedJobs" Storage="_ExecutionTimeFinishedJobs" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    174       <Column Name="StartToEndTimeMs" Storage="_StartToEndTime" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    175       <Association Name="Statistics_UserStatistics" Member="Statistics" ThisKey="StatisticsId" OtherKey="StatisticsId" Type="Statistics" IsForeignKey="true" />
    176     </Type>
    177   </Table>
    178   <Table Name="" Member="SlaveStatistics">
    179     <Type Name="SlaveStatistics">
    180       <Column Name="StatisticsId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    181       <Column Name="SlaveId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
    182       <Column Name="Cores" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    183       <Column Name="FreeCores" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    184       <Column Name="CpuUtilization" Type="System.Double" DbType="float NOT NULL" CanBeNull="false" />
    185       <Column Name="Memory" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    186       <Column Name="FreeMemory" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
    187       <Association Name="Statistics_SlaveStatistics" Member="Statistics" ThisKey="StatisticsId" OtherKey="StatisticsId" Type="Statistics" IsForeignKey="true" />
    188     </Type>
    189   </Table>
    190   <Table Name="" Member="Statistics">
    191     <Type Name="Statistics">
    192       <Column Name="StatisticsId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
    193       <Column Name="Timestamp" Type="System.DateTime" CanBeNull="false" />
    194       <Association Name="Statistics_UserStatistics" Member="UserStatistics" ThisKey="StatisticsId" OtherKey="StatisticsId" Type="UserStatistics" />
    195       <Association Name="Statistics_SlaveStatistics" Member="SlaveStatistics" ThisKey="StatisticsId" OtherKey="StatisticsId" Type="SlaveStatistics" />
    196     </Type>
    197   </Table>
    198157  <Table Name="dbo.ResourcePermission" Member="ResourcePermissions">
    199158    <Type Name="ResourcePermission">
     
    210169    </Type>
    211170  </Table>
     171  <Table Name="[statistics].DimClient" Member="DimClients">
     172    <Type Name="DimClient">
     173      <Column Name="Id" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
     174      <Column Name="Name" Type="System.String" DbType="VarChar(MAX) NOT NULL" CanBeNull="false" />
     175      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
     176      <Column Name="ExpirationTime" Type="System.DateTime" DbType="DateTime" CanBeNull="true" />
     177      <Column Name="ResourceGroupId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
     178      <Column Name="ResourceGroup2Id" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
     179      <Column Name="GroupName" Type="System.String" CanBeNull="true" />
     180      <Column Name="GroupName2" Type="System.String" CanBeNull="true" />
     181      <Association Name="DimClient_FactTask" Member="FactTasks" ThisKey="Id" OtherKey="LastClientId" Type="FactTask" />
     182      <Association Name="DimClient_FactClientInfo" Member="FactClientInfos" ThisKey="Id" OtherKey="ClientId" Type="FactClientInfo" />
     183    </Type>
     184  </Table>
     185  <Table Name="[statistics].FactTask" Member="FactTasks">
     186    <Type Name="FactTask">
     187      <Column Name="TaskId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
     188      <Column Name="CalculatingTime" Storage="_TotalRuntime" Type="System.Int64" DbType="INT NOT NULL" CanBeNull="false" />
     189      <Column Name="WaitingTime" Storage="_TotalWaitingTime" Type="System.Int64" DbType="INT NOT NULL" CanBeNull="false" />
     190      <Column Name="TransferTime" Storage="_TotalTransferTime" Type="System.Int64" DbType="INT NOT NULL" CanBeNull="false" />
     191      <Column Name="NumCalculationRuns" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     192      <Column Name="NumRetries" Storage="_NumFails" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     193      <Column Name="CoresRequired" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     194      <Column Name="MemoryRequired" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     195      <Column Name="Priority" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     196      <Column Name="LastClientId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="true" />
     197      <Column Name="JobId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
     198      <Column Name="EndTime" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="true" />
     199      <Column Name="TaskState" Type="global::HeuristicLab.Services.Hive.DataAccess.TaskState" DbType="varchar(30)" CanBeNull="false" />
     200      <Column Name="Exception" Type="System.String" DbType="varchar(MAX)" CanBeNull="true" />
     201      <Column Name="InitialWaitingTime" Storage="_InitialWaitingTimeMs" Type="System.Int64" DbType="INT" CanBeNull="false" />
     202      <Column Name="StartTime" Type="System.DateTime" CanBeNull="true" />
     203      <Association Name="DimClient_FactTask" Member="DimClient" ThisKey="LastClientId" OtherKey="Id" Type="DimClient" IsForeignKey="true" />
     204      <Association Name="DimJob_FactTask" Member="DimJob" ThisKey="JobId" OtherKey="JobId" Type="DimJob" IsForeignKey="true" />
     205    </Type>
     206  </Table>
     207  <Table Name="[statistics].DimJob" Member="DimJobs">
     208    <Type Name="DimJob">
     209      <Column Name="JobId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
     210      <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" CanBeNull="false" />
     211      <Column Name="JobName" Type="System.String" DbType="VarChar(MAX) NOT NULL" CanBeNull="false" />
     212      <Column Name="UserName" Type="System.String" DbType="VarChar(MAX) NOT NULL" CanBeNull="false" />
     213      <Column Name="DateCreated" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
     214      <Column Name="TotalTasks" Type="System.Int32" DbType="INT NOT NULL" CanBeNull="false" />
     215      <Column Name="CompletedTasks" Type="System.Int32" DbType="INT NOT NULL" CanBeNull="false" />
     216      <Column Name="DateCompleted" Type="System.DateTime" DbType="DateTime NULL" CanBeNull="true" />
     217      <Association Name="DimJob_FactTask" Member="FactTasks" ThisKey="JobId" OtherKey="JobId" Type="FactTask" />
     218    </Type>
     219  </Table>
     220  <Table Name="[statistics].DimTime" Member="DimTimes">
     221    <Type Name="DimTime">
     222      <Column Name="Time" Type="System.DateTime" DbType="DateTime NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
     223      <Column Name="Hour" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
     224      <Column Name="Day" Type="System.DateTime" DbType="Date NOT NULL" CanBeNull="false" />
     225      <Column Name="Month" Type="System.DateTime" DbType="Date NOT NULL" CanBeNull="false" />
     226      <Column Name="Year" Type="System.DateTime" DbType="Date NOT NULL" CanBeNull="false" />
     227      <Column Name="Minute" Type="System.DateTime" CanBeNull="false" />
     228      <Association Name="DimTime_FactClientInfo" Member="FactClientInfos" ThisKey="Time" OtherKey="Time" Type="FactClientInfo" />
     229    </Type>
     230  </Table>
     231  <Table Name="[statistics].DimUser" Member="DimUsers">
     232    <Type Name="DimUser">
     233      <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
     234      <Column Name="Name" Type="System.String" DbType="VarChar(MAX) NOT NULL" CanBeNull="false" />
     235      <Association Name="DimUser_FactClientInfo" Member="FactClientInfos" ThisKey="UserId" OtherKey="UserId" Type="FactClientInfo" />
     236    </Type>
     237  </Table>
     238  <Table Name="[statistics].FactClientInfo" Member="FactClientInfos">
     239    <Type Name="FactClientInfo">
     240      <Column Name="ClientId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
     241      <Column Name="Time" Type="System.DateTime" DbType="DateTime NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
     242      <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier NULL" IsPrimaryKey="true" CanBeNull="false" />
     243      <Column Name="NumUsedCores" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     244      <Column Name="NumTotalCores" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     245      <Column Name="UsedMemory" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     246      <Column Name="TotalMemory" Type="System.Int32" DbType="Int NOT NULL" CanBeNull="false" />
     247      <Column Name="CpuUtilization" Type="System.Double" DbType="Float NOT NULL" CanBeNull="false" />
     248      <Column Name="IdleTime" Storage="_TotalTimeIdle" Type="System.Int64" DbType="INT NOT NULL" CanBeNull="false" />
     249      <Column Name="OfflineTime" Storage="_TotalTimeOffline" Type="System.Int64" DbType="INT NOT NULL" CanBeNull="false" />
     250      <Column Name="UnavailableTime" Storage="_TotalTimeUnavailable" Type="System.Int64" DbType="INT NOT NULL" CanBeNull="false" />
     251      <Column Name="SlaveState" Type="global::HeuristicLab.Services.Hive.DataAccess.SlaveState" DbType="VarChar(15)" CanBeNull="false" />
     252      <Column Name="IsAllowedToCalculate" Type="System.Boolean" DbType="BIT" CanBeNull="false" />
     253      <Association Name="DimClient_FactClientInfo" Member="DimClient" ThisKey="ClientId" OtherKey="Id" Type="DimClient" IsForeignKey="true" />
     254      <Association Name="DimTime_FactClientInfo" Member="DimTime" ThisKey="Time" OtherKey="Time" Type="DimTime" IsForeignKey="true" />
     255      <Association Name="DimUser_FactClientInfo" Member="DimUser" ThisKey="UserId" OtherKey="UserId" Type="DimUser" IsForeignKey="true" />
     256    </Type>
     257  </Table>
    212258</Database>
  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.dbml.layout

    r9665 r12931  
    11<?xml version="1.0" encoding="utf-8"?>
    2 <ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 24.25, 8.5" name="HiveDataContext">
     2<ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 15.75, 17.875" name="HiveDataContext">
    33  <DataContextMoniker Name="/HiveDataContext" />
    44  <nestedChildShapes>
    5     <classShape Id="a929c9dc-69f4-4488-ba1c-a2342bf81d89" absoluteBounds="8.875, 4.5, 2, 1.0961531575520827">
     5    <classShape Id="a929c9dc-69f4-4488-ba1c-a2342bf81d89" absoluteBounds="8.875, 4.5, 2, 1.1939925130208327">
    66      <DataClassMoniker Name="/HiveDataContext/AssignedResource" />
    77      <nestedChildShapes>
    8         <elementListCompartment Id="8b005775-f0ee-41b0-ae10-6d1151003708" absoluteBounds="8.89, 4.9600000000000009, 1.9700000000000002, 0.53615315755208326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    9       </nestedChildShapes>
    10     </classShape>
    11     <classShape Id="7d998e56-4fba-41ca-a1a8-1dcdb9068edf" absoluteBounds="8.875, 5.875, 2, 1.7535424804687496">
     8        <elementListCompartment Id="8b005775-f0ee-41b0-ae10-6d1151003708" absoluteBounds="8.89, 4.9600000000000009, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     9      </nestedChildShapes>
     10    </classShape>
     11    <classShape Id="7d998e56-4fba-41ca-a1a8-1dcdb9068edf" absoluteBounds="8.875, 5.875, 2, 1.9631982421874996">
    1212      <DataClassMoniker Name="/HiveDataContext/Plugin" />
    1313      <nestedChildShapes>
    14         <elementListCompartment Id="ec4ba325-6dff-4418-baad-59af81ae2024" absoluteBounds="8.89, 6.3350000000000009, 1.9700000000000002, 1.19354248046875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    15       </nestedChildShapes>
    16     </classShape>
    17     <classShape Id="97b00810-fa30-457e-b484-b4e80b22f91b" absoluteBounds="6.5, 5.875, 2, 1.2605004882812496">
     14        <elementListCompartment Id="ec4ba325-6dff-4418-baad-59af81ae2024" absoluteBounds="8.89, 6.3350000000000009, 1.9700000000000002, 1.4031982421875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     15      </nestedChildShapes>
     16    </classShape>
     17    <classShape Id="97b00810-fa30-457e-b484-b4e80b22f91b" absoluteBounds="6.5, 5.875, 2, 1.3862939453124996">
    1818      <DataClassMoniker Name="/HiveDataContext/RequiredPlugin" />
    1919      <nestedChildShapes>
    20         <elementListCompartment Id="df6451e5-069e-4ca0-a909-61b8213b5047" absoluteBounds="6.5150000000000006, 6.3350000000000009, 1.9700000000000002, 0.70050048828125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    21       </nestedChildShapes>
    22     </classShape>
    23     <classShape Id="706a4581-6daf-4e71-ae2a-87d50b27a051" absoluteBounds="11.25, 1, 2, 1.75354248046875">
     20        <elementListCompartment Id="df6451e5-069e-4ca0-a909-61b8213b5047" absoluteBounds="6.5150000000000006, 6.3350000000000009, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     21      </nestedChildShapes>
     22    </classShape>
     23    <classShape Id="706a4581-6daf-4e71-ae2a-87d50b27a051" absoluteBounds="11.25, 1, 2, 1.9631982421875">
    2424      <DataClassMoniker Name="/HiveDataContext/Resource" />
    2525      <nestedChildShapes>
    26         <elementListCompartment Id="8c24f5bf-2164-4d0f-832e-1730eb0066df" absoluteBounds="11.265, 1.46, 1.9700000000000002, 1.19354248046875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    27       </nestedChildShapes>
    28     </classShape>
    29     <classShape Id="695bfc39-59f3-4e60-8644-f847964bf62c" absoluteBounds="6.5, 1, 2, 2.9039737955729166">
     26        <elementListCompartment Id="8c24f5bf-2164-4d0f-832e-1730eb0066df" absoluteBounds="11.265, 1.46, 1.9700000000000002, 1.4031982421875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     27      </nestedChildShapes>
     28    </classShape>
     29    <classShape Id="695bfc39-59f3-4e60-8644-f847964bf62c" absoluteBounds="6.5, 1, 2, 3.1170068359374996">
    3030      <DataClassMoniker Name="/HiveDataContext/Task" />
    3131      <nestedChildShapes>
    32         <elementListCompartment Id="a6a30e11-03d1-4869-82e6-b733f4ef9974" absoluteBounds="6.5150000000000006, 1.46, 1.9700000000000002, 2.3439737955729165" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    33       </nestedChildShapes>
    34     </classShape>
    35     <classShape Id="8d5712f7-7a1a-4a89-bd4d-fd60200d3306" absoluteBounds="13.5, 2.5, 2, 2.0822371419270826">
     32        <elementListCompartment Id="a6a30e11-03d1-4869-82e6-b733f4ef9974" absoluteBounds="6.5150000000000006, 1.46, 1.9700000000000002, 2.5570068359375" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     33      </nestedChildShapes>
     34    </classShape>
     35    <classShape Id="8d5712f7-7a1a-4a89-bd4d-fd60200d3306" absoluteBounds="13.5, 2.5, 2, 2.3478011067708326">
    3636      <DataClassMoniker Name="/HiveDataContext/Downtime" />
    3737      <nestedChildShapes>
    38         <elementListCompartment Id="7d8f121b-35bb-4753-a25f-3fac1562e68e" absoluteBounds="13.515, 2.9600000000000009, 1.9700000000000002, 1.5222371419270833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    39       </nestedChildShapes>
    40     </classShape>
    41     <classShape Id="e6f840cc-2968-4be1-b234-eef624ccacbb" absoluteBounds="4.125, 2.625, 2, 1.7535424804687496">
     38        <elementListCompartment Id="7d8f121b-35bb-4753-a25f-3fac1562e68e" absoluteBounds="13.515, 2.9600000000000009, 1.9700000000000002, 1.7878011067708333" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     39      </nestedChildShapes>
     40    </classShape>
     41    <classShape Id="e6f840cc-2968-4be1-b234-eef624ccacbb" absoluteBounds="4.125, 2.625, 2, 1.9631982421874996">
    4242      <DataClassMoniker Name="/HiveDataContext/Job" />
    4343      <nestedChildShapes>
    44         <elementListCompartment Id="0c65d4e1-256a-4a91-9a57-392f25e4de7f" absoluteBounds="4.1400000000000006, 3.0850000000000009, 1.9700000000000002, 1.19354248046875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    45       </nestedChildShapes>
    46     </classShape>
    47     <classShape Id="26f4edfa-91dd-4941-a058-359f89e567a8" absoluteBounds="8.875, 0.75, 2, 2.9039737955729166">
     44        <elementListCompartment Id="0c65d4e1-256a-4a91-9a57-392f25e4de7f" absoluteBounds="4.1400000000000006, 3.0850000000000009, 1.9700000000000002, 1.4031982421875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     45      </nestedChildShapes>
     46    </classShape>
     47    <classShape Id="26f4edfa-91dd-4941-a058-359f89e567a8" absoluteBounds="8.875, 0.75, 2, 3.3093082682291666">
    4848      <DataClassMoniker Name="/HiveDataContext/Slave" />
    4949      <nestedChildShapes>
    50         <elementListCompartment Id="1e61f36b-08dc-4df7-8594-c9dcd95c0791" absoluteBounds="8.89, 1.21, 1.9700000000000002, 2.3439737955729165" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    51       </nestedChildShapes>
    52     </classShape>
    53     <classShape Id="bbd91675-92f2-4a69-8429-0950008fc8a4" absoluteBounds="13.5, 1, 2, 0.76745849609375">
     50        <elementListCompartment Id="1e61f36b-08dc-4df7-8594-c9dcd95c0791" absoluteBounds="8.89, 1.21, 1.9700000000000002, 2.7493082682291665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     51      </nestedChildShapes>
     52    </classShape>
     53    <classShape Id="bbd91675-92f2-4a69-8429-0950008fc8a4" absoluteBounds="13.5, 1, 2, 0.8093896484375">
    5454      <DataClassMoniker Name="/HiveDataContext/SlaveGroup" />
    5555      <nestedChildShapes>
    56         <elementListCompartment Id="5a790e8f-6e2e-4bf5-bd2b-f8a82224d9d7" absoluteBounds="13.5, 1, 0.125, 0.20745849609375" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     56        <elementListCompartment Id="5a790e8f-6e2e-4bf5-bd2b-f8a82224d9d7" absoluteBounds="13.5, 1, 0.125, 0.2493896484375" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    5757      </nestedChildShapes>
    5858    </classShape>
     
    6969      </nodes>
    7070    </inheritanceConnector>
    71     <associationConnector edgePoints="[(11.8134963640734 : 2.75354248046875); (11.8134963640734 : 3.56770833333333); (11.1119791666667 : 3.56770833333333); (11.1119791666667 : 5.09699625651042); (10.875 : 5.09699625651042)]" manuallyRouted="true" fixedFrom="Algorithm" fixedTo="Algorithm">
     71    <associationConnector edgePoints="[(11.8134963640734 : 2.9631982421875); (11.8134963640734 : 3.56770833333333); (11.1119791666667 : 3.56770833333333); (11.1119791666667 : 5.09699625651042); (10.875 : 5.09699625651042)]" manuallyRouted="true" fixedFrom="NotFixed" fixedTo="NotFixed">
    7272      <AssociationMoniker Name="/HiveDataContext/Resource/Resource_AssignedResource" />
    7373      <nodes>
     
    7676      </nodes>
    7777    </associationConnector>
    78     <classShape Id="6bc13f26-f9a8-4597-b054-35be34190d12" absoluteBounds="4.125, 1, 2, 1.26050048828125">
     78    <classShape Id="6bc13f26-f9a8-4597-b054-35be34190d12" absoluteBounds="4.125, 1, 2, 1.3862939453125">
    7979      <DataClassMoniker Name="/HiveDataContext/TaskData" />
    8080      <nestedChildShapes>
    81         <elementListCompartment Id="a068522c-7974-4679-b356-e33c941c465b" absoluteBounds="4.14, 1.46, 1.9700000000000002, 0.70050048828125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    82       </nestedChildShapes>
    83     </classShape>
    84     <classShape Id="ad25bd0f-80e8-4a06-abd8-190eb678eec7" absoluteBounds="11.25, 5.875, 2, 1.4248478190104166">
     81        <elementListCompartment Id="a068522c-7974-4679-b356-e33c941c465b" absoluteBounds="4.14, 1.46, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     82      </nestedChildShapes>
     83    </classShape>
     84    <classShape Id="ad25bd0f-80e8-4a06-abd8-190eb678eec7" absoluteBounds="11.25, 5.875, 2, 1.5785953776041666">
    8585      <DataClassMoniker Name="/HiveDataContext/PluginData" />
    8686      <nestedChildShapes>
    87         <elementListCompartment Id="acddb513-7de6-4bb4-8335-d6982fb2ef35" absoluteBounds="11.265, 6.3350000000000009, 1.9700000000000002, 0.86484781901041663" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     87        <elementListCompartment Id="acddb513-7de6-4bb4-8335-d6982fb2ef35" absoluteBounds="11.265, 6.3350000000000009, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    8888      </nestedChildShapes>
    8989    </classShape>
     
    109109      </nodes>
    110110    </associationConnector>
    111     <classShape Id="00352397-340e-449a-8e23-6ddd216e8617" absoluteBounds="1.75, 1, 2, 1.9178898111979166">
     111    <classShape Id="00352397-340e-449a-8e23-6ddd216e8617" absoluteBounds="1.75, 1, 2, 2.1554996744791666">
    112112      <DataClassMoniker Name="/HiveDataContext/StateLog" />
    113113      <nestedChildShapes>
    114         <elementListCompartment Id="9a003897-deef-4bb5-b180-4c4bcdb7fadc" absoluteBounds="1.765, 1.46, 1.9700000000000002, 1.3578898111979165" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    115       </nestedChildShapes>
    116     </classShape>
    117     <classShape Id="4d800dc9-1b18-469f-b02c-d4554757c5e1" absoluteBounds="1.75, 3.625, 2, 1.4248478190104166">
     114        <elementListCompartment Id="9a003897-deef-4bb5-b180-4c4bcdb7fadc" absoluteBounds="1.765, 1.46, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     115      </nestedChildShapes>
     116    </classShape>
     117    <classShape Id="4d800dc9-1b18-469f-b02c-d4554757c5e1" absoluteBounds="1.75, 3.625, 2, 1.5785953776041666">
    118118      <DataClassMoniker Name="/HiveDataContext/JobPermission" />
    119119      <nestedChildShapes>
    120         <elementListCompartment Id="dedd97d3-a9a2-45a2-9b95-d7366fb65a7f" absoluteBounds="1.765, 4.085, 1.9700000000000002, 0.86484781901041663" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    121       </nestedChildShapes>
    122     </classShape>
    123     <associationConnector edgePoints="[(11.25 : 1.98159912109375); (10.9375 : 1.98159912109375); (10.9375 : 0.6875); (2.75 : 0.6875); (2.75 : 1)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     120        <elementListCompartment Id="dedd97d3-a9a2-45a2-9b95-d7366fb65a7f" absoluteBounds="1.765, 4.085, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     121      </nestedChildShapes>
     122    </classShape>
     123    <associationConnector edgePoints="[(11.25 : 1.44547136382195); (11.0260416666667 : 1.44547136382195); (11.0260416666667 : 0.5625); (2.75 : 0.5625); (2.75 : 1)]" manuallyRouted="true" fixedFrom="NotFixed" fixedTo="NotFixed">
    124124      <AssociationMoniker Name="/HiveDataContext/Resource/Resource_StateLog" />
    125125      <nodes>
     
    128128      </nodes>
    129129    </associationConnector>
    130     <classShape Id="b4e7aaa8-a382-4560-a1fd-498de77e9340" absoluteBounds="1.75, 5.5, 2, 1.0961531575520827">
     130    <classShape Id="b4e7aaa8-a382-4560-a1fd-498de77e9340" absoluteBounds="1.75, 5.5, 2, 1.1939925130208327">
    131131      <DataClassMoniker Name="/HiveDataContext/Lifecycle" />
    132132      <nestedChildShapes>
    133         <elementListCompartment Id="03597a2c-5c5d-4c2c-b741-c49ab5aa34d5" absoluteBounds="1.7650000000000001, 5.96, 1.9700000000000002, 0.53615315755208326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    134       </nestedChildShapes>
    135     </classShape>
    136     <classShape Id="cdddf4da-eaef-46a1-9cfd-987bb6b3d03e" absoluteBounds="17, 3.125, 2.5, 1.5891951497395827">
    137       <DataClassMoniker Name="/HiveDataContext/DeletedJobStatistics" />
    138       <nestedChildShapes>
    139         <elementListCompartment Id="b8738381-f696-4dba-a517-47e9cd96a9a6" absoluteBounds="17.015, 3.585, 2.4699999999999998, 1.0291951497395833" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    140       </nestedChildShapes>
    141     </classShape>
    142     <classShape Id="25442617-ff41-49a0-b5d5-4cbe0b2f0f45" absoluteBounds="22, 4.5, 2, 1.7535424804687496">
    143       <DataClassMoniker Name="/HiveDataContext/UserStatistics" />
    144       <nestedChildShapes>
    145         <elementListCompartment Id="6edf08e7-054a-4253-8d4f-5bf2dfec2d29" absoluteBounds="22.015, 4.96, 1.9700000000000002, 1.19354248046875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    146       </nestedChildShapes>
    147     </classShape>
    148     <classShape Id="f78ec989-4862-4bac-87e3-9b0aad4bc037" absoluteBounds="19.875, 4.5, 2, 1.9178898111979166">
    149       <DataClassMoniker Name="/HiveDataContext/SlaveStatistics" />
    150       <nestedChildShapes>
    151         <elementListCompartment Id="98cb46fe-820e-4041-aee8-04e8bed3df23" absoluteBounds="19.89, 4.96, 1.9700000000000002, 1.3578898111979165" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    152       </nestedChildShapes>
    153     </classShape>
    154     <classShape Id="4d9f0606-b7ee-4dae-a8ac-aff88d25a941" absoluteBounds="21, 3, 2, 1.0961531575520827">
    155       <DataClassMoniker Name="/HiveDataContext/Statistics" />
    156       <nestedChildShapes>
    157         <elementListCompartment Id="17821282-8edf-40b7-9065-84f53391d5c1" absoluteBounds="21.015, 3.46, 1.9700000000000002, 0.53615315755208326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    158       </nestedChildShapes>
    159     </classShape>
    160     <associationConnector edgePoints="[(21.4375 : 4.19399251302083); (21.4375 : 4.5)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    161       <AssociationMoniker Name="/HiveDataContext/Statistics/Statistics_SlaveStatistics" />
    162       <nodes>
    163         <classShapeMoniker Id="4d9f0606-b7ee-4dae-a8ac-aff88d25a941" />
    164         <classShapeMoniker Id="f78ec989-4862-4bac-87e3-9b0aad4bc037" />
    165       </nodes>
    166     </associationConnector>
    167     <associationConnector edgePoints="[(22.5 : 4.19399251302083); (22.5 : 4.5)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    168       <AssociationMoniker Name="/HiveDataContext/Statistics/Statistics_UserStatistics" />
    169       <nodes>
    170         <classShapeMoniker Id="4d9f0606-b7ee-4dae-a8ac-aff88d25a941" />
    171         <classShapeMoniker Id="25442617-ff41-49a0-b5d5-4cbe0b2f0f45" />
    172       </nodes>
    173     </associationConnector>
     133        <elementListCompartment Id="03597a2c-5c5d-4c2c-b741-c49ab5aa34d5" absoluteBounds="1.7650000000000001, 5.96, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     134      </nestedChildShapes>
     135    </classShape>
    174136    <associationConnector edgePoints="[(13.25 : 2.73159912109375); (13.5 : 2.73159912109375)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    175137      <AssociationMoniker Name="/HiveDataContext/Resource/Resource_Downtime" />
     
    179141      </nodes>
    180142    </associationConnector>
    181     <associationConnector edgePoints="[(7.96163946463664 : 4.30930826822917); (7.96163946463664 : 5.09699625651042); (8.875 : 5.09699625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     143    <associationConnector edgePoints="[(8.5 : 4.1170068359375); (8.875 : 4.5)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    182144      <AssociationMoniker Name="/HiveDataContext/Task/Task_AssignedResource" />
    183145      <nodes>
     
    186148      </nodes>
    187149    </associationConnector>
    188     <associationConnector edgePoints="[(7.16831973231832 : 4.30930826822917); (7.16831973231832 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     150    <associationConnector edgePoints="[(7.4687475 : 4.1170068359375); (7.4687475 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    189151      <AssociationMoniker Name="/HiveDataContext/Task/Task_RequiredPlugin" />
    190152      <nodes>
     
    193155      </nodes>
    194156    </associationConnector>
    195     <associationConnector edgePoints="[(7.20923076923077 : 1); (7.20923076923077 : 0.875); (7.80461538461539 : 0.875); (7.80461538461539 : 1)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     157    <associationConnector edgePoints="[(7.20923076923077 : 1); (7.20923076923077 : 0.770833333333333); (7.80461538461539 : 0.770833333333333); (7.80461538461539 : 1)]" manuallyRouted="true" fixedFrom="NotFixed" fixedTo="NotFixed">
    196158      <AssociationMoniker Name="/HiveDataContext/Task/Task_Task" />
    197159      <nodes>
     
    214176      </nodes>
    215177    </associationConnector>
    216     <associationConnector edgePoints="[(6.125 : 3.46715413411458); (6.5 : 3.46715413411458)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     178    <associationConnector edgePoints="[(6.125 : 3.37100341796875); (6.5 : 3.37100341796875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
    217179      <AssociationMoniker Name="/HiveDataContext/Job/Job_Task" />
    218180      <nodes>
     
    228190      </nodes>
    229191    </associationConnector>
    230     <classShape Id="a3f352be-9f15-4e73-8d44-3e8ac02fb4cf" absoluteBounds="11.25, 3.875, 2, 1.2605004882812496">
     192    <classShape Id="a3f352be-9f15-4e73-8d44-3e8ac02fb4cf" absoluteBounds="11.25, 3.875, 2, 1.3862939453124996">
    231193      <DataClassMoniker Name="/HiveDataContext/ResourcePermission" />
    232194      <nestedChildShapes>
    233         <elementListCompartment Id="45e2f1a8-8a1e-4647-b649-10ec55976ab4" absoluteBounds="11.265, 4.335, 1.9700000000000002, 0.70050048828125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     195        <elementListCompartment Id="45e2f1a8-8a1e-4647-b649-10ec55976ab4" absoluteBounds="11.265, 4.335, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    234196      </nestedChildShapes>
    235197    </classShape>
     
    241203      </nodes>
    242204    </associationConnector>
    243     <classShape Id="f9e8867f-fd15-4a72-8ca4-4f02cd3f141f" absoluteBounds="4.125, 5.5, 2, 1.0961531575520827">
     205    <classShape Id="f9e8867f-fd15-4a72-8ca4-4f02cd3f141f" absoluteBounds="4.125, 5.5, 2, 1.1939925130208327">
    244206      <DataClassMoniker Name="/HiveDataContext/UserPriority" />
    245207      <nestedChildShapes>
    246         <elementListCompartment Id="ee41f516-7d9c-4a1d-a1b8-bbe00a6ffea8" absoluteBounds="4.14, 5.96, 1.9700000000000002, 0.53615315755208326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
    247       </nestedChildShapes>
    248     </classShape>
     208        <elementListCompartment Id="ee41f516-7d9c-4a1d-a1b8-bbe00a6ffea8" absoluteBounds="4.14, 5.96, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     209      </nestedChildShapes>
     210    </classShape>
     211    <classShape Id="b5b919c2-4efc-4f09-8f52-9d541a11e961" absoluteBounds="4.625, 15.25, 2, 2.3478011067708344">
     212      <DataClassMoniker Name="/HiveDataContext/DimClient" />
     213      <nestedChildShapes>
     214        <elementListCompartment Id="30f62a7b-0b16-404e-b972-fb12bfe978dd" absoluteBounds="4.6400000000000006, 15.71, 1.9700000000000002, 1.7878011067708333" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     215      </nestedChildShapes>
     216    </classShape>
     217    <classShape Id="04f52807-ce17-4d65-bd23-cc38c6dfbd7a" absoluteBounds="6.875, 11.25, 2, 3.8862125651041666">
     218      <DataClassMoniker Name="/HiveDataContext/FactTask" />
     219      <nestedChildShapes>
     220        <elementListCompartment Id="63e3ddcb-a6fe-48e0-a674-e650a55a9f2c" absoluteBounds="6.8900000000000006, 11.71, 1.9700000000000002, 3.3262125651041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     221      </nestedChildShapes>
     222    </classShape>
     223    <classShape Id="e0cb8641-a75e-4b9f-beda-3218c56938b1" absoluteBounds="8.125, 8.25, 2, 2.3478011067708344">
     224      <DataClassMoniker Name="/HiveDataContext/DimJob" />
     225      <nestedChildShapes>
     226        <elementListCompartment Id="6b9e8260-7e4b-4357-9c26-eebebfd69504" absoluteBounds="8.14, 8.71, 1.9700000000000002, 1.7878011067708333" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     227      </nestedChildShapes>
     228    </classShape>
     229    <classShape Id="a769f2ac-c8e3-4860-baa5-c46f46c38ed8" absoluteBounds="3.625, 8.5, 2, 1.9631982421875005">
     230      <DataClassMoniker Name="/HiveDataContext/DimTime" />
     231      <nestedChildShapes>
     232        <elementListCompartment Id="694c4a5a-20fb-43a9-bc9a-7b59d794a7fb" absoluteBounds="3.6399999999999997, 8.96, 1.9700000000000002, 1.4031982421875" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     233      </nestedChildShapes>
     234    </classShape>
     235    <classShape Id="66c34ced-4fdb-4a1d-b8dd-fe094679b7fb" absoluteBounds="0.625, 8.875, 2, 1.1939925130208344">
     236      <DataClassMoniker Name="/HiveDataContext/DimUser" />
     237      <nestedChildShapes>
     238        <elementListCompartment Id="6181c560-fc74-4d43-b064-a90032bf17a5" absoluteBounds="0.64000000000000012, 9.335, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     239      </nestedChildShapes>
     240    </classShape>
     241    <classShape Id="053a5cff-b18a-4ee5-8d43-48ed5c5dcfad" absoluteBounds="2.625, 11, 2, 3.3093082682291666">
     242      <DataClassMoniker Name="/HiveDataContext/FactClientInfo" />
     243      <nestedChildShapes>
     244        <elementListCompartment Id="0a1cc913-6636-455c-95b3-302f533527db" absoluteBounds="2.6399999999999997, 11.46, 1.9700000000000002, 2.7493082682291665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
     245      </nestedChildShapes>
     246    </classShape>
     247    <associationConnector edgePoints="[(6.625 : 15.25); (6.875 : 15.1362125651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     248      <AssociationMoniker Name="/HiveDataContext/DimClient/DimClient_FactTask" />
     249      <nodes>
     250        <classShapeMoniker Id="b5b919c2-4efc-4f09-8f52-9d541a11e961" />
     251        <classShapeMoniker Id="04f52807-ce17-4d65-bd23-cc38c6dfbd7a" />
     252      </nodes>
     253    </associationConnector>
     254    <associationConnector edgePoints="[(8.5 : 10.5978011067708); (8.5 : 11.25)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     255      <AssociationMoniker Name="/HiveDataContext/DimJob/DimJob_FactTask" />
     256      <nodes>
     257        <classShapeMoniker Id="e0cb8641-a75e-4b9f-beda-3218c56938b1" />
     258        <classShapeMoniker Id="04f52807-ce17-4d65-bd23-cc38c6dfbd7a" />
     259      </nodes>
     260    </associationConnector>
     261    <associationConnector edgePoints="[(5.6249975 : 15.25); (5.6249975 : 12.6546541341146); (4.625 : 12.6546541341146)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     262      <AssociationMoniker Name="/HiveDataContext/DimClient/DimClient_FactClientInfo" />
     263      <nodes>
     264        <classShapeMoniker Id="b5b919c2-4efc-4f09-8f52-9d541a11e961" />
     265        <classShapeMoniker Id="053a5cff-b18a-4ee5-8d43-48ed5c5dcfad" />
     266      </nodes>
     267    </associationConnector>
     268    <associationConnector edgePoints="[(4.125 : 10.4631982421875); (4.125 : 11)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     269      <AssociationMoniker Name="/HiveDataContext/DimTime/DimTime_FactClientInfo" />
     270      <nodes>
     271        <classShapeMoniker Id="a769f2ac-c8e3-4860-baa5-c46f46c38ed8" />
     272        <classShapeMoniker Id="053a5cff-b18a-4ee5-8d43-48ed5c5dcfad" />
     273      </nodes>
     274    </associationConnector>
     275    <associationConnector edgePoints="[(1.59375 : 10.0689925130208); (1.59375 : 12.6546541341146); (2.625 : 12.6546541341146)]" fixedFrom="NotFixed" fixedTo="NotFixed">
     276      <AssociationMoniker Name="/HiveDataContext/DimUser/DimUser_FactClientInfo" />
     277      <nodes>
     278        <classShapeMoniker Id="66c34ced-4fdb-4a1d-b8dd-fe094679b7fb" />
     279        <classShapeMoniker Id="053a5cff-b18a-4ee5-8d43-48ed5c5dcfad" />
     280      </nodes>
     281    </associationConnector>
    249282  </nestedChildShapes>
    250283</ordesignerObjectsDiagram>
  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess/3.3/HiveDataContext.designer.cs

    r11623 r12931  
    33// <auto-generated>
    44//     This code was generated by a tool.
    5 //     Runtime Version:4.0.30319.34014
     5//     Runtime Version:4.0.30319.34209
    66//
    77//     Changes to this file may cause incorrect behavior and will be lost if
     
    6767    partial void UpdateLifecycle(Lifecycle instance);
    6868    partial void DeleteLifecycle(Lifecycle instance);
    69     partial void InsertDeletedJobStatistics(DeletedJobStatistics instance);
    70     partial void UpdateDeletedJobStatistics(DeletedJobStatistics instance);
    71     partial void DeleteDeletedJobStatistics(DeletedJobStatistics instance);
    72     partial void InsertUserStatistics(UserStatistics instance);
    73     partial void UpdateUserStatistics(UserStatistics instance);
    74     partial void DeleteUserStatistics(UserStatistics instance);
    75     partial void InsertSlaveStatistics(SlaveStatistics instance);
    76     partial void UpdateSlaveStatistics(SlaveStatistics instance);
    77     partial void DeleteSlaveStatistics(SlaveStatistics instance);
    78     partial void InsertStatistics(Statistics instance);
    79     partial void UpdateStatistics(Statistics instance);
    80     partial void DeleteStatistics(Statistics instance);
    8169    partial void InsertResourcePermission(ResourcePermission instance);
    8270    partial void UpdateResourcePermission(ResourcePermission instance);
     
    8573    partial void UpdateUserPriority(UserPriority instance);
    8674    partial void DeleteUserPriority(UserPriority instance);
     75    partial void InsertDimClient(DimClient instance);
     76    partial void UpdateDimClient(DimClient instance);
     77    partial void DeleteDimClient(DimClient instance);
     78    partial void InsertFactTask(FactTask instance);
     79    partial void UpdateFactTask(FactTask instance);
     80    partial void DeleteFactTask(FactTask instance);
     81    partial void InsertDimJob(DimJob instance);
     82    partial void UpdateDimJob(DimJob instance);
     83    partial void DeleteDimJob(DimJob instance);
     84    partial void InsertDimTime(DimTime instance);
     85    partial void UpdateDimTime(DimTime instance);
     86    partial void DeleteDimTime(DimTime instance);
     87    partial void InsertDimUser(DimUser instance);
     88    partial void UpdateDimUser(DimUser instance);
     89    partial void DeleteDimUser(DimUser instance);
     90    partial void InsertFactClientInfo(FactClientInfo instance);
     91    partial void UpdateFactClientInfo(FactClientInfo instance);
     92    partial void DeleteFactClientInfo(FactClientInfo instance);
    8793    #endregion
    8894   
     
    213219    }
    214220   
    215     public System.Data.Linq.Table<DeletedJobStatistics> DeletedJobStatistics
    216     {
    217       get
    218       {
    219         return this.GetTable<DeletedJobStatistics>();
    220       }
    221     }
    222    
    223     public System.Data.Linq.Table<UserStatistics> UserStatistics
    224     {
    225       get
    226       {
    227         return this.GetTable<UserStatistics>();
    228       }
    229     }
    230    
    231     public System.Data.Linq.Table<SlaveStatistics> SlaveStatistics
    232     {
    233       get
    234       {
    235         return this.GetTable<SlaveStatistics>();
    236       }
    237     }
    238    
    239     public System.Data.Linq.Table<Statistics> Statistics
    240     {
    241       get
    242       {
    243         return this.GetTable<Statistics>();
    244       }
    245     }
    246    
    247221    public System.Data.Linq.Table<ResourcePermission> ResourcePermissions
    248222    {
     
    258232      {
    259233        return this.GetTable<UserPriority>();
     234      }
     235    }
     236   
     237    public System.Data.Linq.Table<DimClient> DimClients
     238    {
     239      get
     240      {
     241        return this.GetTable<DimClient>();
     242      }
     243    }
     244   
     245    public System.Data.Linq.Table<FactTask> FactTasks
     246    {
     247      get
     248      {
     249        return this.GetTable<FactTask>();
     250      }
     251    }
     252   
     253    public System.Data.Linq.Table<DimJob> DimJobs
     254    {
     255      get
     256      {
     257        return this.GetTable<DimJob>();
     258      }
     259    }
     260   
     261    public System.Data.Linq.Table<DimTime> DimTimes
     262    {
     263      get
     264      {
     265        return this.GetTable<DimTime>();
     266      }
     267    }
     268   
     269    public System.Data.Linq.Table<DimUser> DimUsers
     270    {
     271      get
     272      {
     273        return this.GetTable<DimUser>();
     274      }
     275    }
     276   
     277    public System.Data.Linq.Table<FactClientInfo> FactClientInfos
     278    {
     279      get
     280      {
     281        return this.GetTable<FactClientInfo>();
    260282      }
    261283    }
     
    15981620    private System.Guid _HiveExperimentId;
    15991621   
    1600     private bool _IsPrivileged;
    1601    
    16021622    private EntitySet<AssignedResource> _AssignedResources;
    16031623   
     
    16421662    partial void OnJobIdChanging(System.Guid value);
    16431663    partial void OnJobIdChanged();
    1644     partial void OnIsPrivilegedChanging(bool value);
    1645     partial void OnIsPrivilegedChanged();
    16461664    #endregion
    16471665   
     
    19021920          this.SendPropertyChanged("JobId");
    19031921          this.OnJobIdChanged();
    1904         }
    1905       }
    1906     }
    1907    
    1908     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsPrivileged", DbType="Bit")]
    1909     public bool IsPrivileged
    1910     {
    1911       get
    1912       {
    1913         return this._IsPrivileged;
    1914       }
    1915       set
    1916       {
    1917         if ((this._IsPrivileged != value))
    1918         {
    1919           this.OnIsPrivilegedChanging(value);
    1920           this.SendPropertyChanging();
    1921           this._IsPrivileged = value;
    1922           this.SendPropertyChanged("IsPrivileged");
    1923           this.OnIsPrivilegedChanged();
    19241922        }
    19251923      }
     
    35283526  }
    35293527 
    3530   [global::System.Data.Linq.Mapping.TableAttribute(Name="")]
    3531   public partial class DeletedJobStatistics : INotifyPropertyChanging, INotifyPropertyChanged
    3532   {
    3533    
    3534     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    3535    
    3536     private System.Guid _UserId;
    3537    
    3538     private double _ExecutionTime;
    3539    
    3540     private double _ExecutionTimeFinishedJobs;
    3541    
    3542     private double _StartToEndTime;
    3543    
    3544     private System.Guid _DeletedJobStatisticsId;
    3545    
    3546     #region Extensibility Method Definitions
    3547     partial void OnLoaded();
    3548     partial void OnValidate(System.Data.Linq.ChangeAction action);
    3549     partial void OnCreated();
    3550     partial void OnUserIdChanging(System.Guid value);
    3551     partial void OnUserIdChanged();
    3552     partial void OnExecutionTimeSChanging(double value);
    3553     partial void OnExecutionTimeSChanged();
    3554     partial void OnExecutionTimeSFinishedJobsChanging(double value);
    3555     partial void OnExecutionTimeSFinishedJobsChanged();
    3556     partial void OnStartToEndTimeSChanging(double value);
    3557     partial void OnStartToEndTimeSChanged();
    3558     partial void OnDeletedJobStatisticsIdChanging(System.Guid value);
    3559     partial void OnDeletedJobStatisticsIdChanged();
    3560     #endregion
    3561    
    3562     public DeletedJobStatistics()
    3563     {
    3564       OnCreated();
    3565     }
    3566    
    3567     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL")]
    3568     public System.Guid UserId
    3569     {
    3570       get
    3571       {
    3572         return this._UserId;
    3573       }
    3574       set
    3575       {
    3576         if ((this._UserId != value))
    3577         {
    3578           this.OnUserIdChanging(value);
    3579           this.SendPropertyChanging();
    3580           this._UserId = value;
    3581           this.SendPropertyChanged("UserId");
    3582           this.OnUserIdChanged();
    3583         }
    3584       }
    3585     }
    3586    
    3587     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExecutionTime", DbType="float NOT NULL")]
    3588     public double ExecutionTimeS
    3589     {
    3590       get
    3591       {
    3592         return this._ExecutionTime;
    3593       }
    3594       set
    3595       {
    3596         if ((this._ExecutionTime != value))
    3597         {
    3598           this.OnExecutionTimeSChanging(value);
    3599           this.SendPropertyChanging();
    3600           this._ExecutionTime = value;
    3601           this.SendPropertyChanged("ExecutionTimeS");
    3602           this.OnExecutionTimeSChanged();
    3603         }
    3604       }
    3605     }
    3606    
    3607     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExecutionTimeFinishedJobs", DbType="float NOT NULL")]
    3608     public double ExecutionTimeSFinishedJobs
    3609     {
    3610       get
    3611       {
    3612         return this._ExecutionTimeFinishedJobs;
    3613       }
    3614       set
    3615       {
    3616         if ((this._ExecutionTimeFinishedJobs != value))
    3617         {
    3618           this.OnExecutionTimeSFinishedJobsChanging(value);
    3619           this.SendPropertyChanging();
    3620           this._ExecutionTimeFinishedJobs = value;
    3621           this.SendPropertyChanged("ExecutionTimeSFinishedJobs");
    3622           this.OnExecutionTimeSFinishedJobsChanged();
    3623         }
    3624       }
    3625     }
    3626    
    3627     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StartToEndTime", DbType="float NOT NULL")]
    3628     public double StartToEndTimeS
    3629     {
    3630       get
    3631       {
    3632         return this._StartToEndTime;
    3633       }
    3634       set
    3635       {
    3636         if ((this._StartToEndTime != value))
    3637         {
    3638           this.OnStartToEndTimeSChanging(value);
    3639           this.SendPropertyChanging();
    3640           this._StartToEndTime = value;
    3641           this.SendPropertyChanged("StartToEndTimeS");
    3642           this.OnStartToEndTimeSChanged();
    3643         }
    3644       }
    3645     }
    3646    
    3647     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DeletedJobStatisticsId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
    3648     public System.Guid DeletedJobStatisticsId
    3649     {
    3650       get
    3651       {
    3652         return this._DeletedJobStatisticsId;
    3653       }
    3654       set
    3655       {
    3656         if ((this._DeletedJobStatisticsId != value))
    3657         {
    3658           this.OnDeletedJobStatisticsIdChanging(value);
    3659           this.SendPropertyChanging();
    3660           this._DeletedJobStatisticsId = value;
    3661           this.SendPropertyChanged("DeletedJobStatisticsId");
    3662           this.OnDeletedJobStatisticsIdChanged();
    3663         }
    3664       }
    3665     }
    3666    
    3667     public event PropertyChangingEventHandler PropertyChanging;
    3668    
    3669     public event PropertyChangedEventHandler PropertyChanged;
    3670    
    3671     protected virtual void SendPropertyChanging()
    3672     {
    3673       if ((this.PropertyChanging != null))
    3674       {
    3675         this.PropertyChanging(this, emptyChangingEventArgs);
    3676       }
    3677     }
    3678    
    3679     protected virtual void SendPropertyChanged(String propertyName)
    3680     {
    3681       if ((this.PropertyChanged != null))
    3682       {
    3683         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    3684       }
    3685     }
    3686   }
    3687  
    3688   [global::System.Data.Linq.Mapping.TableAttribute(Name="")]
    3689   public partial class UserStatistics : INotifyPropertyChanging, INotifyPropertyChanged
    3690   {
    3691    
    3692     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    3693    
    3694     private System.Guid _StatisticsId;
    3695    
    3696     private System.Guid _UserId;
    3697    
    3698     private double _ExecutionTime;
    3699    
    3700     private int _CoresUsed;
    3701    
    3702     private double _ExecutionTimeFinishedJobs;
    3703    
    3704     private double _StartToEndTime;
    3705    
    3706     private EntityRef<Statistics> _Statistics;
    3707    
    3708     #region Extensibility Method Definitions
    3709     partial void OnLoaded();
    3710     partial void OnValidate(System.Data.Linq.ChangeAction action);
    3711     partial void OnCreated();
    3712     partial void OnStatisticsIdChanging(System.Guid value);
    3713     partial void OnStatisticsIdChanged();
    3714     partial void OnUserIdChanging(System.Guid value);
    3715     partial void OnUserIdChanged();
    3716     partial void OnExecutionTimeMsChanging(double value);
    3717     partial void OnExecutionTimeMsChanged();
    3718     partial void OnUsedCoresChanging(int value);
    3719     partial void OnUsedCoresChanged();
    3720     partial void OnExecutionTimeMsFinishedJobsChanging(double value);
    3721     partial void OnExecutionTimeMsFinishedJobsChanged();
    3722     partial void OnStartToEndTimeMsChanging(double value);
    3723     partial void OnStartToEndTimeMsChanged();
    3724     #endregion
    3725    
    3726     public UserStatistics()
    3727     {
    3728       this._Statistics = default(EntityRef<Statistics>);
    3729       OnCreated();
    3730     }
    3731    
    3732     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StatisticsId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    3733     public System.Guid StatisticsId
    3734     {
    3735       get
    3736       {
    3737         return this._StatisticsId;
    3738       }
    3739       set
    3740       {
    3741         if ((this._StatisticsId != value))
    3742         {
    3743           if (this._Statistics.HasLoadedOrAssignedValue)
    3744           {
    3745             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    3746           }
    3747           this.OnStatisticsIdChanging(value);
    3748           this.SendPropertyChanging();
    3749           this._StatisticsId = value;
    3750           this.SendPropertyChanged("StatisticsId");
    3751           this.OnStatisticsIdChanged();
    3752         }
    3753       }
    3754     }
    3755    
    3756     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    3757     public System.Guid UserId
    3758     {
    3759       get
    3760       {
    3761         return this._UserId;
    3762       }
    3763       set
    3764       {
    3765         if ((this._UserId != value))
    3766         {
    3767           this.OnUserIdChanging(value);
    3768           this.SendPropertyChanging();
    3769           this._UserId = value;
    3770           this.SendPropertyChanged("UserId");
    3771           this.OnUserIdChanged();
    3772         }
    3773       }
    3774     }
    3775    
    3776     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExecutionTime", DbType="float NOT NULL")]
    3777     public double ExecutionTimeMs
    3778     {
    3779       get
    3780       {
    3781         return this._ExecutionTime;
    3782       }
    3783       set
    3784       {
    3785         if ((this._ExecutionTime != value))
    3786         {
    3787           this.OnExecutionTimeMsChanging(value);
    3788           this.SendPropertyChanging();
    3789           this._ExecutionTime = value;
    3790           this.SendPropertyChanged("ExecutionTimeMs");
    3791           this.OnExecutionTimeMsChanged();
    3792         }
    3793       }
    3794     }
    3795    
    3796     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CoresUsed", DbType="Int NOT NULL")]
    3797     public int UsedCores
    3798     {
    3799       get
    3800       {
    3801         return this._CoresUsed;
    3802       }
    3803       set
    3804       {
    3805         if ((this._CoresUsed != value))
    3806         {
    3807           this.OnUsedCoresChanging(value);
    3808           this.SendPropertyChanging();
    3809           this._CoresUsed = value;
    3810           this.SendPropertyChanged("UsedCores");
    3811           this.OnUsedCoresChanged();
    3812         }
    3813       }
    3814     }
    3815    
    3816     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExecutionTimeFinishedJobs", DbType="float NOT NULL")]
    3817     public double ExecutionTimeMsFinishedJobs
    3818     {
    3819       get
    3820       {
    3821         return this._ExecutionTimeFinishedJobs;
    3822       }
    3823       set
    3824       {
    3825         if ((this._ExecutionTimeFinishedJobs != value))
    3826         {
    3827           this.OnExecutionTimeMsFinishedJobsChanging(value);
    3828           this.SendPropertyChanging();
    3829           this._ExecutionTimeFinishedJobs = value;
    3830           this.SendPropertyChanged("ExecutionTimeMsFinishedJobs");
    3831           this.OnExecutionTimeMsFinishedJobsChanged();
    3832         }
    3833       }
    3834     }
    3835    
    3836     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StartToEndTime", DbType="float NOT NULL")]
    3837     public double StartToEndTimeMs
    3838     {
    3839       get
    3840       {
    3841         return this._StartToEndTime;
    3842       }
    3843       set
    3844       {
    3845         if ((this._StartToEndTime != value))
    3846         {
    3847           this.OnStartToEndTimeMsChanging(value);
    3848           this.SendPropertyChanging();
    3849           this._StartToEndTime = value;
    3850           this.SendPropertyChanged("StartToEndTimeMs");
    3851           this.OnStartToEndTimeMsChanged();
    3852         }
    3853       }
    3854     }
    3855    
    3856     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Statistics_UserStatistics", Storage="_Statistics", ThisKey="StatisticsId", OtherKey="StatisticsId", IsForeignKey=true)]
    3857     public Statistics Statistics
    3858     {
    3859       get
    3860       {
    3861         return this._Statistics.Entity;
    3862       }
    3863       set
    3864       {
    3865         Statistics previousValue = this._Statistics.Entity;
    3866         if (((previousValue != value)
    3867               || (this._Statistics.HasLoadedOrAssignedValue == false)))
    3868         {
    3869           this.SendPropertyChanging();
    3870           if ((previousValue != null))
    3871           {
    3872             this._Statistics.Entity = null;
    3873             previousValue.UserStatistics.Remove(this);
    3874           }
    3875           this._Statistics.Entity = value;
    3876           if ((value != null))
    3877           {
    3878             value.UserStatistics.Add(this);
    3879             this._StatisticsId = value.StatisticsId;
    3880           }
    3881           else
    3882           {
    3883             this._StatisticsId = default(System.Guid);
    3884           }
    3885           this.SendPropertyChanged("Statistics");
    3886         }
    3887       }
    3888     }
    3889    
    3890     public event PropertyChangingEventHandler PropertyChanging;
    3891    
    3892     public event PropertyChangedEventHandler PropertyChanged;
    3893    
    3894     protected virtual void SendPropertyChanging()
    3895     {
    3896       if ((this.PropertyChanging != null))
    3897       {
    3898         this.PropertyChanging(this, emptyChangingEventArgs);
    3899       }
    3900     }
    3901    
    3902     protected virtual void SendPropertyChanged(String propertyName)
    3903     {
    3904       if ((this.PropertyChanged != null))
    3905       {
    3906         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    3907       }
    3908     }
    3909   }
    3910  
    3911   [global::System.Data.Linq.Mapping.TableAttribute(Name="")]
    3912   public partial class SlaveStatistics : INotifyPropertyChanging, INotifyPropertyChanged
    3913   {
    3914    
    3915     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    3916    
    3917     private System.Guid _StatisticsId;
    3918    
    3919     private System.Guid _SlaveId;
    3920    
    3921     private int _Cores;
    3922    
    3923     private int _FreeCores;
    3924    
    3925     private double _CpuUtilization;
    3926    
    3927     private int _Memory;
    3928    
    3929     private int _FreeMemory;
    3930    
    3931     private EntityRef<Statistics> _Statistics;
    3932    
    3933     #region Extensibility Method Definitions
    3934     partial void OnLoaded();
    3935     partial void OnValidate(System.Data.Linq.ChangeAction action);
    3936     partial void OnCreated();
    3937     partial void OnStatisticsIdChanging(System.Guid value);
    3938     partial void OnStatisticsIdChanged();
    3939     partial void OnSlaveIdChanging(System.Guid value);
    3940     partial void OnSlaveIdChanged();
    3941     partial void OnCoresChanging(int value);
    3942     partial void OnCoresChanged();
    3943     partial void OnFreeCoresChanging(int value);
    3944     partial void OnFreeCoresChanged();
    3945     partial void OnCpuUtilizationChanging(double value);
    3946     partial void OnCpuUtilizationChanged();
    3947     partial void OnMemoryChanging(int value);
    3948     partial void OnMemoryChanged();
    3949     partial void OnFreeMemoryChanging(int value);
    3950     partial void OnFreeMemoryChanged();
    3951     #endregion
    3952    
    3953     public SlaveStatistics()
    3954     {
    3955       this._Statistics = default(EntityRef<Statistics>);
    3956       OnCreated();
    3957     }
    3958    
    3959     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StatisticsId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    3960     public System.Guid StatisticsId
    3961     {
    3962       get
    3963       {
    3964         return this._StatisticsId;
    3965       }
    3966       set
    3967       {
    3968         if ((this._StatisticsId != value))
    3969         {
    3970           if (this._Statistics.HasLoadedOrAssignedValue)
    3971           {
    3972             throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
    3973           }
    3974           this.OnStatisticsIdChanging(value);
    3975           this.SendPropertyChanging();
    3976           this._StatisticsId = value;
    3977           this.SendPropertyChanged("StatisticsId");
    3978           this.OnStatisticsIdChanged();
    3979         }
    3980       }
    3981     }
    3982    
    3983     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SlaveId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
    3984     public System.Guid SlaveId
    3985     {
    3986       get
    3987       {
    3988         return this._SlaveId;
    3989       }
    3990       set
    3991       {
    3992         if ((this._SlaveId != value))
    3993         {
    3994           this.OnSlaveIdChanging(value);
    3995           this.SendPropertyChanging();
    3996           this._SlaveId = value;
    3997           this.SendPropertyChanged("SlaveId");
    3998           this.OnSlaveIdChanged();
    3999         }
    4000       }
    4001     }
    4002    
    4003     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Cores", DbType="Int NOT NULL")]
    4004     public int Cores
    4005     {
    4006       get
    4007       {
    4008         return this._Cores;
    4009       }
    4010       set
    4011       {
    4012         if ((this._Cores != value))
    4013         {
    4014           this.OnCoresChanging(value);
    4015           this.SendPropertyChanging();
    4016           this._Cores = value;
    4017           this.SendPropertyChanged("Cores");
    4018           this.OnCoresChanged();
    4019         }
    4020       }
    4021     }
    4022    
    4023     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FreeCores", DbType="Int NOT NULL")]
    4024     public int FreeCores
    4025     {
    4026       get
    4027       {
    4028         return this._FreeCores;
    4029       }
    4030       set
    4031       {
    4032         if ((this._FreeCores != value))
    4033         {
    4034           this.OnFreeCoresChanging(value);
    4035           this.SendPropertyChanging();
    4036           this._FreeCores = value;
    4037           this.SendPropertyChanged("FreeCores");
    4038           this.OnFreeCoresChanged();
    4039         }
    4040       }
    4041     }
    4042    
    4043     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CpuUtilization", DbType="float NOT NULL")]
    4044     public double CpuUtilization
    4045     {
    4046       get
    4047       {
    4048         return this._CpuUtilization;
    4049       }
    4050       set
    4051       {
    4052         if ((this._CpuUtilization != value))
    4053         {
    4054           this.OnCpuUtilizationChanging(value);
    4055           this.SendPropertyChanging();
    4056           this._CpuUtilization = value;
    4057           this.SendPropertyChanged("CpuUtilization");
    4058           this.OnCpuUtilizationChanged();
    4059         }
    4060       }
    4061     }
    4062    
    4063     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Memory", DbType="Int NOT NULL")]
    4064     public int Memory
    4065     {
    4066       get
    4067       {
    4068         return this._Memory;
    4069       }
    4070       set
    4071       {
    4072         if ((this._Memory != value))
    4073         {
    4074           this.OnMemoryChanging(value);
    4075           this.SendPropertyChanging();
    4076           this._Memory = value;
    4077           this.SendPropertyChanged("Memory");
    4078           this.OnMemoryChanged();
    4079         }
    4080       }
    4081     }
    4082    
    4083     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FreeMemory", DbType="Int NOT NULL")]
    4084     public int FreeMemory
    4085     {
    4086       get
    4087       {
    4088         return this._FreeMemory;
    4089       }
    4090       set
    4091       {
    4092         if ((this._FreeMemory != value))
    4093         {
    4094           this.OnFreeMemoryChanging(value);
    4095           this.SendPropertyChanging();
    4096           this._FreeMemory = value;
    4097           this.SendPropertyChanged("FreeMemory");
    4098           this.OnFreeMemoryChanged();
    4099         }
    4100       }
    4101     }
    4102    
    4103     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Statistics_SlaveStatistics", Storage="_Statistics", ThisKey="StatisticsId", OtherKey="StatisticsId", IsForeignKey=true)]
    4104     public Statistics Statistics
    4105     {
    4106       get
    4107       {
    4108         return this._Statistics.Entity;
    4109       }
    4110       set
    4111       {
    4112         Statistics previousValue = this._Statistics.Entity;
    4113         if (((previousValue != value)
    4114               || (this._Statistics.HasLoadedOrAssignedValue == false)))
    4115         {
    4116           this.SendPropertyChanging();
    4117           if ((previousValue != null))
    4118           {
    4119             this._Statistics.Entity = null;
    4120             previousValue.SlaveStatistics.Remove(this);
    4121           }
    4122           this._Statistics.Entity = value;
    4123           if ((value != null))
    4124           {
    4125             value.SlaveStatistics.Add(this);
    4126             this._StatisticsId = value.StatisticsId;
    4127           }
    4128           else
    4129           {
    4130             this._StatisticsId = default(System.Guid);
    4131           }
    4132           this.SendPropertyChanged("Statistics");
    4133         }
    4134       }
    4135     }
    4136    
    4137     public event PropertyChangingEventHandler PropertyChanging;
    4138    
    4139     public event PropertyChangedEventHandler PropertyChanged;
    4140    
    4141     protected virtual void SendPropertyChanging()
    4142     {
    4143       if ((this.PropertyChanging != null))
    4144       {
    4145         this.PropertyChanging(this, emptyChangingEventArgs);
    4146       }
    4147     }
    4148    
    4149     protected virtual void SendPropertyChanged(String propertyName)
    4150     {
    4151       if ((this.PropertyChanged != null))
    4152       {
    4153         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    4154       }
    4155     }
    4156   }
    4157  
    4158   [global::System.Data.Linq.Mapping.TableAttribute(Name="")]
    4159   public partial class Statistics : INotifyPropertyChanging, INotifyPropertyChanged
    4160   {
    4161    
    4162     private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
    4163    
    4164     private System.Guid _StatisticsId;
    4165    
    4166     private System.DateTime _Timestamp;
    4167    
    4168     private EntitySet<UserStatistics> _UserStatistics;
    4169    
    4170     private EntitySet<SlaveStatistics> _SlaveStatistics;
    4171    
    4172     #region Extensibility Method Definitions
    4173     partial void OnLoaded();
    4174     partial void OnValidate(System.Data.Linq.ChangeAction action);
    4175     partial void OnCreated();
    4176     partial void OnStatisticsIdChanging(System.Guid value);
    4177     partial void OnStatisticsIdChanged();
    4178     partial void OnTimestampChanging(System.DateTime value);
    4179     partial void OnTimestampChanged();
    4180     #endregion
    4181    
    4182     public Statistics()
    4183     {
    4184       this._UserStatistics = new EntitySet<UserStatistics>(new Action<UserStatistics>(this.attach_UserStatistics), new Action<UserStatistics>(this.detach_UserStatistics));
    4185       this._SlaveStatistics = new EntitySet<SlaveStatistics>(new Action<SlaveStatistics>(this.attach_SlaveStatistics), new Action<SlaveStatistics>(this.detach_SlaveStatistics));
    4186       OnCreated();
    4187     }
    4188    
    4189     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StatisticsId", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
    4190     public System.Guid StatisticsId
    4191     {
    4192       get
    4193       {
    4194         return this._StatisticsId;
    4195       }
    4196       set
    4197       {
    4198         if ((this._StatisticsId != value))
    4199         {
    4200           this.OnStatisticsIdChanging(value);
    4201           this.SendPropertyChanging();
    4202           this._StatisticsId = value;
    4203           this.SendPropertyChanged("StatisticsId");
    4204           this.OnStatisticsIdChanged();
    4205         }
    4206       }
    4207     }
    4208    
    4209     [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp")]
    4210     public System.DateTime Timestamp
    4211     {
    4212       get
    4213       {
    4214         return this._Timestamp;
    4215       }
    4216       set
    4217       {
    4218         if ((this._Timestamp != value))
    4219         {
    4220           this.OnTimestampChanging(value);
    4221           this.SendPropertyChanging();
    4222           this._Timestamp = value;
    4223           this.SendPropertyChanged("Timestamp");
    4224           this.OnTimestampChanged();
    4225         }
    4226       }
    4227     }
    4228    
    4229     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Statistics_UserStatistics", Storage="_UserStatistics", ThisKey="StatisticsId", OtherKey="StatisticsId")]
    4230     public EntitySet<UserStatistics> UserStatistics
    4231     {
    4232       get
    4233       {
    4234         return this._UserStatistics;
    4235       }
    4236       set
    4237       {
    4238         this._UserStatistics.Assign(value);
    4239       }
    4240     }
    4241    
    4242     [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Statistics_SlaveStatistics", Storage="_SlaveStatistics", ThisKey="StatisticsId", OtherKey="StatisticsId")]
    4243     public EntitySet<SlaveStatistics> SlaveStatistics
    4244     {
    4245       get
    4246       {
    4247         return this._SlaveStatistics;
    4248       }
    4249       set
    4250       {
    4251         this._SlaveStatistics.Assign(value);
    4252       }
    4253     }
    4254    
    4255     public event PropertyChangingEventHandler PropertyChanging;
    4256    
    4257     public event PropertyChangedEventHandler PropertyChanged;
    4258    
    4259     protected virtual void SendPropertyChanging()
    4260     {
    4261       if ((this.PropertyChanging != null))
    4262       {
    4263         this.PropertyChanging(this, emptyChangingEventArgs);
    4264       }
    4265     }
    4266    
    4267     protected virtual void SendPropertyChanged(String propertyName)
    4268     {
    4269       if ((this.PropertyChanged != null))
    4270       {
    4271         this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    4272       }
    4273     }
    4274    
    4275     private void attach_UserStatistics(UserStatistics entity)
    4276     {
    4277       this.SendPropertyChanging();
    4278       entity.Statistics = this;
    4279     }
    4280    
    4281     private void detach_UserStatistics(UserStatistics entity)
    4282     {
    4283       this.SendPropertyChanging();
    4284       entity.Statistics = null;
    4285     }
    4286    
    4287     private void attach_SlaveStatistics(SlaveStatistics entity)
    4288     {
    4289       this.SendPropertyChanging();
    4290       entity.Statistics = this;
    4291     }
    4292    
    4293     private void detach_SlaveStatistics(SlaveStatistics entity)
    4294     {
    4295       this.SendPropertyChanging();
    4296       entity.Statistics = null;
    4297     }
    4298   }
    4299  
    43003528  [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ResourcePermission")]
    43013529  public partial class ResourcePermission : INotifyPropertyChanging, INotifyPropertyChanged
     
    45343762    }
    45353763  }
     3764 
     3765  [global::System.Data.Linq.Mapping.TableAttribute(Name="[statistics].DimClient")]
     3766  public partial class DimClient : INotifyPropertyChanging, INotifyPropertyChanged
     3767  {
     3768   
     3769    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     3770   
     3771    private System.Guid _Id;
     3772   
     3773    private string _Name;
     3774   
     3775    private System.Guid _ResourceId;
     3776   
     3777    private System.Nullable<System.DateTime> _ExpirationTime;
     3778   
     3779    private System.Nullable<System.Guid> _ResourceGroupId;
     3780   
     3781    private System.Nullable<System.Guid> _ResourceGroup2Id;
     3782   
     3783    private string _GroupName;
     3784   
     3785    private string _GroupName2;
     3786   
     3787    private EntitySet<FactTask> _FactTasks;
     3788   
     3789    private EntitySet<FactClientInfo> _FactClientInfos;
     3790   
     3791    #region Extensibility Method Definitions
     3792    partial void OnLoaded();
     3793    partial void OnValidate(System.Data.Linq.ChangeAction action);
     3794    partial void OnCreated();
     3795    partial void OnIdChanging(System.Guid value);
     3796    partial void OnIdChanged();
     3797    partial void OnNameChanging(string value);
     3798    partial void OnNameChanged();
     3799    partial void OnResourceIdChanging(System.Guid value);
     3800    partial void OnResourceIdChanged();
     3801    partial void OnExpirationTimeChanging(System.Nullable<System.DateTime> value);
     3802    partial void OnExpirationTimeChanged();
     3803    partial void OnResourceGroupIdChanging(System.Nullable<System.Guid> value);
     3804    partial void OnResourceGroupIdChanged();
     3805    partial void OnResourceGroup2IdChanging(System.Nullable<System.Guid> value);
     3806    partial void OnResourceGroup2IdChanged();
     3807    partial void OnGroupNameChanging(string value);
     3808    partial void OnGroupNameChanged();
     3809    partial void OnGroupName2Changing(string value);
     3810    partial void OnGroupName2Changed();
     3811    #endregion
     3812   
     3813    public DimClient()
     3814    {
     3815      this._FactTasks = new EntitySet<FactTask>(new Action<FactTask>(this.attach_FactTasks), new Action<FactTask>(this.detach_FactTasks));
     3816      this._FactClientInfos = new EntitySet<FactClientInfo>(new Action<FactClientInfo>(this.attach_FactClientInfos), new Action<FactClientInfo>(this.detach_FactClientInfos));
     3817      OnCreated();
     3818    }
     3819   
     3820    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
     3821    public System.Guid Id
     3822    {
     3823      get
     3824      {
     3825        return this._Id;
     3826      }
     3827      set
     3828      {
     3829        if ((this._Id != value))
     3830        {
     3831          this.OnIdChanging(value);
     3832          this.SendPropertyChanging();
     3833          this._Id = value;
     3834          this.SendPropertyChanged("Id");
     3835          this.OnIdChanged();
     3836        }
     3837      }
     3838    }
     3839   
     3840    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="VarChar(MAX) NOT NULL", CanBeNull=false)]
     3841    public string Name
     3842    {
     3843      get
     3844      {
     3845        return this._Name;
     3846      }
     3847      set
     3848      {
     3849        if ((this._Name != value))
     3850        {
     3851          this.OnNameChanging(value);
     3852          this.SendPropertyChanging();
     3853          this._Name = value;
     3854          this.SendPropertyChanged("Name");
     3855          this.OnNameChanged();
     3856        }
     3857      }
     3858    }
     3859   
     3860    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL")]
     3861    public System.Guid ResourceId
     3862    {
     3863      get
     3864      {
     3865        return this._ResourceId;
     3866      }
     3867      set
     3868      {
     3869        if ((this._ResourceId != value))
     3870        {
     3871          this.OnResourceIdChanging(value);
     3872          this.SendPropertyChanging();
     3873          this._ResourceId = value;
     3874          this.SendPropertyChanged("ResourceId");
     3875          this.OnResourceIdChanged();
     3876        }
     3877      }
     3878    }
     3879   
     3880    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ExpirationTime", DbType="DateTime")]
     3881    public System.Nullable<System.DateTime> ExpirationTime
     3882    {
     3883      get
     3884      {
     3885        return this._ExpirationTime;
     3886      }
     3887      set
     3888      {
     3889        if ((this._ExpirationTime != value))
     3890        {
     3891          this.OnExpirationTimeChanging(value);
     3892          this.SendPropertyChanging();
     3893          this._ExpirationTime = value;
     3894          this.SendPropertyChanged("ExpirationTime");
     3895          this.OnExpirationTimeChanged();
     3896        }
     3897      }
     3898    }
     3899   
     3900    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceGroupId", DbType="UniqueIdentifier")]
     3901    public System.Nullable<System.Guid> ResourceGroupId
     3902    {
     3903      get
     3904      {
     3905        return this._ResourceGroupId;
     3906      }
     3907      set
     3908      {
     3909        if ((this._ResourceGroupId != value))
     3910        {
     3911          this.OnResourceGroupIdChanging(value);
     3912          this.SendPropertyChanging();
     3913          this._ResourceGroupId = value;
     3914          this.SendPropertyChanged("ResourceGroupId");
     3915          this.OnResourceGroupIdChanged();
     3916        }
     3917      }
     3918    }
     3919   
     3920    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceGroup2Id", DbType="UniqueIdentifier")]
     3921    public System.Nullable<System.Guid> ResourceGroup2Id
     3922    {
     3923      get
     3924      {
     3925        return this._ResourceGroup2Id;
     3926      }
     3927      set
     3928      {
     3929        if ((this._ResourceGroup2Id != value))
     3930        {
     3931          this.OnResourceGroup2IdChanging(value);
     3932          this.SendPropertyChanging();
     3933          this._ResourceGroup2Id = value;
     3934          this.SendPropertyChanged("ResourceGroup2Id");
     3935          this.OnResourceGroup2IdChanged();
     3936        }
     3937      }
     3938    }
     3939   
     3940    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GroupName")]
     3941    public string GroupName
     3942    {
     3943      get
     3944      {
     3945        return this._GroupName;
     3946      }
     3947      set
     3948      {
     3949        if ((this._GroupName != value))
     3950        {
     3951          this.OnGroupNameChanging(value);
     3952          this.SendPropertyChanging();
     3953          this._GroupName = value;
     3954          this.SendPropertyChanged("GroupName");
     3955          this.OnGroupNameChanged();
     3956        }
     3957      }
     3958    }
     3959   
     3960    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GroupName2")]
     3961    public string GroupName2
     3962    {
     3963      get
     3964      {
     3965        return this._GroupName2;
     3966      }
     3967      set
     3968      {
     3969        if ((this._GroupName2 != value))
     3970        {
     3971          this.OnGroupName2Changing(value);
     3972          this.SendPropertyChanging();
     3973          this._GroupName2 = value;
     3974          this.SendPropertyChanged("GroupName2");
     3975          this.OnGroupName2Changed();
     3976        }
     3977      }
     3978    }
     3979   
     3980    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimClient_FactTask", Storage="_FactTasks", ThisKey="Id", OtherKey="LastClientId")]
     3981    public EntitySet<FactTask> FactTasks
     3982    {
     3983      get
     3984      {
     3985        return this._FactTasks;
     3986      }
     3987      set
     3988      {
     3989        this._FactTasks.Assign(value);
     3990      }
     3991    }
     3992   
     3993    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimClient_FactClientInfo", Storage="_FactClientInfos", ThisKey="Id", OtherKey="ClientId")]
     3994    public EntitySet<FactClientInfo> FactClientInfos
     3995    {
     3996      get
     3997      {
     3998        return this._FactClientInfos;
     3999      }
     4000      set
     4001      {
     4002        this._FactClientInfos.Assign(value);
     4003      }
     4004    }
     4005   
     4006    public event PropertyChangingEventHandler PropertyChanging;
     4007   
     4008    public event PropertyChangedEventHandler PropertyChanged;
     4009   
     4010    protected virtual void SendPropertyChanging()
     4011    {
     4012      if ((this.PropertyChanging != null))
     4013      {
     4014        this.PropertyChanging(this, emptyChangingEventArgs);
     4015      }
     4016    }
     4017   
     4018    protected virtual void SendPropertyChanged(String propertyName)
     4019    {
     4020      if ((this.PropertyChanged != null))
     4021      {
     4022        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     4023      }
     4024    }
     4025   
     4026    private void attach_FactTasks(FactTask entity)
     4027    {
     4028      this.SendPropertyChanging();
     4029      entity.DimClient = this;
     4030    }
     4031   
     4032    private void detach_FactTasks(FactTask entity)
     4033    {
     4034      this.SendPropertyChanging();
     4035      entity.DimClient = null;
     4036    }
     4037   
     4038    private void attach_FactClientInfos(FactClientInfo entity)
     4039    {
     4040      this.SendPropertyChanging();
     4041      entity.DimClient = this;
     4042    }
     4043   
     4044    private void detach_FactClientInfos(FactClientInfo entity)
     4045    {
     4046      this.SendPropertyChanging();
     4047      entity.DimClient = null;
     4048    }
     4049  }
     4050 
     4051  [global::System.Data.Linq.Mapping.TableAttribute(Name="[statistics].FactTask")]
     4052  public partial class FactTask : INotifyPropertyChanging, INotifyPropertyChanged
     4053  {
     4054   
     4055    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     4056   
     4057    private System.Guid _TaskId;
     4058   
     4059    private long _TotalRuntime;
     4060   
     4061    private long _TotalWaitingTime;
     4062   
     4063    private long _TotalTransferTime;
     4064   
     4065    private int _NumCalculationRuns;
     4066   
     4067    private int _NumFails;
     4068   
     4069    private int _CoresRequired;
     4070   
     4071    private int _MemoryRequired;
     4072   
     4073    private int _Priority;
     4074   
     4075    private System.Nullable<System.Guid> _LastClientId;
     4076   
     4077    private System.Guid _JobId;
     4078   
     4079    private System.Nullable<System.DateTime> _EndTime;
     4080   
     4081    private global::HeuristicLab.Services.Hive.DataAccess.TaskState _TaskState;
     4082   
     4083    private string _Exception;
     4084   
     4085    private long _InitialWaitingTimeMs;
     4086   
     4087    private System.Nullable<System.DateTime> _StartTime;
     4088   
     4089    private EntityRef<DimClient> _DimClient;
     4090   
     4091    private EntityRef<DimJob> _DimJob;
     4092   
     4093    #region Extensibility Method Definitions
     4094    partial void OnLoaded();
     4095    partial void OnValidate(System.Data.Linq.ChangeAction action);
     4096    partial void OnCreated();
     4097    partial void OnTaskIdChanging(System.Guid value);
     4098    partial void OnTaskIdChanged();
     4099    partial void OnCalculatingTimeChanging(long value);
     4100    partial void OnCalculatingTimeChanged();
     4101    partial void OnWaitingTimeChanging(long value);
     4102    partial void OnWaitingTimeChanged();
     4103    partial void OnTransferTimeChanging(long value);
     4104    partial void OnTransferTimeChanged();
     4105    partial void OnNumCalculationRunsChanging(int value);
     4106    partial void OnNumCalculationRunsChanged();
     4107    partial void OnNumRetriesChanging(int value);
     4108    partial void OnNumRetriesChanged();
     4109    partial void OnCoresRequiredChanging(int value);
     4110    partial void OnCoresRequiredChanged();
     4111    partial void OnMemoryRequiredChanging(int value);
     4112    partial void OnMemoryRequiredChanged();
     4113    partial void OnPriorityChanging(int value);
     4114    partial void OnPriorityChanged();
     4115    partial void OnLastClientIdChanging(System.Nullable<System.Guid> value);
     4116    partial void OnLastClientIdChanged();
     4117    partial void OnJobIdChanging(System.Guid value);
     4118    partial void OnJobIdChanged();
     4119    partial void OnEndTimeChanging(System.Nullable<System.DateTime> value);
     4120    partial void OnEndTimeChanged();
     4121    partial void OnTaskStateChanging(global::HeuristicLab.Services.Hive.DataAccess.TaskState value);
     4122    partial void OnTaskStateChanged();
     4123    partial void OnExceptionChanging(string value);
     4124    partial void OnExceptionChanged();
     4125    partial void OnInitialWaitingTimeChanging(long value);
     4126    partial void OnInitialWaitingTimeChanged();
     4127    partial void OnStartTimeChanging(System.Nullable<System.DateTime> value);
     4128    partial void OnStartTimeChanged();
     4129    #endregion
     4130   
     4131    public FactTask()
     4132    {
     4133      this._DimClient = default(EntityRef<DimClient>);
     4134      this._DimJob = default(EntityRef<DimJob>);
     4135      OnCreated();
     4136    }
     4137   
     4138    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TaskId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
     4139    public System.Guid TaskId
     4140    {
     4141      get
     4142      {
     4143        return this._TaskId;
     4144      }
     4145      set
     4146      {
     4147        if ((this._TaskId != value))
     4148        {
     4149          this.OnTaskIdChanging(value);
     4150          this.SendPropertyChanging();
     4151          this._TaskId = value;
     4152          this.SendPropertyChanged("TaskId");
     4153          this.OnTaskIdChanged();
     4154        }
     4155      }
     4156    }
     4157   
     4158    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalRuntime", DbType="INT NOT NULL")]
     4159    public long CalculatingTime
     4160    {
     4161      get
     4162      {
     4163        return this._TotalRuntime;
     4164      }
     4165      set
     4166      {
     4167        if ((this._TotalRuntime != value))
     4168        {
     4169          this.OnCalculatingTimeChanging(value);
     4170          this.SendPropertyChanging();
     4171          this._TotalRuntime = value;
     4172          this.SendPropertyChanged("CalculatingTime");
     4173          this.OnCalculatingTimeChanged();
     4174        }
     4175      }
     4176    }
     4177   
     4178    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalWaitingTime", DbType="INT NOT NULL")]
     4179    public long WaitingTime
     4180    {
     4181      get
     4182      {
     4183        return this._TotalWaitingTime;
     4184      }
     4185      set
     4186      {
     4187        if ((this._TotalWaitingTime != value))
     4188        {
     4189          this.OnWaitingTimeChanging(value);
     4190          this.SendPropertyChanging();
     4191          this._TotalWaitingTime = value;
     4192          this.SendPropertyChanged("WaitingTime");
     4193          this.OnWaitingTimeChanged();
     4194        }
     4195      }
     4196    }
     4197   
     4198    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalTransferTime", DbType="INT NOT NULL")]
     4199    public long TransferTime
     4200    {
     4201      get
     4202      {
     4203        return this._TotalTransferTime;
     4204      }
     4205      set
     4206      {
     4207        if ((this._TotalTransferTime != value))
     4208        {
     4209          this.OnTransferTimeChanging(value);
     4210          this.SendPropertyChanging();
     4211          this._TotalTransferTime = value;
     4212          this.SendPropertyChanged("TransferTime");
     4213          this.OnTransferTimeChanged();
     4214        }
     4215      }
     4216    }
     4217   
     4218    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumCalculationRuns", DbType="Int NOT NULL")]
     4219    public int NumCalculationRuns
     4220    {
     4221      get
     4222      {
     4223        return this._NumCalculationRuns;
     4224      }
     4225      set
     4226      {
     4227        if ((this._NumCalculationRuns != value))
     4228        {
     4229          this.OnNumCalculationRunsChanging(value);
     4230          this.SendPropertyChanging();
     4231          this._NumCalculationRuns = value;
     4232          this.SendPropertyChanged("NumCalculationRuns");
     4233          this.OnNumCalculationRunsChanged();
     4234        }
     4235      }
     4236    }
     4237   
     4238    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumFails", DbType="Int NOT NULL")]
     4239    public int NumRetries
     4240    {
     4241      get
     4242      {
     4243        return this._NumFails;
     4244      }
     4245      set
     4246      {
     4247        if ((this._NumFails != value))
     4248        {
     4249          this.OnNumRetriesChanging(value);
     4250          this.SendPropertyChanging();
     4251          this._NumFails = value;
     4252          this.SendPropertyChanged("NumRetries");
     4253          this.OnNumRetriesChanged();
     4254        }
     4255      }
     4256    }
     4257   
     4258    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CoresRequired", DbType="Int NOT NULL")]
     4259    public int CoresRequired
     4260    {
     4261      get
     4262      {
     4263        return this._CoresRequired;
     4264      }
     4265      set
     4266      {
     4267        if ((this._CoresRequired != value))
     4268        {
     4269          this.OnCoresRequiredChanging(value);
     4270          this.SendPropertyChanging();
     4271          this._CoresRequired = value;
     4272          this.SendPropertyChanged("CoresRequired");
     4273          this.OnCoresRequiredChanged();
     4274        }
     4275      }
     4276    }
     4277   
     4278    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MemoryRequired", DbType="Int NOT NULL")]
     4279    public int MemoryRequired
     4280    {
     4281      get
     4282      {
     4283        return this._MemoryRequired;
     4284      }
     4285      set
     4286      {
     4287        if ((this._MemoryRequired != value))
     4288        {
     4289          this.OnMemoryRequiredChanging(value);
     4290          this.SendPropertyChanging();
     4291          this._MemoryRequired = value;
     4292          this.SendPropertyChanged("MemoryRequired");
     4293          this.OnMemoryRequiredChanged();
     4294        }
     4295      }
     4296    }
     4297   
     4298    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Priority", DbType="Int NOT NULL")]
     4299    public int Priority
     4300    {
     4301      get
     4302      {
     4303        return this._Priority;
     4304      }
     4305      set
     4306      {
     4307        if ((this._Priority != value))
     4308        {
     4309          this.OnPriorityChanging(value);
     4310          this.SendPropertyChanging();
     4311          this._Priority = value;
     4312          this.SendPropertyChanged("Priority");
     4313          this.OnPriorityChanged();
     4314        }
     4315      }
     4316    }
     4317   
     4318    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LastClientId", DbType="UniqueIdentifier NOT NULL")]
     4319    public System.Nullable<System.Guid> LastClientId
     4320    {
     4321      get
     4322      {
     4323        return this._LastClientId;
     4324      }
     4325      set
     4326      {
     4327        if ((this._LastClientId != value))
     4328        {
     4329          if (this._DimClient.HasLoadedOrAssignedValue)
     4330          {
     4331            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     4332          }
     4333          this.OnLastClientIdChanging(value);
     4334          this.SendPropertyChanging();
     4335          this._LastClientId = value;
     4336          this.SendPropertyChanged("LastClientId");
     4337          this.OnLastClientIdChanged();
     4338        }
     4339      }
     4340    }
     4341   
     4342    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobId", DbType="UniqueIdentifier NOT NULL")]
     4343    public System.Guid JobId
     4344    {
     4345      get
     4346      {
     4347        return this._JobId;
     4348      }
     4349      set
     4350      {
     4351        if ((this._JobId != value))
     4352        {
     4353          if (this._DimJob.HasLoadedOrAssignedValue)
     4354          {
     4355            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     4356          }
     4357          this.OnJobIdChanging(value);
     4358          this.SendPropertyChanging();
     4359          this._JobId = value;
     4360          this.SendPropertyChanged("JobId");
     4361          this.OnJobIdChanged();
     4362        }
     4363      }
     4364    }
     4365   
     4366    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_EndTime", DbType="DateTime NOT NULL")]
     4367    public System.Nullable<System.DateTime> EndTime
     4368    {
     4369      get
     4370      {
     4371        return this._EndTime;
     4372      }
     4373      set
     4374      {
     4375        if ((this._EndTime != value))
     4376        {
     4377          this.OnEndTimeChanging(value);
     4378          this.SendPropertyChanging();
     4379          this._EndTime = value;
     4380          this.SendPropertyChanged("EndTime");
     4381          this.OnEndTimeChanged();
     4382        }
     4383      }
     4384    }
     4385   
     4386    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TaskState", DbType="varchar(30)", CanBeNull=false)]
     4387    public global::HeuristicLab.Services.Hive.DataAccess.TaskState TaskState
     4388    {
     4389      get
     4390      {
     4391        return this._TaskState;
     4392      }
     4393      set
     4394      {
     4395        if ((this._TaskState != value))
     4396        {
     4397          this.OnTaskStateChanging(value);
     4398          this.SendPropertyChanging();
     4399          this._TaskState = value;
     4400          this.SendPropertyChanged("TaskState");
     4401          this.OnTaskStateChanged();
     4402        }
     4403      }
     4404    }
     4405   
     4406    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Exception", DbType="varchar(MAX)")]
     4407    public string Exception
     4408    {
     4409      get
     4410      {
     4411        return this._Exception;
     4412      }
     4413      set
     4414      {
     4415        if ((this._Exception != value))
     4416        {
     4417          this.OnExceptionChanging(value);
     4418          this.SendPropertyChanging();
     4419          this._Exception = value;
     4420          this.SendPropertyChanged("Exception");
     4421          this.OnExceptionChanged();
     4422        }
     4423      }
     4424    }
     4425   
     4426    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InitialWaitingTimeMs", DbType="INT")]
     4427    public long InitialWaitingTime
     4428    {
     4429      get
     4430      {
     4431        return this._InitialWaitingTimeMs;
     4432      }
     4433      set
     4434      {
     4435        if ((this._InitialWaitingTimeMs != value))
     4436        {
     4437          this.OnInitialWaitingTimeChanging(value);
     4438          this.SendPropertyChanging();
     4439          this._InitialWaitingTimeMs = value;
     4440          this.SendPropertyChanged("InitialWaitingTime");
     4441          this.OnInitialWaitingTimeChanged();
     4442        }
     4443      }
     4444    }
     4445   
     4446    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StartTime")]
     4447    public System.Nullable<System.DateTime> StartTime
     4448    {
     4449      get
     4450      {
     4451        return this._StartTime;
     4452      }
     4453      set
     4454      {
     4455        if ((this._StartTime != value))
     4456        {
     4457          this.OnStartTimeChanging(value);
     4458          this.SendPropertyChanging();
     4459          this._StartTime = value;
     4460          this.SendPropertyChanged("StartTime");
     4461          this.OnStartTimeChanged();
     4462        }
     4463      }
     4464    }
     4465   
     4466    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimClient_FactTask", Storage="_DimClient", ThisKey="LastClientId", OtherKey="Id", IsForeignKey=true)]
     4467    public DimClient DimClient
     4468    {
     4469      get
     4470      {
     4471        return this._DimClient.Entity;
     4472      }
     4473      set
     4474      {
     4475        DimClient previousValue = this._DimClient.Entity;
     4476        if (((previousValue != value)
     4477              || (this._DimClient.HasLoadedOrAssignedValue == false)))
     4478        {
     4479          this.SendPropertyChanging();
     4480          if ((previousValue != null))
     4481          {
     4482            this._DimClient.Entity = null;
     4483            previousValue.FactTasks.Remove(this);
     4484          }
     4485          this._DimClient.Entity = value;
     4486          if ((value != null))
     4487          {
     4488            value.FactTasks.Add(this);
     4489            this._LastClientId = value.Id;
     4490          }
     4491          else
     4492          {
     4493            this._LastClientId = default(Nullable<System.Guid>);
     4494          }
     4495          this.SendPropertyChanged("DimClient");
     4496        }
     4497      }
     4498    }
     4499   
     4500    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimJob_FactTask", Storage="_DimJob", ThisKey="JobId", OtherKey="JobId", IsForeignKey=true)]
     4501    public DimJob DimJob
     4502    {
     4503      get
     4504      {
     4505        return this._DimJob.Entity;
     4506      }
     4507      set
     4508      {
     4509        DimJob previousValue = this._DimJob.Entity;
     4510        if (((previousValue != value)
     4511              || (this._DimJob.HasLoadedOrAssignedValue == false)))
     4512        {
     4513          this.SendPropertyChanging();
     4514          if ((previousValue != null))
     4515          {
     4516            this._DimJob.Entity = null;
     4517            previousValue.FactTasks.Remove(this);
     4518          }
     4519          this._DimJob.Entity = value;
     4520          if ((value != null))
     4521          {
     4522            value.FactTasks.Add(this);
     4523            this._JobId = value.JobId;
     4524          }
     4525          else
     4526          {
     4527            this._JobId = default(System.Guid);
     4528          }
     4529          this.SendPropertyChanged("DimJob");
     4530        }
     4531      }
     4532    }
     4533   
     4534    public event PropertyChangingEventHandler PropertyChanging;
     4535   
     4536    public event PropertyChangedEventHandler PropertyChanged;
     4537   
     4538    protected virtual void SendPropertyChanging()
     4539    {
     4540      if ((this.PropertyChanging != null))
     4541      {
     4542        this.PropertyChanging(this, emptyChangingEventArgs);
     4543      }
     4544    }
     4545   
     4546    protected virtual void SendPropertyChanged(String propertyName)
     4547    {
     4548      if ((this.PropertyChanged != null))
     4549      {
     4550        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     4551      }
     4552    }
     4553  }
     4554 
     4555  [global::System.Data.Linq.Mapping.TableAttribute(Name="[statistics].DimJob")]
     4556  public partial class DimJob : INotifyPropertyChanging, INotifyPropertyChanged
     4557  {
     4558   
     4559    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     4560   
     4561    private System.Guid _JobId;
     4562   
     4563    private System.Guid _UserId;
     4564   
     4565    private string _JobName;
     4566   
     4567    private string _UserName;
     4568   
     4569    private System.DateTime _DateCreated;
     4570   
     4571    private int _TotalTasks;
     4572   
     4573    private int _CompletedTasks;
     4574   
     4575    private System.Nullable<System.DateTime> _DateCompleted;
     4576   
     4577    private EntitySet<FactTask> _FactTasks;
     4578   
     4579    #region Extensibility Method Definitions
     4580    partial void OnLoaded();
     4581    partial void OnValidate(System.Data.Linq.ChangeAction action);
     4582    partial void OnCreated();
     4583    partial void OnJobIdChanging(System.Guid value);
     4584    partial void OnJobIdChanged();
     4585    partial void OnUserIdChanging(System.Guid value);
     4586    partial void OnUserIdChanged();
     4587    partial void OnJobNameChanging(string value);
     4588    partial void OnJobNameChanged();
     4589    partial void OnUserNameChanging(string value);
     4590    partial void OnUserNameChanged();
     4591    partial void OnDateCreatedChanging(System.DateTime value);
     4592    partial void OnDateCreatedChanged();
     4593    partial void OnTotalTasksChanging(int value);
     4594    partial void OnTotalTasksChanged();
     4595    partial void OnCompletedTasksChanging(int value);
     4596    partial void OnCompletedTasksChanged();
     4597    partial void OnDateCompletedChanging(System.Nullable<System.DateTime> value);
     4598    partial void OnDateCompletedChanged();
     4599    #endregion
     4600   
     4601    public DimJob()
     4602    {
     4603      this._FactTasks = new EntitySet<FactTask>(new Action<FactTask>(this.attach_FactTasks), new Action<FactTask>(this.detach_FactTasks));
     4604      OnCreated();
     4605    }
     4606   
     4607    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
     4608    public System.Guid JobId
     4609    {
     4610      get
     4611      {
     4612        return this._JobId;
     4613      }
     4614      set
     4615      {
     4616        if ((this._JobId != value))
     4617        {
     4618          this.OnJobIdChanging(value);
     4619          this.SendPropertyChanging();
     4620          this._JobId = value;
     4621          this.SendPropertyChanged("JobId");
     4622          this.OnJobIdChanged();
     4623        }
     4624      }
     4625    }
     4626   
     4627    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL")]
     4628    public System.Guid UserId
     4629    {
     4630      get
     4631      {
     4632        return this._UserId;
     4633      }
     4634      set
     4635      {
     4636        if ((this._UserId != value))
     4637        {
     4638          this.OnUserIdChanging(value);
     4639          this.SendPropertyChanging();
     4640          this._UserId = value;
     4641          this.SendPropertyChanged("UserId");
     4642          this.OnUserIdChanged();
     4643        }
     4644      }
     4645    }
     4646   
     4647    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobName", DbType="VarChar(MAX) NOT NULL", CanBeNull=false)]
     4648    public string JobName
     4649    {
     4650      get
     4651      {
     4652        return this._JobName;
     4653      }
     4654      set
     4655      {
     4656        if ((this._JobName != value))
     4657        {
     4658          this.OnJobNameChanging(value);
     4659          this.SendPropertyChanging();
     4660          this._JobName = value;
     4661          this.SendPropertyChanged("JobName");
     4662          this.OnJobNameChanged();
     4663        }
     4664      }
     4665    }
     4666   
     4667    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserName", DbType="VarChar(MAX) NOT NULL", CanBeNull=false)]
     4668    public string UserName
     4669    {
     4670      get
     4671      {
     4672        return this._UserName;
     4673      }
     4674      set
     4675      {
     4676        if ((this._UserName != value))
     4677        {
     4678          this.OnUserNameChanging(value);
     4679          this.SendPropertyChanging();
     4680          this._UserName = value;
     4681          this.SendPropertyChanged("UserName");
     4682          this.OnUserNameChanged();
     4683        }
     4684      }
     4685    }
     4686   
     4687    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateCreated", DbType="DateTime NOT NULL")]
     4688    public System.DateTime DateCreated
     4689    {
     4690      get
     4691      {
     4692        return this._DateCreated;
     4693      }
     4694      set
     4695      {
     4696        if ((this._DateCreated != value))
     4697        {
     4698          this.OnDateCreatedChanging(value);
     4699          this.SendPropertyChanging();
     4700          this._DateCreated = value;
     4701          this.SendPropertyChanged("DateCreated");
     4702          this.OnDateCreatedChanged();
     4703        }
     4704      }
     4705    }
     4706   
     4707    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalTasks", DbType="INT NOT NULL")]
     4708    public int TotalTasks
     4709    {
     4710      get
     4711      {
     4712        return this._TotalTasks;
     4713      }
     4714      set
     4715      {
     4716        if ((this._TotalTasks != value))
     4717        {
     4718          this.OnTotalTasksChanging(value);
     4719          this.SendPropertyChanging();
     4720          this._TotalTasks = value;
     4721          this.SendPropertyChanged("TotalTasks");
     4722          this.OnTotalTasksChanged();
     4723        }
     4724      }
     4725    }
     4726   
     4727    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CompletedTasks", DbType="INT NOT NULL")]
     4728    public int CompletedTasks
     4729    {
     4730      get
     4731      {
     4732        return this._CompletedTasks;
     4733      }
     4734      set
     4735      {
     4736        if ((this._CompletedTasks != value))
     4737        {
     4738          this.OnCompletedTasksChanging(value);
     4739          this.SendPropertyChanging();
     4740          this._CompletedTasks = value;
     4741          this.SendPropertyChanged("CompletedTasks");
     4742          this.OnCompletedTasksChanged();
     4743        }
     4744      }
     4745    }
     4746   
     4747    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateCompleted", DbType="DateTime NULL")]
     4748    public System.Nullable<System.DateTime> DateCompleted
     4749    {
     4750      get
     4751      {
     4752        return this._DateCompleted;
     4753      }
     4754      set
     4755      {
     4756        if ((this._DateCompleted != value))
     4757        {
     4758          this.OnDateCompletedChanging(value);
     4759          this.SendPropertyChanging();
     4760          this._DateCompleted = value;
     4761          this.SendPropertyChanged("DateCompleted");
     4762          this.OnDateCompletedChanged();
     4763        }
     4764      }
     4765    }
     4766   
     4767    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimJob_FactTask", Storage="_FactTasks", ThisKey="JobId", OtherKey="JobId")]
     4768    public EntitySet<FactTask> FactTasks
     4769    {
     4770      get
     4771      {
     4772        return this._FactTasks;
     4773      }
     4774      set
     4775      {
     4776        this._FactTasks.Assign(value);
     4777      }
     4778    }
     4779   
     4780    public event PropertyChangingEventHandler PropertyChanging;
     4781   
     4782    public event PropertyChangedEventHandler PropertyChanged;
     4783   
     4784    protected virtual void SendPropertyChanging()
     4785    {
     4786      if ((this.PropertyChanging != null))
     4787      {
     4788        this.PropertyChanging(this, emptyChangingEventArgs);
     4789      }
     4790    }
     4791   
     4792    protected virtual void SendPropertyChanged(String propertyName)
     4793    {
     4794      if ((this.PropertyChanged != null))
     4795      {
     4796        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     4797      }
     4798    }
     4799   
     4800    private void attach_FactTasks(FactTask entity)
     4801    {
     4802      this.SendPropertyChanging();
     4803      entity.DimJob = this;
     4804    }
     4805   
     4806    private void detach_FactTasks(FactTask entity)
     4807    {
     4808      this.SendPropertyChanging();
     4809      entity.DimJob = null;
     4810    }
     4811  }
     4812 
     4813  [global::System.Data.Linq.Mapping.TableAttribute(Name="[statistics].DimTime")]
     4814  public partial class DimTime : INotifyPropertyChanging, INotifyPropertyChanged
     4815  {
     4816   
     4817    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     4818   
     4819    private System.DateTime _Time;
     4820   
     4821    private System.DateTime _Hour;
     4822   
     4823    private System.DateTime _Day;
     4824   
     4825    private System.DateTime _Month;
     4826   
     4827    private System.DateTime _Year;
     4828   
     4829    private System.DateTime _Minute;
     4830   
     4831    private EntitySet<FactClientInfo> _FactClientInfos;
     4832   
     4833    #region Extensibility Method Definitions
     4834    partial void OnLoaded();
     4835    partial void OnValidate(System.Data.Linq.ChangeAction action);
     4836    partial void OnCreated();
     4837    partial void OnTimeChanging(System.DateTime value);
     4838    partial void OnTimeChanged();
     4839    partial void OnHourChanging(System.DateTime value);
     4840    partial void OnHourChanged();
     4841    partial void OnDayChanging(System.DateTime value);
     4842    partial void OnDayChanged();
     4843    partial void OnMonthChanging(System.DateTime value);
     4844    partial void OnMonthChanged();
     4845    partial void OnYearChanging(System.DateTime value);
     4846    partial void OnYearChanged();
     4847    partial void OnMinuteChanging(System.DateTime value);
     4848    partial void OnMinuteChanged();
     4849    #endregion
     4850   
     4851    public DimTime()
     4852    {
     4853      this._FactClientInfos = new EntitySet<FactClientInfo>(new Action<FactClientInfo>(this.attach_FactClientInfos), new Action<FactClientInfo>(this.detach_FactClientInfos));
     4854      OnCreated();
     4855    }
     4856   
     4857    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Time", DbType="DateTime NOT NULL", IsPrimaryKey=true)]
     4858    public System.DateTime Time
     4859    {
     4860      get
     4861      {
     4862        return this._Time;
     4863      }
     4864      set
     4865      {
     4866        if ((this._Time != value))
     4867        {
     4868          this.OnTimeChanging(value);
     4869          this.SendPropertyChanging();
     4870          this._Time = value;
     4871          this.SendPropertyChanged("Time");
     4872          this.OnTimeChanged();
     4873        }
     4874      }
     4875    }
     4876   
     4877    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Hour", DbType="DateTime NOT NULL")]
     4878    public System.DateTime Hour
     4879    {
     4880      get
     4881      {
     4882        return this._Hour;
     4883      }
     4884      set
     4885      {
     4886        if ((this._Hour != value))
     4887        {
     4888          this.OnHourChanging(value);
     4889          this.SendPropertyChanging();
     4890          this._Hour = value;
     4891          this.SendPropertyChanged("Hour");
     4892          this.OnHourChanged();
     4893        }
     4894      }
     4895    }
     4896   
     4897    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Day", DbType="Date NOT NULL")]
     4898    public System.DateTime Day
     4899    {
     4900      get
     4901      {
     4902        return this._Day;
     4903      }
     4904      set
     4905      {
     4906        if ((this._Day != value))
     4907        {
     4908          this.OnDayChanging(value);
     4909          this.SendPropertyChanging();
     4910          this._Day = value;
     4911          this.SendPropertyChanged("Day");
     4912          this.OnDayChanged();
     4913        }
     4914      }
     4915    }
     4916   
     4917    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Month", DbType="Date NOT NULL")]
     4918    public System.DateTime Month
     4919    {
     4920      get
     4921      {
     4922        return this._Month;
     4923      }
     4924      set
     4925      {
     4926        if ((this._Month != value))
     4927        {
     4928          this.OnMonthChanging(value);
     4929          this.SendPropertyChanging();
     4930          this._Month = value;
     4931          this.SendPropertyChanged("Month");
     4932          this.OnMonthChanged();
     4933        }
     4934      }
     4935    }
     4936   
     4937    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Year", DbType="Date NOT NULL")]
     4938    public System.DateTime Year
     4939    {
     4940      get
     4941      {
     4942        return this._Year;
     4943      }
     4944      set
     4945      {
     4946        if ((this._Year != value))
     4947        {
     4948          this.OnYearChanging(value);
     4949          this.SendPropertyChanging();
     4950          this._Year = value;
     4951          this.SendPropertyChanged("Year");
     4952          this.OnYearChanged();
     4953        }
     4954      }
     4955    }
     4956   
     4957    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Minute")]
     4958    public System.DateTime Minute
     4959    {
     4960      get
     4961      {
     4962        return this._Minute;
     4963      }
     4964      set
     4965      {
     4966        if ((this._Minute != value))
     4967        {
     4968          this.OnMinuteChanging(value);
     4969          this.SendPropertyChanging();
     4970          this._Minute = value;
     4971          this.SendPropertyChanged("Minute");
     4972          this.OnMinuteChanged();
     4973        }
     4974      }
     4975    }
     4976   
     4977    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimTime_FactClientInfo", Storage="_FactClientInfos", ThisKey="Time", OtherKey="Time")]
     4978    public EntitySet<FactClientInfo> FactClientInfos
     4979    {
     4980      get
     4981      {
     4982        return this._FactClientInfos;
     4983      }
     4984      set
     4985      {
     4986        this._FactClientInfos.Assign(value);
     4987      }
     4988    }
     4989   
     4990    public event PropertyChangingEventHandler PropertyChanging;
     4991   
     4992    public event PropertyChangedEventHandler PropertyChanged;
     4993   
     4994    protected virtual void SendPropertyChanging()
     4995    {
     4996      if ((this.PropertyChanging != null))
     4997      {
     4998        this.PropertyChanging(this, emptyChangingEventArgs);
     4999      }
     5000    }
     5001   
     5002    protected virtual void SendPropertyChanged(String propertyName)
     5003    {
     5004      if ((this.PropertyChanged != null))
     5005      {
     5006        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     5007      }
     5008    }
     5009   
     5010    private void attach_FactClientInfos(FactClientInfo entity)
     5011    {
     5012      this.SendPropertyChanging();
     5013      entity.DimTime = this;
     5014    }
     5015   
     5016    private void detach_FactClientInfos(FactClientInfo entity)
     5017    {
     5018      this.SendPropertyChanging();
     5019      entity.DimTime = null;
     5020    }
     5021  }
     5022 
     5023  [global::System.Data.Linq.Mapping.TableAttribute(Name="[statistics].DimUser")]
     5024  public partial class DimUser : INotifyPropertyChanging, INotifyPropertyChanged
     5025  {
     5026   
     5027    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     5028   
     5029    private System.Guid _UserId;
     5030   
     5031    private string _Name;
     5032   
     5033    private EntitySet<FactClientInfo> _FactClientInfos;
     5034   
     5035    #region Extensibility Method Definitions
     5036    partial void OnLoaded();
     5037    partial void OnValidate(System.Data.Linq.ChangeAction action);
     5038    partial void OnCreated();
     5039    partial void OnUserIdChanging(System.Guid value);
     5040    partial void OnUserIdChanged();
     5041    partial void OnNameChanging(string value);
     5042    partial void OnNameChanged();
     5043    #endregion
     5044   
     5045    public DimUser()
     5046    {
     5047      this._FactClientInfos = new EntitySet<FactClientInfo>(new Action<FactClientInfo>(this.attach_FactClientInfos), new Action<FactClientInfo>(this.detach_FactClientInfos));
     5048      OnCreated();
     5049    }
     5050   
     5051    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
     5052    public System.Guid UserId
     5053    {
     5054      get
     5055      {
     5056        return this._UserId;
     5057      }
     5058      set
     5059      {
     5060        if ((this._UserId != value))
     5061        {
     5062          this.OnUserIdChanging(value);
     5063          this.SendPropertyChanging();
     5064          this._UserId = value;
     5065          this.SendPropertyChanged("UserId");
     5066          this.OnUserIdChanged();
     5067        }
     5068      }
     5069    }
     5070   
     5071    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="VarChar(MAX) NOT NULL", CanBeNull=false)]
     5072    public string Name
     5073    {
     5074      get
     5075      {
     5076        return this._Name;
     5077      }
     5078      set
     5079      {
     5080        if ((this._Name != value))
     5081        {
     5082          this.OnNameChanging(value);
     5083          this.SendPropertyChanging();
     5084          this._Name = value;
     5085          this.SendPropertyChanged("Name");
     5086          this.OnNameChanged();
     5087        }
     5088      }
     5089    }
     5090   
     5091    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimUser_FactClientInfo", Storage="_FactClientInfos", ThisKey="UserId", OtherKey="UserId")]
     5092    public EntitySet<FactClientInfo> FactClientInfos
     5093    {
     5094      get
     5095      {
     5096        return this._FactClientInfos;
     5097      }
     5098      set
     5099      {
     5100        this._FactClientInfos.Assign(value);
     5101      }
     5102    }
     5103   
     5104    public event PropertyChangingEventHandler PropertyChanging;
     5105   
     5106    public event PropertyChangedEventHandler PropertyChanged;
     5107   
     5108    protected virtual void SendPropertyChanging()
     5109    {
     5110      if ((this.PropertyChanging != null))
     5111      {
     5112        this.PropertyChanging(this, emptyChangingEventArgs);
     5113      }
     5114    }
     5115   
     5116    protected virtual void SendPropertyChanged(String propertyName)
     5117    {
     5118      if ((this.PropertyChanged != null))
     5119      {
     5120        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     5121      }
     5122    }
     5123   
     5124    private void attach_FactClientInfos(FactClientInfo entity)
     5125    {
     5126      this.SendPropertyChanging();
     5127      entity.DimUser = this;
     5128    }
     5129   
     5130    private void detach_FactClientInfos(FactClientInfo entity)
     5131    {
     5132      this.SendPropertyChanging();
     5133      entity.DimUser = null;
     5134    }
     5135  }
     5136 
     5137  [global::System.Data.Linq.Mapping.TableAttribute(Name="[statistics].FactClientInfo")]
     5138  public partial class FactClientInfo : INotifyPropertyChanging, INotifyPropertyChanged
     5139  {
     5140   
     5141    private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
     5142   
     5143    private System.Guid _ClientId;
     5144   
     5145    private System.DateTime _Time;
     5146   
     5147    private System.Guid _UserId;
     5148   
     5149    private int _NumUsedCores;
     5150   
     5151    private int _NumTotalCores;
     5152   
     5153    private int _UsedMemory;
     5154   
     5155    private int _TotalMemory;
     5156   
     5157    private double _CpuUtilization;
     5158   
     5159    private long _TotalTimeIdle;
     5160   
     5161    private long _TotalTimeOffline;
     5162   
     5163    private long _TotalTimeUnavailable;
     5164   
     5165    private global::HeuristicLab.Services.Hive.DataAccess.SlaveState _SlaveState;
     5166   
     5167    private bool _IsAllowedToCalculate;
     5168   
     5169    private EntityRef<DimClient> _DimClient;
     5170   
     5171    private EntityRef<DimTime> _DimTime;
     5172   
     5173    private EntityRef<DimUser> _DimUser;
     5174   
     5175    #region Extensibility Method Definitions
     5176    partial void OnLoaded();
     5177    partial void OnValidate(System.Data.Linq.ChangeAction action);
     5178    partial void OnCreated();
     5179    partial void OnClientIdChanging(System.Guid value);
     5180    partial void OnClientIdChanged();
     5181    partial void OnTimeChanging(System.DateTime value);
     5182    partial void OnTimeChanged();
     5183    partial void OnUserIdChanging(System.Guid value);
     5184    partial void OnUserIdChanged();
     5185    partial void OnNumUsedCoresChanging(int value);
     5186    partial void OnNumUsedCoresChanged();
     5187    partial void OnNumTotalCoresChanging(int value);
     5188    partial void OnNumTotalCoresChanged();
     5189    partial void OnUsedMemoryChanging(int value);
     5190    partial void OnUsedMemoryChanged();
     5191    partial void OnTotalMemoryChanging(int value);
     5192    partial void OnTotalMemoryChanged();
     5193    partial void OnCpuUtilizationChanging(double value);
     5194    partial void OnCpuUtilizationChanged();
     5195    partial void OnIdleTimeChanging(long value);
     5196    partial void OnIdleTimeChanged();
     5197    partial void OnOfflineTimeChanging(long value);
     5198    partial void OnOfflineTimeChanged();
     5199    partial void OnUnavailableTimeChanging(long value);
     5200    partial void OnUnavailableTimeChanged();
     5201    partial void OnSlaveStateChanging(global::HeuristicLab.Services.Hive.DataAccess.SlaveState value);
     5202    partial void OnSlaveStateChanged();
     5203    partial void OnIsAllowedToCalculateChanging(bool value);
     5204    partial void OnIsAllowedToCalculateChanged();
     5205    #endregion
     5206   
     5207    public FactClientInfo()
     5208    {
     5209      this._DimClient = default(EntityRef<DimClient>);
     5210      this._DimTime = default(EntityRef<DimTime>);
     5211      this._DimUser = default(EntityRef<DimUser>);
     5212      OnCreated();
     5213    }
     5214   
     5215    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
     5216    public System.Guid ClientId
     5217    {
     5218      get
     5219      {
     5220        return this._ClientId;
     5221      }
     5222      set
     5223      {
     5224        if ((this._ClientId != value))
     5225        {
     5226          if (this._DimClient.HasLoadedOrAssignedValue)
     5227          {
     5228            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     5229          }
     5230          this.OnClientIdChanging(value);
     5231          this.SendPropertyChanging();
     5232          this._ClientId = value;
     5233          this.SendPropertyChanged("ClientId");
     5234          this.OnClientIdChanged();
     5235        }
     5236      }
     5237    }
     5238   
     5239    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Time", DbType="DateTime NOT NULL", IsPrimaryKey=true)]
     5240    public System.DateTime Time
     5241    {
     5242      get
     5243      {
     5244        return this._Time;
     5245      }
     5246      set
     5247      {
     5248        if ((this._Time != value))
     5249        {
     5250          if (this._DimTime.HasLoadedOrAssignedValue)
     5251          {
     5252            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     5253          }
     5254          this.OnTimeChanging(value);
     5255          this.SendPropertyChanging();
     5256          this._Time = value;
     5257          this.SendPropertyChanged("Time");
     5258          this.OnTimeChanged();
     5259        }
     5260      }
     5261    }
     5262   
     5263    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier NULL", IsPrimaryKey=true)]
     5264    public System.Guid UserId
     5265    {
     5266      get
     5267      {
     5268        return this._UserId;
     5269      }
     5270      set
     5271      {
     5272        if ((this._UserId != value))
     5273        {
     5274          if (this._DimUser.HasLoadedOrAssignedValue)
     5275          {
     5276            throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
     5277          }
     5278          this.OnUserIdChanging(value);
     5279          this.SendPropertyChanging();
     5280          this._UserId = value;
     5281          this.SendPropertyChanged("UserId");
     5282          this.OnUserIdChanged();
     5283        }
     5284      }
     5285    }
     5286   
     5287    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumUsedCores", DbType="Int NOT NULL")]
     5288    public int NumUsedCores
     5289    {
     5290      get
     5291      {
     5292        return this._NumUsedCores;
     5293      }
     5294      set
     5295      {
     5296        if ((this._NumUsedCores != value))
     5297        {
     5298          this.OnNumUsedCoresChanging(value);
     5299          this.SendPropertyChanging();
     5300          this._NumUsedCores = value;
     5301          this.SendPropertyChanged("NumUsedCores");
     5302          this.OnNumUsedCoresChanged();
     5303        }
     5304      }
     5305    }
     5306   
     5307    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumTotalCores", DbType="Int NOT NULL")]
     5308    public int NumTotalCores
     5309    {
     5310      get
     5311      {
     5312        return this._NumTotalCores;
     5313      }
     5314      set
     5315      {
     5316        if ((this._NumTotalCores != value))
     5317        {
     5318          this.OnNumTotalCoresChanging(value);
     5319          this.SendPropertyChanging();
     5320          this._NumTotalCores = value;
     5321          this.SendPropertyChanged("NumTotalCores");
     5322          this.OnNumTotalCoresChanged();
     5323        }
     5324      }
     5325    }
     5326   
     5327    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UsedMemory", DbType="Int NOT NULL")]
     5328    public int UsedMemory
     5329    {
     5330      get
     5331      {
     5332        return this._UsedMemory;
     5333      }
     5334      set
     5335      {
     5336        if ((this._UsedMemory != value))
     5337        {
     5338          this.OnUsedMemoryChanging(value);
     5339          this.SendPropertyChanging();
     5340          this._UsedMemory = value;
     5341          this.SendPropertyChanged("UsedMemory");
     5342          this.OnUsedMemoryChanged();
     5343        }
     5344      }
     5345    }
     5346   
     5347    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalMemory", DbType="Int NOT NULL")]
     5348    public int TotalMemory
     5349    {
     5350      get
     5351      {
     5352        return this._TotalMemory;
     5353      }
     5354      set
     5355      {
     5356        if ((this._TotalMemory != value))
     5357        {
     5358          this.OnTotalMemoryChanging(value);
     5359          this.SendPropertyChanging();
     5360          this._TotalMemory = value;
     5361          this.SendPropertyChanged("TotalMemory");
     5362          this.OnTotalMemoryChanged();
     5363        }
     5364      }
     5365    }
     5366   
     5367    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CpuUtilization", DbType="Float NOT NULL")]
     5368    public double CpuUtilization
     5369    {
     5370      get
     5371      {
     5372        return this._CpuUtilization;
     5373      }
     5374      set
     5375      {
     5376        if ((this._CpuUtilization != value))
     5377        {
     5378          this.OnCpuUtilizationChanging(value);
     5379          this.SendPropertyChanging();
     5380          this._CpuUtilization = value;
     5381          this.SendPropertyChanged("CpuUtilization");
     5382          this.OnCpuUtilizationChanged();
     5383        }
     5384      }
     5385    }
     5386   
     5387    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalTimeIdle", DbType="INT NOT NULL")]
     5388    public long IdleTime
     5389    {
     5390      get
     5391      {
     5392        return this._TotalTimeIdle;
     5393      }
     5394      set
     5395      {
     5396        if ((this._TotalTimeIdle != value))
     5397        {
     5398          this.OnIdleTimeChanging(value);
     5399          this.SendPropertyChanging();
     5400          this._TotalTimeIdle = value;
     5401          this.SendPropertyChanged("IdleTime");
     5402          this.OnIdleTimeChanged();
     5403        }
     5404      }
     5405    }
     5406   
     5407    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalTimeOffline", DbType="INT NOT NULL")]
     5408    public long OfflineTime
     5409    {
     5410      get
     5411      {
     5412        return this._TotalTimeOffline;
     5413      }
     5414      set
     5415      {
     5416        if ((this._TotalTimeOffline != value))
     5417        {
     5418          this.OnOfflineTimeChanging(value);
     5419          this.SendPropertyChanging();
     5420          this._TotalTimeOffline = value;
     5421          this.SendPropertyChanged("OfflineTime");
     5422          this.OnOfflineTimeChanged();
     5423        }
     5424      }
     5425    }
     5426   
     5427    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalTimeUnavailable", DbType="INT NOT NULL")]
     5428    public long UnavailableTime
     5429    {
     5430      get
     5431      {
     5432        return this._TotalTimeUnavailable;
     5433      }
     5434      set
     5435      {
     5436        if ((this._TotalTimeUnavailable != value))
     5437        {
     5438          this.OnUnavailableTimeChanging(value);
     5439          this.SendPropertyChanging();
     5440          this._TotalTimeUnavailable = value;
     5441          this.SendPropertyChanged("UnavailableTime");
     5442          this.OnUnavailableTimeChanged();
     5443        }
     5444      }
     5445    }
     5446   
     5447    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SlaveState", DbType="VarChar(15)", CanBeNull=false)]
     5448    public global::HeuristicLab.Services.Hive.DataAccess.SlaveState SlaveState
     5449    {
     5450      get
     5451      {
     5452        return this._SlaveState;
     5453      }
     5454      set
     5455      {
     5456        if ((this._SlaveState != value))
     5457        {
     5458          this.OnSlaveStateChanging(value);
     5459          this.SendPropertyChanging();
     5460          this._SlaveState = value;
     5461          this.SendPropertyChanged("SlaveState");
     5462          this.OnSlaveStateChanged();
     5463        }
     5464      }
     5465    }
     5466   
     5467    [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsAllowedToCalculate", DbType="BIT")]
     5468    public bool IsAllowedToCalculate
     5469    {
     5470      get
     5471      {
     5472        return this._IsAllowedToCalculate;
     5473      }
     5474      set
     5475      {
     5476        if ((this._IsAllowedToCalculate != value))
     5477        {
     5478          this.OnIsAllowedToCalculateChanging(value);
     5479          this.SendPropertyChanging();
     5480          this._IsAllowedToCalculate = value;
     5481          this.SendPropertyChanged("IsAllowedToCalculate");
     5482          this.OnIsAllowedToCalculateChanged();
     5483        }
     5484      }
     5485    }
     5486   
     5487    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimClient_FactClientInfo", Storage="_DimClient", ThisKey="ClientId", OtherKey="Id", IsForeignKey=true)]
     5488    public DimClient DimClient
     5489    {
     5490      get
     5491      {
     5492        return this._DimClient.Entity;
     5493      }
     5494      set
     5495      {
     5496        DimClient previousValue = this._DimClient.Entity;
     5497        if (((previousValue != value)
     5498              || (this._DimClient.HasLoadedOrAssignedValue == false)))
     5499        {
     5500          this.SendPropertyChanging();
     5501          if ((previousValue != null))
     5502          {
     5503            this._DimClient.Entity = null;
     5504            previousValue.FactClientInfos.Remove(this);
     5505          }
     5506          this._DimClient.Entity = value;
     5507          if ((value != null))
     5508          {
     5509            value.FactClientInfos.Add(this);
     5510            this._ClientId = value.Id;
     5511          }
     5512          else
     5513          {
     5514            this._ClientId = default(System.Guid);
     5515          }
     5516          this.SendPropertyChanged("DimClient");
     5517        }
     5518      }
     5519    }
     5520   
     5521    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimTime_FactClientInfo", Storage="_DimTime", ThisKey="Time", OtherKey="Time", IsForeignKey=true)]
     5522    public DimTime DimTime
     5523    {
     5524      get
     5525      {
     5526        return this._DimTime.Entity;
     5527      }
     5528      set
     5529      {
     5530        DimTime previousValue = this._DimTime.Entity;
     5531        if (((previousValue != value)
     5532              || (this._DimTime.HasLoadedOrAssignedValue == false)))
     5533        {
     5534          this.SendPropertyChanging();
     5535          if ((previousValue != null))
     5536          {
     5537            this._DimTime.Entity = null;
     5538            previousValue.FactClientInfos.Remove(this);
     5539          }
     5540          this._DimTime.Entity = value;
     5541          if ((value != null))
     5542          {
     5543            value.FactClientInfos.Add(this);
     5544            this._Time = value.Time;
     5545          }
     5546          else
     5547          {
     5548            this._Time = default(System.DateTime);
     5549          }
     5550          this.SendPropertyChanged("DimTime");
     5551        }
     5552      }
     5553    }
     5554   
     5555    [global::System.Data.Linq.Mapping.AssociationAttribute(Name="DimUser_FactClientInfo", Storage="_DimUser", ThisKey="UserId", OtherKey="UserId", IsForeignKey=true)]
     5556    public DimUser DimUser
     5557    {
     5558      get
     5559      {
     5560        return this._DimUser.Entity;
     5561      }
     5562      set
     5563      {
     5564        DimUser previousValue = this._DimUser.Entity;
     5565        if (((previousValue != value)
     5566              || (this._DimUser.HasLoadedOrAssignedValue == false)))
     5567        {
     5568          this.SendPropertyChanging();
     5569          if ((previousValue != null))
     5570          {
     5571            this._DimUser.Entity = null;
     5572            previousValue.FactClientInfos.Remove(this);
     5573          }
     5574          this._DimUser.Entity = value;
     5575          if ((value != null))
     5576          {
     5577            value.FactClientInfos.Add(this);
     5578            this._UserId = value.UserId;
     5579          }
     5580          else
     5581          {
     5582            this._UserId = default(System.Guid);
     5583          }
     5584          this.SendPropertyChanged("DimUser");
     5585        }
     5586      }
     5587    }
     5588   
     5589    public event PropertyChangingEventHandler PropertyChanging;
     5590   
     5591    public event PropertyChangedEventHandler PropertyChanged;
     5592   
     5593    protected virtual void SendPropertyChanging()
     5594    {
     5595      if ((this.PropertyChanging != null))
     5596      {
     5597        this.PropertyChanging(this, emptyChangingEventArgs);
     5598      }
     5599    }
     5600   
     5601    protected virtual void SendPropertyChanged(String propertyName)
     5602    {
     5603      if ((this.PropertyChanged != null))
     5604      {
     5605        this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     5606      }
     5607    }
     5608  }
    45365609}
    45375610#pragma warning restore 1591
  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Initialize Hive Database.sql

    r9665 r12931  
    1 USE [HeuristicLab.Hive-3.3]
    2 /* create and initialize hive database tables */
     1/* HeuristicLab
     2 * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     3 *
     4 * This file is part of HeuristicLab.
     5 *
     6 * HeuristicLab is free software: you can redistribute it and/or modify
     7 * it under the terms of the GNU General Public License as published by
     8 * the Free Software Foundation, either version 3 of the License, or
     9 * (at your option) any later version.
     10 *
     11 * HeuristicLab is distributed in the hope that it will be useful,
     12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 * GNU General Public License for more details.
     15 *
     16 * You should have received a copy of the GNU General Public License
     17 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     18 */
     19USE [HeuristicLab.Hive-3.3]
    320
    421EXEC sp_configure filestream_access_level, 2
     
    6986  [Command] VarChar(30),
    7087  [JobId] UniqueIdentifier NOT NULL,
    71   [IsPrivileged] Bit NOT NULL,
    7288  CONSTRAINT [PK_dbo.Task] PRIMARY KEY ([TaskId])
    7389  )
     
    131147  [DateEnqueued] DateTime NOT NULL,
    132148  CONSTRAINT [PK_UserPriority] PRIMARY KEY ([UserId])
    133   )
    134 CREATE TABLE [DeletedJobStatistics](
    135   [UserId] UniqueIdentifier NOT NULL,
    136   [ExecutionTimeS] float NOT NULL,
    137   [ExecutionTimeSFinishedJobs] float NOT NULL,
    138   [StartToEndTimeS] float NOT NULL,
    139   [DeletedJobStatisticsId] UniqueIdentifier NOT NULL,
    140   CONSTRAINT [PK_DeletedJobStatistics] PRIMARY KEY ([DeletedJobStatisticsId])
    141   )
    142 CREATE TABLE [UserStatistics](
    143   [StatisticsId] UniqueIdentifier NOT NULL,
    144   [UserId] UniqueIdentifier NOT NULL,
    145   [ExecutionTimeMs] float NOT NULL,
    146   [UsedCores] Int NOT NULL,
    147   [ExecutionTimeMsFinishedJobs] float NOT NULL,
    148   [StartToEndTimeMs] float NOT NULL,
    149   CONSTRAINT [PK_UserStatistics] PRIMARY KEY ([StatisticsId], [UserId])
    150   )
    151 CREATE TABLE [SlaveStatistics](
    152   [StatisticsId] UniqueIdentifier NOT NULL,
    153   [SlaveId] UniqueIdentifier NOT NULL,
    154   [Cores] Int NOT NULL,
    155   [FreeCores] Int NOT NULL,
    156   [CpuUtilization] float NOT NULL,
    157   [Memory] Int NOT NULL,
    158   [FreeMemory] Int NOT NULL,
    159   CONSTRAINT [PK_SlaveStatistics] PRIMARY KEY ([StatisticsId], [SlaveId])
    160   )
    161 CREATE TABLE [Statistics](
    162   [StatisticsId] UniqueIdentifier NOT NULL,
    163   [Timestamp] DateTime NOT NULL,
    164   CONSTRAINT [PK_Statistics] PRIMARY KEY ([StatisticsId])
    165149  )
    166150ALTER TABLE [dbo].[AssignedResources]
     
    192176ALTER TABLE [dbo].[JobPermission]
    193177  ADD CONSTRAINT [Job_JobPermission] FOREIGN KEY ([JobId]) REFERENCES [dbo].[Job]([JobId])
    194 ALTER TABLE [UserStatistics]
    195   ADD CONSTRAINT [Statistics_UserStatistics] FOREIGN KEY ([StatisticsId]) REFERENCES [Statistics]([StatisticsId])
    196 ALTER TABLE [SlaveStatistics]
    197   ADD CONSTRAINT [Statistics_SlaveStatistics] FOREIGN KEY ([StatisticsId]) REFERENCES [Statistics]([StatisticsId])
     178
     179GO
     180CREATE SCHEMA [statistics]
     181GO
     182
     183CREATE TABLE [statistics].[DimTime] (
     184    [Time]   DATETIME NOT NULL,
     185    [Minute] DATETIME NOT NULL,
     186    [Hour]   DATETIME NOT NULL,
     187    [Day]    DATE     NOT NULL,
     188    [Month]  DATE     NOT NULL,
     189    [Year]   DATE     NOT NULL,
     190    CONSTRAINT [PK_DimTime] PRIMARY KEY CLUSTERED ([Time] ASC)
     191);
     192CREATE TABLE [statistics].[DimClient] (
     193    [Id]               UNIQUEIDENTIFIER CONSTRAINT [DF_DimClient_Id] DEFAULT (newsequentialid()) NOT NULL,
     194    [Name]             VARCHAR (MAX)    NOT NULL,
     195    [ResourceId]       UNIQUEIDENTIFIER NOT NULL,
     196    [ExpirationTime]   DATETIME         NULL,
     197    [ResourceGroupId]  UNIQUEIDENTIFIER NULL,
     198    [ResourceGroup2Id] UNIQUEIDENTIFIER NULL,
     199    [GroupName]        VARCHAR (MAX)    NULL,
     200    [GroupName2]       VARCHAR (MAX)    NULL,
     201    CONSTRAINT [PK_DimClient] PRIMARY KEY CLUSTERED ([Id] ASC)
     202);
     203CREATE TABLE [statistics].[DimJob] (
     204    [JobId]          UNIQUEIDENTIFIER NOT NULL,
     205    [UserId]         UNIQUEIDENTIFIER NOT NULL,
     206    [JobName]        VARCHAR (MAX)    NOT NULL,
     207    [UserName]       VARCHAR (MAX)    NOT NULL,
     208    [DateCreated]    DATETIME     NOT NULL,
     209    [TotalTasks]     INT              NOT NULL,
     210    [CompletedTasks] INT              NOT NULL,
     211    [DateCompleted]  DATETIME     NULL,
     212    CONSTRAINT [PK_DimJob] PRIMARY KEY CLUSTERED ([JobId] ASC)
     213);
     214CREATE TABLE [statistics].[DimUser] (
     215    [UserId] UNIQUEIDENTIFIER NOT NULL,
     216    [Name]   VARCHAR (MAX)    NOT NULL,
     217    CONSTRAINT [PK_DimUser] PRIMARY KEY CLUSTERED ([UserId] ASC)
     218);
     219CREATE TABLE [statistics].[FactClientInfo] (
     220    [ClientId]             UNIQUEIDENTIFIER NOT NULL,
     221    [Time]                 DATETIME         NOT NULL,
     222    [UserId]               UNIQUEIDENTIFIER NOT NULL,
     223    [NumUsedCores]         INT              NOT NULL,
     224    [NumTotalCores]        INT              NOT NULL,
     225    [UsedMemory]           INT              NOT NULL,
     226    [TotalMemory]          INT              NOT NULL,
     227    [CpuUtilization]       FLOAT (53)       NOT NULL,
     228    [SlaveState]           VarChar(15)      NOT NULL,
     229    [IdleTime]             INT              NOT NULL,
     230    [OfflineTime]          INT              NOT NULL,
     231    [UnavailableTime]      INT              NOT NULL,
     232    [IsAllowedToCalculate] BIT              NOT NULL,
     233    CONSTRAINT [PK_FactClientInfo] PRIMARY KEY CLUSTERED ([ClientId] ASC, [Time] ASC, [UserId] ASC),
     234    CONSTRAINT [FK_FactClientInfo_DimTime] FOREIGN KEY ([Time]) REFERENCES [statistics].[DimTime] ([Time]),
     235    CONSTRAINT [FK_FactClientInfo_DimClient] FOREIGN KEY ([ClientId]) REFERENCES [statistics].[DimClient] ([Id]),
     236    CONSTRAINT [FK_FactClientInfo_DimUser] FOREIGN KEY ([UserId]) REFERENCES [statistics].[DimUser] ([UserId])
     237);
     238CREATE TABLE [statistics].[FactTask] (
     239  [TaskId]             UNIQUEIDENTIFIER NOT NULL,
     240  [CalculatingTime]    INT              NOT NULL,
     241  [WaitingTime]        INT              NOT NULL,
     242  [TransferTime]       INT              NOT NULL,
     243  [NumCalculationRuns] INT              NOT NULL,
     244  [NumRetries]         INT              NOT NULL,
     245  [CoresRequired]      INT              NOT NULL,
     246  [MemoryRequired]     INT              NOT NULL,
     247  [Priority]           INT              NOT NULL,
     248  [LastClientId]       UNIQUEIDENTIFIER NULL,
     249  [JobId]          UNIQUEIDENTIFIER NOT NULL,
     250  [StartTime]          DATETIME         NULL,
     251  [EndTime]            DATETIME         NULL,
     252  [TaskState]          VARCHAR (30)     NOT NULL,
     253  [Exception]          VARCHAR (MAX)    NULL,
     254  [InitialWaitingTime] INT              NULL,
     255  CONSTRAINT [PK_FactTask] PRIMARY KEY CLUSTERED ([TaskId] ASC),
     256  CONSTRAINT [FK_FactTask_DimClient] FOREIGN KEY ([LastClientId]) REFERENCES [statistics].[DimClient] ([Id]),
     257  CONSTRAINT [FK_FactTask_DimJob] FOREIGN KEY ([JobId]) REFERENCES [statistics].[DimJob] ([JobId])
     258);
     259
     260/* dummy for nullable userIds in FactClientInfo */
     261INSERT INTO [statistics].[DimUser] ([UserId], [Name])
     262VALUES ('00000000-0000-0000-0000-000000000000', 'NULL');
  • branches/crossvalidation-2434/HeuristicLab.Services.Hive.DataAccess/3.3/SQL Scripts/Prepare Hive Database.sql

    r9665 r12931  
     1/* HeuristicLab
     2 * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     3 *
     4 * This file is part of HeuristicLab.
     5 *
     6 * HeuristicLab is free software: you can redistribute it and/or modify
     7 * it under the terms of the GNU General Public License as published by
     8 * the Free Software Foundation, either version 3 of the License, or
     9 * (at your option) any later version.
     10 *
     11 * HeuristicLab is distributed in the hope that it will be useful,
     12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 * GNU General Public License for more details.
     15 *
     16 * You should have received a copy of the GNU General Public License
     17 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
     18 */
     19
     20/* this script is supposed to be executed after the plain DB is generated by the linq-to-sql schema */
    121USE [HeuristicLab.Hive-3.3]
    2 /* this script is supposed to be executed after the plain DB is generated by the linq-to-sql schema */
    3 /* adds default values */
    4 /* creates delete and update cascades */
    5 /* creates indices */
    6 /* creates views */
    7 /* creates triggers */
    8 
    922
    1023ALTER TABLE [dbo].[AssignedResources]  DROP  CONSTRAINT [Task_AssignedResource]
     
    93106GO
    94107
    95 ALTER TABLE [dbo].[Statistics] ALTER COLUMN StatisticsId ADD ROWGUIDCOL;
    96 ALTER TABLE [dbo].[Statistics] WITH NOCHECK ADD CONSTRAINT [DF_Statistics_StatisticsId] DEFAULT (NEWSEQUENTIALID()) FOR StatisticsId;
    97 GO
    98 
    99 ALTER TABLE [dbo].[DeletedJobStatistics] ALTER COLUMN DeletedJobStatisticsId ADD ROWGUIDCOL;
    100 ALTER TABLE [dbo].[DeletedJobStatistics] WITH NOCHECK ADD CONSTRAINT [DF_DeletedJobStatistics_DeletedJobStatisticsId] DEFAULT (NEWSEQUENTIALID()) FOR DeletedJobStatisticsId;
    101 GO
    102 
    103 ALTER TABLE [dbo].[SlaveStatistics]  DROP  CONSTRAINT [Statistics_SlaveStatistics]
    104 ALTER TABLE [dbo].[SlaveStatistics]  WITH CHECK ADD  CONSTRAINT [Statistics_SlaveStatistics] FOREIGN KEY([StatisticsId])
    105 REFERENCES [dbo].[Statistics] ([StatisticsId])
    106 ON UPDATE CASCADE
    107 ON DELETE CASCADE
    108 GO
    109 
    110 ALTER TABLE [dbo].[UserStatistics]  DROP  CONSTRAINT [Statistics_UserStatistics]
    111 ALTER TABLE [dbo].[UserStatistics]  WITH CHECK ADD  CONSTRAINT [Statistics_UserStatistics] FOREIGN KEY([StatisticsId])
    112 REFERENCES [dbo].[Statistics] ([StatisticsId])
    113 ON UPDATE CASCADE
    114 ON DELETE CASCADE
    115 GO
    116 
    117108/* create indices */
    118109CREATE INDEX Index_RequiredPlugins_TaskId ON RequiredPlugins(TaskId);
    119110GO
    120111
    121 /* views */
    122 -- =============================================
    123 -- Author:    cneumuel
    124 -- Description: Returns the first StateLog entry for each job
    125 -- =============================================
    126 CREATE VIEW [dbo].[view_FirstState]
    127 AS
    128 SELECT     sl.TaskId, sl.DateTime, sl.State
    129 FROM         dbo.StateLog AS sl INNER JOIN
    130                           (SELECT     TaskId, MIN(DateTime) AS DateTime
    131                             FROM          dbo.StateLog
    132                             GROUP BY TaskId) AS minDate ON sl.DateTime = minDate.DateTime AND sl.TaskId = minDate.TaskId
    133 
     112-- speed up joins between Job and Task
     113CREATE NONCLUSTERED INDEX [TaskJobIdIndex]
     114ON [dbo].[Task] ([JobId])
     115INCLUDE ([TaskId],[TaskState],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[CoresNeeded],[MemoryNeeded],[IsParentTask],[FinishWhenChildJobsFinished],[Command])
    134116GO
    135117
    136 -- =============================================
    137 -- Author:    cneumuel
    138 -- Description: Returns the last StateLog entry for each job
    139 -- =============================================
    140 CREATE VIEW [dbo].[view_LastState]
    141 AS
    142 SELECT     sl.TaskId, sl.DateTime, sl.State
    143 FROM         dbo.StateLog AS sl INNER JOIN
    144                           (SELECT     TaskId, MAX(DateTime) AS DateTime
    145                             FROM          dbo.StateLog
    146                             GROUP BY TaskId) AS minDate ON sl.DateTime = minDate.DateTime AND sl.TaskId = minDate.TaskId
     118-- this is an index to speed up the GetWaitingTasks() method
     119CREATE NONCLUSTERED INDEX [TaskGetWaitingTasksIndex]
     120ON [dbo].[Task] ([TaskState],[IsParentTask],[FinishWhenChildJobsFinished],[CoresNeeded],[MemoryNeeded])
     121INCLUDE ([TaskId],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[Command],[JobId])
    147122GO
    148123
    149 -- =============================================
    150 -- Author:    cneumuel
    151 -- Description: returns aggregates statistic information for every minute
    152 -- =============================================
    153 CREATE VIEW [dbo].[view_Statistics]
    154 AS
    155 SELECT  CONVERT(VARCHAR(19), MIN(s.Timestamp), 120) AS DateTime, SUM(ss.Cores) AS Cores, SUM(ss.FreeCores) AS FreeCores,
    156         AVG(ss.CpuUtilization) AS CpuUtilization, SUM(ss.Memory) AS Memory, SUM(ss.FreeMemory) AS FreeMemory, x.exSum AS ExecutionTimeHours,
    157         x.exFinishedSum AS ExecutionTimeFinished, x.exStartToEndSum AS StartToEndTimeFinished
    158 FROM         dbo.SlaveStatistics AS ss INNER JOIN
    159                       dbo.[Statistics] AS s ON ss.StatisticsId = s.StatisticsId INNER JOIN
    160                       dbo.Resource AS r ON ss.SlaveId = r.ResourceId INNER JOIN
    161                           (SELECT     StatisticsId, SUM(ExecutionTimeMs) / 1000 / 60 / 60 AS exSum, SUM(ExecutionTimeMsFinishedJobs) / 1000 / 60 / 60 AS exFinishedSum,
    162                                                    SUM(StartToEndTimeMs) / 1000 / 60 / 60 AS exStartToEndSum
    163                             FROM          dbo.UserStatistics AS us
    164                             GROUP BY StatisticsId) AS x ON s.StatisticsId = x.StatisticsId
    165 GROUP BY s.StatisticsId, x.exSum, x.exFinishedSum, x.exStartToEndSum
    166124
    167 /* triggers */
    168 GO
    169125/****** Object:  Trigger [dbo].[tr_JobDeleteCascade]    Script Date: 04/19/2011 16:31:53 ******/
    170126SET ANSI_NULLS ON
     
    182138CREATE TRIGGER [dbo].[tr_JobDeleteCascade] ON [dbo].[Job] INSTEAD OF DELETE AS
    183139BEGIN
    184   DELETE Task FROM deleted, Task WHERE deleted.JobId = Task.JobId
    185   DELETE Job FROM deleted, Job WHERE deleted.JobId = Job.JobId
     140    DELETE Task FROM deleted, Task WHERE deleted.JobId = Task.JobId
     141    DELETE Job FROM deleted, Job WHERE deleted.JobId = Job.JobId
    186142END
    187143GO
     
    191147-- Create date: 11.11.2010
    192148-- Description: Recursively deletes all child-jobs of a job when it is deleted. (Source: http://devio.wordpress.com/2008/05/23/recursive-delete-in-sql-server/)
    193 -- =============================================
     149-- =============================================DeletedJobStatistics
    194150CREATE TRIGGER [dbo].[tr_TaskDeleteCascade] ON [dbo].[Task] INSTEAD OF DELETE AS
    195151BEGIN
    196   -- add statistics
    197   INSERT INTO dbo.DeletedJobStatistics (UserId, ExecutionTimeS, ExecutionTimeSFinishedJobs, StartToEndTimeS)
    198   SELECT
    199     he.OwnerUserId AS UserId,
    200     ROUND(SUM(j.ExecutionTimeMs) / 1000, 0) AS ExecutionTimeS, 
    201     ROUND(ISNULL(SUM(CASE ls.State WHEN 'Finished' THEN j.ExecutionTimeMs END), 0) / 1000, 0) AS ExecutionTimeSFinishedJobs,
    202     ISNULL(SUM(CASE ls.State WHEN 'Finished' THEN DATEDIFF(s, fs.DateTime, ls.DateTime) ELSE 0 END), 0) AS StartToEndTimeS
    203   FROM
    204     deleted j,
    205     Job he,
    206     view_FirstState fs,
    207     view_LastState ls
    208   WHERE
    209     he.JobId = j.JobId AND
    210     fs.TaskId = j.TaskId AND
    211     ls.TaskId = j.TaskId
    212   GROUP BY he.OwnerUserId
    213 
    214   -- recursively delete jobs
    215   CREATE TABLE #Table(
    216     TaskId uniqueidentifier
    217   )
    218   INSERT INTO #Table (TaskId)
    219   SELECT TaskId FROM deleted
    220  
    221   DECLARE @c INT
    222   SET @c = 0
    223  
    224   WHILE @c <> (SELECT COUNT(TaskId) FROM #Table) BEGIN
    225     SELECT @c = COUNT(TaskId) FROM #Table
    226    
    227     INSERT INTO #Table (TaskId)
    228       SELECT Task.TaskId
    229       FROM Task
    230       LEFT OUTER JOIN #Table ON Task.TaskId = #Table.TaskId
    231       WHERE Task.ParentTaskId IN (SELECT TaskId FROM #Table)
    232         AND #Table.TaskId IS NULL
    233   END
    234  
    235   DELETE TaskData FROM TaskData INNER JOIN #Table ON TaskData.TaskId = #Table.TaskId
    236   DELETE Task FROM Task INNER JOIN #Table ON Task.TaskId = #Table.TaskId
     152    -- recursively delete jobs
     153    CREATE TABLE #Table(
     154        TaskId uniqueidentifier
     155    )
     156    INSERT INTO #Table (TaskId)
     157    SELECT TaskId FROM deleted
     158   
     159    DECLARE @c INT
     160    SET @c = 0
     161   
     162    WHILE @c <> (SELECT COUNT(TaskId) FROM #Table) BEGIN
     163        SELECT @c = COUNT(TaskId) FROM #Table
     164       
     165        INSERT INTO #Table (TaskId)
     166            SELECT Task.TaskId
     167            FROM Task
     168            LEFT OUTER JOIN #Table ON Task.TaskId = #Table.TaskId
     169            WHERE Task.ParentTaskId IN (SELECT TaskId FROM #Table)
     170                AND #Table.TaskId IS NULL
     171    END
     172   
     173    DELETE TaskData FROM TaskData INNER JOIN #Table ON TaskData.TaskId = #Table.TaskId
     174    DELETE Task FROM Task INNER JOIN #Table ON Task.TaskId = #Table.TaskId
    237175END
    238176GO
    239177
    240178
    241 CREATE TRIGGER [dbo].[tr_StatisticsDeleteCascade] ON [dbo].[Statistics] INSTEAD OF DELETE AS
    242 BEGIN
    243   DELETE SlaveStatistics FROM deleted, SlaveStatistics WHERE deleted.StatisticsId = SlaveStatistics.StatisticsId
    244   -- should also remove UserStatistics here
    245   DELETE [Statistics] FROM deleted, [Statistics] WHERE deleted.StatisticsId = [Statistics].StatisticsId
    246 END
    247 GO
    248 
    249 
    250 -- ============================================================
    251 -- Description: Create indices to speed up execution of queries
    252 -- ============================================================
    253 
    254 -- speed up joins between Job and Task
    255 CREATE NONCLUSTERED INDEX [TaskJobIdIndex]
    256 ON [dbo].[Task] ([JobId])
    257 INCLUDE ([TaskId],[TaskState],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[CoresNeeded],[MemoryNeeded],[IsParentTask],[FinishWhenChildJobsFinished],[Command],[IsPrivileged])
    258 GO
    259 
    260 -- this is an index to speed up the GetWaitingTasks() method
    261 CREATE NONCLUSTERED INDEX [TaskGetWaitingTasksIndex]
    262 ON [dbo].[Task] ([TaskState],[IsParentTask],[FinishWhenChildJobsFinished],[CoresNeeded],[MemoryNeeded])
    263 INCLUDE ([TaskId],[ExecutionTimeMs],[LastHeartbeat],[ParentTaskId],[Priority],[Command],[JobId],[IsPrivileged])
    264 GO
Note: See TracChangeset for help on using the changeset viewer.