Free cookie consent management tool by TermsFeed Policy Generator

source: trunk/HeuristicLab.Services.Hive/3.3/HeuristicLab.Services.Hive-3.3.csproj @ 18012

Last change on this file since 18012 was 17574, checked in by jkarder, 5 years ago

#3062: overhauled statistics generation and cleanup

  • switched to a single thread for database cleanup and statistics generation (executed sequentially)
  • switched to preemptive deletion of items that are in status DeletionPending (for jobs: statelogs, taskdata, tasks)
  • added code that aborts tasks whose jobs have already been marked for deletion
  • added method UseTransactionAndSubmit in addition to UseTransaction in PersistenceManager
  • updated DAO methods and introduced more bare metal sql
  • introduced DAO methods for batch deletion
  • fixed usage of enum values in DAO sql queries
  • deleted unnecessary triggers tr_JobDeleteCascade and tr_TaskDeleteCascade in Prepare Hive Database.sql
  • changed scheduling for less interference with janitor and other heartbeats
    • increased scheduling patience from 20 to 70 seconds (to wait longer to get the mutex for scheduling)
    • changed signature of ITaskScheduler.Schedule
    • added base class for TaskSchedulers and moved assignment of tasks to slaves into it
    • changed RoundRobinTaskScheduler to use bare metal sql
  • made MessageContainer a storable type (leftover)
  • updated HiveJanitorServiceInstaller.nsi
