1 | USE [HeuristicLab.Hive-3.3]
|
---|
2 | SET ANSI_NULLS ON
|
---|
3 | SET QUOTED_IDENTIFIER ON
|
---|
4 | GO
|
---|
5 |
|
---|
6 | /* remove statistics from trigger */
|
---|
7 | ALTER TRIGGER [dbo].[tr_TaskDeleteCascade] ON [dbo].[Task] INSTEAD OF DELETE AS
|
---|
8 | BEGIN
|
---|
9 | SELECT
|
---|
10 | he.OwnerUserId AS UserId,
|
---|
11 | ROUND(SUM(j.ExecutionTimeMs) / 1000, 0) AS ExecutionTimeS,
|
---|
12 | ROUND(ISNULL(SUM(CASE ls.State WHEN 'Finished' THEN j.ExecutionTimeMs END), 0) / 1000, 0) AS ExecutionTimeSFinishedJobs,
|
---|
13 | ISNULL(SUM(CASE ls.State WHEN 'Finished' THEN DATEDIFF(s, fs.DateTime, ls.DateTime) ELSE 0 END), 0) AS StartToEndTimeS
|
---|
14 | FROM
|
---|
15 | deleted j,
|
---|
16 | Job he,
|
---|
17 | view_FirstState fs,
|
---|
18 | view_LastState ls
|
---|
19 | WHERE
|
---|
20 | he.JobId = j.JobId AND
|
---|
21 | fs.TaskId = j.TaskId AND
|
---|
22 | ls.TaskId = j.TaskId
|
---|
23 | GROUP BY he.OwnerUserId
|
---|
24 |
|
---|
25 | -- recursively delete jobs
|
---|
26 | CREATE TABLE #Table(
|
---|
27 | TaskId uniqueidentifier
|
---|
28 | )
|
---|
29 | INSERT INTO #Table (TaskId)
|
---|
30 | SELECT TaskId FROM deleted
|
---|
31 |
|
---|
32 | DECLARE @c INT
|
---|
33 | SET @c = 0
|
---|
34 |
|
---|
35 | WHILE @c <> (SELECT COUNT(TaskId) FROM #Table) BEGIN
|
---|
36 | SELECT @c = COUNT(TaskId) FROM #Table
|
---|
37 |
|
---|
38 | INSERT INTO #Table (TaskId)
|
---|
39 | SELECT Task.TaskId
|
---|
40 | FROM Task
|
---|
41 | LEFT OUTER JOIN #Table ON Task.TaskId = #Table.TaskId
|
---|
42 | WHERE Task.ParentTaskId IN (SELECT TaskId FROM #Table)
|
---|
43 | AND #Table.TaskId IS NULL
|
---|
44 | END
|
---|
45 |
|
---|
46 | DELETE TaskData FROM TaskData INNER JOIN #Table ON TaskData.TaskId = #Table.TaskId
|
---|
47 | DELETE Task FROM Task INNER JOIN #Table ON Task.TaskId = #Table.TaskId
|
---|
48 | END
|
---|
49 | GO
|
---|
50 |
|
---|
51 | /* drop obsolete triggers/views/tables */
|
---|
52 | DROP TRIGGER [dbo].[tr_StatisticsDeleteCascade]
|
---|
53 | GO
|
---|
54 |
|
---|
55 | DROP VIEW [dbo].[view_Statistics]
|
---|
56 | GO
|
---|
57 |
|
---|
58 | DROP TABLE [dbo].[DeletedJobStatistics]
|
---|
59 | GO
|
---|
60 |
|
---|
61 | DROP TABLE [dbo].[UserStatistics]
|
---|
62 | GO
|
---|
63 |
|
---|
64 | DROP TABLE [dbo].[SlaveStatistics]
|
---|
65 | GO
|
---|
66 |
|
---|
67 | DROP TABLE [dbo].[Statistics]
|
---|
68 | GO |
---|