mirror of
https://github.com/ansible/awx.git
synced 2024-10-26 16:25:06 +03:00
Adjusted foreignkeys.sql for correctness
Some relationships known to be handled by the special mapping sql file were being caught as false positives.
This commit is contained in:
parent
b837d549ff
commit
ad9d5904d8
@ -1,7 +1,10 @@
|
||||
DO $$
|
||||
DECLARE
|
||||
-- add table names here when they get excluded from main / included in topology dump
|
||||
topology text[] := ARRAY['main_instance', 'main_instancegroup', 'main_instancegroup_instances'];
|
||||
excluded text[] := ARRAY['main_instance', 'main_instancegroup', 'main_instancegroup_instances', 'main_organizationinstancegroupmembership', 'main_unifiedjobtemplateinstancegroupmembership', 'main_inventoryinstancegroupmembership'];
|
||||
|
||||
-- add table names here when they are handled by the special-case mapping
|
||||
mapping text[] := ARRAY['main_organizationinstancegroupmembership', 'main_unifiedjobtemplateinstancegroupmembership', 'main_inventoryinstancegroupmembership'];
|
||||
BEGIN
|
||||
CREATE TABLE tmp_fk_from AS (
|
||||
SELECT DISTINCT
|
||||
@ -11,8 +14,8 @@ BEGIN
|
||||
JOIN information_schema.constraint_column_usage AS ccu
|
||||
ON ccu.constraint_name = tc.constraint_name
|
||||
WHERE tc.constraint_type = 'FOREIGN KEY'
|
||||
AND tc.table_name = ANY (excluded)
|
||||
AND NOT ccu.table_name = ANY (topology)
|
||||
AND tc.table_name = ANY (topology)
|
||||
AND NOT ccu.table_name = ANY (topology || mapping)
|
||||
);
|
||||
|
||||
CREATE TABLE tmp_fk_into AS (
|
||||
@ -23,8 +26,8 @@ BEGIN
|
||||
JOIN information_schema.constraint_column_usage AS ccu
|
||||
ON ccu.constraint_name = tc.constraint_name
|
||||
WHERE tc.constraint_type = 'FOREIGN KEY'
|
||||
AND ccu.table_name = ANY (excluded)
|
||||
AND NOT tc.table_name = ANY (topology)
|
||||
AND ccu.table_name = ANY (topology)
|
||||
AND NOT tc.table_name = ANY (topology || mapping)
|
||||
);
|
||||
END $$;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user