MySQL · 1318 bytes Raw Blame History
1 -- SPDX-License-Identifier: AGPL-3.0-or-later
2
3 -- name: AppendStepLogChunk :one
4 INSERT INTO workflow_step_log_chunks (step_id, seq, chunk)
5 VALUES ($1, $2, $3)
6 ON CONFLICT (step_id, seq) DO NOTHING
7 RETURNING id, step_id, seq, created_at;
8
9 -- name: ListStepLogChunks :many
10 SELECT id, step_id, seq, chunk, created_at
11 FROM workflow_step_log_chunks
12 WHERE step_id = $1 AND seq > $2
13 ORDER BY seq ASC
14 LIMIT $3;
15
16 -- name: ListAllStepLogChunksForStep :many
17 SELECT id, step_id, seq, chunk, created_at
18 FROM workflow_step_log_chunks
19 WHERE step_id = $1
20 ORDER BY seq ASC;
21
22 -- name: GetStepLogChunkBefore :one
23 SELECT id, step_id, seq, chunk, created_at
24 FROM workflow_step_log_chunks
25 WHERE step_id = $1 AND seq < $2
26 ORDER BY seq DESC
27 LIMIT 1;
28
29 -- name: GetStepLogChunkByStepSeq :one
30 SELECT id, step_id, seq, chunk, created_at
31 FROM workflow_step_log_chunks
32 WHERE step_id = $1 AND seq = $2;
33
34 -- name: UpdateStepLogChunk :exec
35 UPDATE workflow_step_log_chunks
36 SET chunk = $2
37 WHERE id = $1;
38
39 -- name: DeleteStepLogChunks :exec
40 DELETE FROM workflow_step_log_chunks WHERE step_id = $1;
41
42 -- name: DeleteStaleStepLogChunksForCleanup :execrows
43 DELETE FROM workflow_step_log_chunks c
44 USING workflow_steps s
45 WHERE c.step_id = s.id
46 AND s.status IN ('completed', 'cancelled', 'skipped')
47 AND s.completed_at IS NOT NULL
48 AND s.completed_at < $1;
49