File size: 10.7 KB
Line 
1<?xml version="1.0" encoding="utf-8"?>
2<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3  <PropertyGroup>
4    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
5    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
6    <ProductVersion>8.0.30703</ProductVersion>
7    <SchemaVersion>2.0</SchemaVersion>
8    <ProjectGuid>{CF9DA321-AC1B-4FD3-9EC3-67BC6B861BDE}</ProjectGuid>
9    <OutputType>Library</OutputType>
10    <AppDesignerFolder>Properties</AppDesignerFolder>
11    <RootNamespace>HeuristicLab.Services.Hive</RootNamespace>
12    <AssemblyName>HeuristicLab.Services.Hive-3.3</AssemblyName>
13    <ProjectTypeGuids>{3D9AD99F-2412-4246-B90B-4EAA41C64699};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
14    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
15    <FileAlignment>512</FileAlignment>
16    <TargetFrameworkProfile />
17  </PropertyGroup>
18  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
19    <DebugSymbols>true</DebugSymbols>
20    <DebugType>full</DebugType>
21    <Optimize>false</Optimize>
22    <OutputPath>bin\Debug\</OutputPath>
23    <DefineConstants>DEBUG;TRACE</DefineConstants>
24    <ErrorReport>prompt</ErrorReport>
25    <WarningLevel>4</WarningLevel>
26    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
27    <Prefer32Bit>false</Prefer32Bit>
28  </PropertyGroup>
29  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
30    <DebugType>pdbonly</DebugType>
31    <Optimize>true</Optimize>
32    <OutputPath>bin\Release\</OutputPath>
33    <DefineConstants>TRACE</DefineConstants>
34    <ErrorReport>prompt</ErrorReport>
35    <WarningLevel>4</WarningLevel>
36    <DocumentationFile>
37    </DocumentationFile>
38    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
39    <Prefer32Bit>false</Prefer32Bit>
40  </PropertyGroup>
41  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
42    <DebugSymbols>true</DebugSymbols>
43    <OutputPath>bin\Debug\</OutputPath>
44    <DefineConstants>DEBUG;TRACE</DefineConstants>
45    <DebugType>full</DebugType>
46    <PlatformTarget>x86</PlatformTarget>
47    <ErrorReport>prompt</ErrorReport>
48    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
49    <Prefer32Bit>false</Prefer32Bit>
50  </PropertyGroup>
51  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
52    <OutputPath>bin\Release\</OutputPath>
53    <DefineConstants>TRACE</DefineConstants>
54    <DocumentationFile>
55    </DocumentationFile>
56    <Optimize>true</Optimize>
57    <DebugType>pdbonly</DebugType>
58    <PlatformTarget>x86</PlatformTarget>
59    <ErrorReport>prompt</ErrorReport>
60    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
61    <Prefer32Bit>false</Prefer32Bit>
62  </PropertyGroup>
63  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
64    <DebugSymbols>true</DebugSymbols>
65    <OutputPath>bin\Debug\</OutputPath>
66    <DefineConstants>DEBUG;TRACE</DefineConstants>
67    <DebugType>full</DebugType>
68    <PlatformTarget>x64</PlatformTarget>
69    <ErrorReport>prompt</ErrorReport>
70    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
71    <Prefer32Bit>false</Prefer32Bit>
72  </PropertyGroup>
73  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
74    <OutputPath>bin\Release\</OutputPath>
75    <DefineConstants>TRACE</DefineConstants>
76    <DocumentationFile>
77    </DocumentationFile>
78    <Optimize>true</Optimize>
79    <DebugType>pdbonly</DebugType>
80    <PlatformTarget>x64</PlatformTarget>
81    <ErrorReport>prompt</ErrorReport>
82    <CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
83    <Prefer32Bit>false</Prefer32Bit>
84  </PropertyGroup>
85  <PropertyGroup>
86    <SignAssembly>true</SignAssembly>
87  </PropertyGroup>
88  <PropertyGroup>
89    <AssemblyOriginatorKeyFile>HeuristicLab.snk</AssemblyOriginatorKeyFile>
90  </PropertyGroup>
91  <ItemGroup>
92    <Reference Include="HeuristicLab.Common-3.3">
93      <HintPath>..\..\bin\HeuristicLab.Common-3.3.dll</HintPath>
94    </Reference>
95    <Reference Include="HeuristicLab.Core-3.3">
96      <HintPath>..\..\bin\HeuristicLab.Core-3.3.dll</HintPath>
97    </Reference>
98    <Reference Include="HeuristicLab.Persistence-3.3">
99      <HintPath>..\..\bin\HeuristicLab.Persistence-3.3.dll</HintPath>
100    </Reference>
101    <Reference Include="HeuristicLab.PluginInfrastructure-3.3">
102      <HintPath>..\..\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>
103    </Reference>
104    <Reference Include="System" />
105    <Reference Include="System.Core" />
106    <Reference Include="System.Data.Linq" />
107    <Reference Include="System.Runtime.Serialization" />
108    <Reference Include="System.ServiceModel" />
109    <Reference Include="System.Transactions" />
110    <Reference Include="System.Web" />
111    <Reference Include="System.Web.ApplicationServices" />
112    <Reference Include="System.Windows.Forms" />
113    <Reference Include="System.Xml.Linq" />
114    <Reference Include="System.Data.DataSetExtensions" />
115    <Reference Include="System.Data" />
116    <Reference Include="System.Xml" />
117  </ItemGroup>
118  <ItemGroup>
119    <Compile Include="Converter.cs" />
120    <Compile Include="DataTransfer\AssignedJobResource.cs" />
121    <Compile Include="DataTransfer\AssignedProjectResource.cs" />
122    <Compile Include="DataTransfer\Command.cs" />
123    <Compile Include="DataTransfer\JobState.cs" />
124    <Compile Include="DataTransfer\Project.cs" />
125    <Compile Include="DataTransfer\ProjectPermission.cs" />
126    <Compile Include="DataTransfer\UserPriority.cs" />
127    <Compile Include="DataTransfer\Downtime.cs" />
128    <Compile Include="DataTransfer\Heartbeat.cs" />
129    <Compile Include="DataTransfer\Job.cs" />
130    <Compile Include="DataTransfer\JobPermission.cs" />
131    <Compile Include="DataTransfer\HiveItem.cs" />
132    <Compile Include="DataTransfer\Task.cs" />
133    <Compile Include="DataTransfer\TaskData.cs" />
134    <Compile Include="DataTransfer\TaskState.cs" />
135    <Compile Include="DataTransfer\LightweightTask.cs" />
136    <Compile Include="DataTransfer\NamedHiveItem.cs" />
137    <Compile Include="DataTransfer\Permission.cs" />
138    <Compile Include="DataTransfer\Plugin.cs" />
139    <Compile Include="DataTransfer\PluginData.cs" />
140    <Compile Include="DataTransfer\Resource.cs" />
141    <Compile Include="DataTransfer\Slave.cs" />
142    <Compile Include="DataTransfer\SlaveGroup.cs" />
143    <Compile Include="DataTransfer\SlaveState.cs" />
144    <Compile Include="DataTransfer\StateLog.cs" />
145    <Compile Include="HiveStatisticsGenerator.cs" />
146    <Compile Include="Interfaces\IStatisticsGenerator.cs" />
147    <Compile Include="HiveJanitor.cs" />
148    <Compile Include="HiveOperationContext.cs" />
149    <Compile Include="Interfaces\ITaskScheduler.cs" />
150    <Compile Include="PerformanceLogger.cs" />
151    <Compile Include="Scheduler\TaskInfoForScheduler.cs" />
152    <Compile Include="Scheduler\JobInfoForScheduler.cs" />
153    <Compile Include="Scheduler\RoundRobinTaskScheduler.cs" />
154    <None Include="app.config">
155      <SubType>Designer</SubType>
156    </None>
157    <None Include="Plugin.cs.frame" />
158    <None Include="Properties\AssemblyInfo.cs.frame" />
159    <Compile Include="Manager\HeartbeatManager.cs" />
160    <Compile Include="Interfaces\IEventManager.cs" />
161    <Compile Include="Interfaces\IServiceLocator.cs" />
162    <Compile Include="Manager\AuthorizationManager.cs" />
163    <Compile Include="Plugin.cs" />
164    <Compile Include="Manager\EventManager.cs" />
165    <Compile Include="HiveRoles.cs" />
166    <Compile Include="HiveService.cs" />
167    <Compile Include="Interfaces\IAuthorizationManager.cs" />
168    <Compile Include="MessageContainer.cs" />
169    <Compile Include="Properties\AssemblyInfo.cs" />
170    <Compile Include="Properties\Settings.Designer.cs">
171      <DependentUpon>Settings.settings</DependentUpon>
172      <AutoGen>True</AutoGen>
173      <DesignTimeSharedInput>True</DesignTimeSharedInput>
174    </Compile>
175    <Compile Include="Scheduler\TaskScheduler.cs" />
176    <Compile Include="ServiceContracts\IHiveService.cs" />
177    <Compile Include="ServiceFaults\PluginAlreadyExistsFault.cs" />
178    <Compile Include="ServiceLocator.cs" />
179    <None Include="Properties\Settings.settings">
180      <Generator>PublicSettingsSingleFileGenerator</Generator>
181      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
182    </None>
183  </ItemGroup>
184  <ItemGroup>
185    <ProjectReference Include="..\..\HeuristicLab.Services.Access.DataAccess\3.3\HeuristicLab.Services.Access.DataAccess-3.3.csproj">
186      <Project>{0F652437-998A-4EAB-8BF1-444B5FE8CE97}</Project>
187      <Name>HeuristicLab.Services.Access.DataAccess-3.3</Name>
188    </ProjectReference>
189    <ProjectReference Include="..\..\HeuristicLab.Services.Access\3.3\HeuristicLab.Services.Access-3.3.csproj">
190      <Project>{9FAC0B23-2730-452A-9BA0-D7CA1746C541}</Project>
191      <Name>HeuristicLab.Services.Access-3.3</Name>
192    </ProjectReference>
193    <ProjectReference Include="..\..\HeuristicLab.Services.Hive.DataAccess\3.3\HeuristicLab.Services.Hive.DataAccess-3.3.csproj">
194      <Project>{EC2C8109-6E1E-4C88-9A2B-908CFF2EF4AC}</Project>
195      <Name>HeuristicLab.Services.Hive.DataAccess-3.3</Name>
196    </ProjectReference>
197  </ItemGroup>
198  <ItemGroup>
199    <None Include="HeuristicLab.snk" />
200  </ItemGroup>
201  <ItemGroup>
202    <Reference Include="HEAL.Attic, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
203      <SpecificVersion>False</SpecificVersion>
204      <HintPath>..\..\bin\HEAL.Attic.dll</HintPath>
205      <Private>False</Private>
206    </Reference>
207  </ItemGroup>
208  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
209  <ProjectExtensions>
210    <VisualStudio>
211      <FlavorProperties GUID="{3D9AD99F-2412-4246-B90B-4EAA41C64699}">
212        <WcfProjectProperties>
213          <AutoStart>False</AutoStart>
214        </WcfProjectProperties>
215      </FlavorProperties>
216    </VisualStudio>
217  </ProjectExtensions>
218  <PropertyGroup>
219    <PostBuildEvent>
220    </PostBuildEvent>
221  </PropertyGroup>
222  <PropertyGroup>
223    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
224set ProjectDir=$(ProjectDir)
225set SolutionDir=$(SolutionDir)
226set Outdir=$(Outdir)
227
228call PreBuildEvent.cmd</PreBuildEvent>
229    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
230export ProjectDir=$(ProjectDir)
231export SolutionDir=$(SolutionDir)
232
233$SolutionDir/PreBuildEvent.sh
234</PreBuildEvent>
235  </PropertyGroup>
236  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
237       Other similar extension points exist, see Microsoft.Common.targets.
238  <Target Name="BeforeBuild">
239  </Target>
240  <Target Name="AfterBuild">
241  </Target>
242  -->
243</Project>
Note: See TracBrowser for help on using the repository browser.