mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-12 19:14:23 +00:00
5cfccb1442
# Which Problems Are Solved Curretly loading targets fails on cockraochdb because the order of `with`-statements is wrong. # How the Problems Are Solved Changed the order of queries in the statements.
48 lines
2.0 KiB
SQL
48 lines
2.0 KiB
SQL
WITH RECURSIVE
|
|
matched AS ((SELECT *
|
|
FROM projections.executions1
|
|
WHERE instance_id = $1
|
|
AND id = ANY($2)
|
|
ORDER BY id DESC
|
|
LIMIT 1)
|
|
UNION ALL
|
|
(SELECT *
|
|
FROM projections.executions1
|
|
WHERE instance_id = $1
|
|
AND id = ANY($3)
|
|
ORDER BY id DESC
|
|
LIMIT 1)),
|
|
matched_targets_and_includes AS (SELECT pos.*
|
|
FROM matched m
|
|
JOIN
|
|
projections.executions1_targets pos
|
|
ON m.id = pos.execution_id
|
|
AND m.instance_id = pos.instance_id
|
|
ORDER BY execution_id,
|
|
position),
|
|
dissolved_execution_targets(execution_id, instance_id, position, "include", "target_id")
|
|
AS (SELECT execution_id
|
|
, instance_id
|
|
, ARRAY [position]
|
|
, "include"
|
|
, "target_id"
|
|
FROM matched_targets_and_includes
|
|
UNION ALL
|
|
SELECT e.execution_id
|
|
, p.instance_id
|
|
, e.position || p.position
|
|
, p."include"
|
|
, p."target_id"
|
|
FROM dissolved_execution_targets e
|
|
JOIN projections.executions1_targets p
|
|
ON e.instance_id = p.instance_id
|
|
AND e.include IS NOT NULL
|
|
AND e.include = p.execution_id)
|
|
select e.execution_id, e.instance_id, e.target_id, t.target_type, t.endpoint, t.timeout, t.interrupt_on_error
|
|
FROM dissolved_execution_targets e
|
|
JOIN projections.targets1 t
|
|
ON e.instance_id = t.instance_id
|
|
AND e.target_id = t.id
|
|
WHERE "include" = ''
|
|
ORDER BY position DESC;
|