Free cookie consent management tool by TermsFeed Policy Generator

source: branches/3082_Scaling/Installers/HiveJanitorServiceInstaller.nsi @ 17882

Last change on this file since 17882 was 17574, checked in by jkarder, 4 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: 4.3 KB
Line 
1/* HeuristicLab
2 * Copyright (C) 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; NSIS installer script for HeuristicLab Hive Janitor Service
21; NSIS version: 3.0b0
22
23Name "HeuristicLab Hive Janitor Service"
24OutFile "HeuristicLab Hive Janitor Service Installer.exe"
25
26; Build configuration is either Debug or Release
27!define BUILDCONFIGURATION "Debug"
28!define JANITORBUILDPATH "..\HeuristicLab.Services.Hive.JanitorService\3.3\bin\${BUILDCONFIGURATION}"
29!define VERSION "3.3.16"
30
31InstallDir $PROGRAMFILES\HeuristicLabHiveJanitorService
32RequestExecutionLevel admin
33
34Page license
35Page directory
36Page instfiles
37
38UninstPage uninstConfirm
39UninstPage instfiles
40
41LicenseData "..\HeuristicLab\3.3\GNU General Public License.txt"
42Icon "..\HeuristicLab\3.3\HeuristicLab.ico"
43
44
45Section "HeuristicLabHiveJanitorService (required)"
46  SetOutPath $INSTDIR
47
48  File "${JANITORBUILDPATH}\Google.Protobuf.dll"
49  File "${JANITORBUILDPATH}\HEAL.Attic.dll"
50  ;File "${JANITORBUILDPATH}\GeoIP.dat"
51  File "${JANITORBUILDPATH}\HeuristicLab.Common-3.3.dll"
52  ;File "${JANITORBUILDPATH}\HeuristicLab.Persistence-3.3.dll"
53  File "${JANITORBUILDPATH}\HeuristicLab.PluginInfrastructure-3.3.dll"
54  File "${JANITORBUILDPATH}\HeuristicLab.Services.Access.dll"
55  File "${JANITORBUILDPATH}\HeuristicLab.Services.Access.DataAccess.dll"
56  File "${JANITORBUILDPATH}\HeuristicLab.Services.Hive.DataAccess-3.3.dll"
57  File "${JANITORBUILDPATH}\HeuristicLab.Services.Hive.JanitorService-3.3.exe"
58  File "${JANITORBUILDPATH}\HeuristicLab.Services.Hive.JanitorService-3.3.exe.config"
59  File "${JANITORBUILDPATH}\HeuristicLab.Services.Hive-3.3.dll"
60  ;File "${JANITORBUILDPATH}\HeuristicLab.Tracing-3.3.dll"
61 
62  WriteRegStr HKLM SOFTWARE\HeuristicLabHiveJanitorService "Install_Dir" "$INSTDIR"
63  WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\HeuristicLabHiveJanitorService" "DisplayName" "HeuristicLabHiveJanitorService"
64  WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\HeuristicLabHiveJanitorService" "UninstallString" '"$INSTDIR\uninstall.exe"'
65  WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\HeuristicLabHiveJanitorService" "NoModify" 1
66  WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\HeuristicLabHiveJanitorService" "NoRepair" 1
67  WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\HeuristicLabHiveJanitorService" "DisplayVersion" "${VERSION}"
68  WriteUninstaller "uninstall.exe"
69
70  nsExec::ExecToLog '"$INSTDIR\HeuristicLab.Services.Hive.JanitorService-3.3.exe" --install'
71SectionEnd
72
73
74Section "un.Uninstall" 
75  DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\HeuristicLabHiveJanitorService"
76  DeleteRegKey HKLM SOFTWARE\HeuristicLabHiveJanitorService
77   
78  nsExec::ExecToLog '"$INSTDIR\HeuristicLab.Services.Hive.JanitorService-3.3.exe" --uninstall'
79   
80  Delete "$INSTDIR\Google.Protobuf.dll"
81  Delete "$INSTDIR\HEAL.Attic.dll"
82  ;Delete "$INSTDIR\GeoIP.dat"
83  Delete "$INSTDIR\HeuristicLab.Common-3.3.dll"
84  ;Delete "$INSTDIR\HeuristicLab.Persistence-3.3.dll"
85  Delete "$INSTDIR\HeuristicLab.PluginInfrastructure-3.3.dll"
86  Delete "$INSTDIR\HeuristicLab.Services.Access.dll"
87  Delete "$INSTDIR\HeuristicLab.Services.Access.DataAccess.dll"
88  Delete "$INSTDIR\HeuristicLab.Services.Hive.DataAccess-3.3.dll"
89  Delete "$INSTDIR\HeuristicLab.Services.Hive.JanitorService-3.3.exe"
90  Delete "$INSTDIR\HeuristicLab.Services.Hive.JanitorService-3.3.exe.config"
91  Delete "$INSTDIR\HeuristicLab.Services.Hive-3.3.dll"
92  ;Delete "$INSTDIR\HeuristicLab.Tracing-3.3.dll"
93  Delete "$INSTDIR\uninstall.exe"
94
95  RMDir "$INSTDIR"
96SectionEnd
97
98
Note: See TracBrowser for help on using the repository browser.