Skip to content

Commit 949d9d0

Browse files
committed
MBS-11760: Add missing delete_unused_tag triggers
For some reason, we did not have delete_unused_tag triggers for every taggable entity type. This was causing tags deleted from the missing entity types to remain in the DB with 0 uses.
1 parent 8980f8c commit 949d9d0

File tree

4 files changed

+50
-8
lines changed

4 files changed

+50
-8
lines changed

admin/sql/CreateTriggers.sql

+20-4
Original file line numberDiff line numberDiff line change
@@ -1036,34 +1036,50 @@ CREATE CONSTRAINT TRIGGER delete_unused_tag
10361036
AFTER INSERT ON tag DEFERRABLE INITIALLY DEFERRED
10371037
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag();
10381038

1039+
CREATE CONSTRAINT TRIGGER delete_unused_tag
1040+
AFTER DELETE ON area_tag DEFERRABLE INITIALLY DEFERRED
1041+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
1042+
10391043
CREATE CONSTRAINT TRIGGER delete_unused_tag
10401044
AFTER DELETE ON artist_tag DEFERRABLE INITIALLY DEFERRED
10411045
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10421046

1047+
CREATE CONSTRAINT TRIGGER delete_unused_tag
1048+
AFTER DELETE ON event_tag DEFERRABLE INITIALLY DEFERRED
1049+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
1050+
1051+
CREATE CONSTRAINT TRIGGER delete_unused_tag
1052+
AFTER DELETE ON instrument_tag DEFERRABLE INITIALLY DEFERRED
1053+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
1054+
10431055
CREATE CONSTRAINT TRIGGER delete_unused_tag
10441056
AFTER DELETE ON label_tag DEFERRABLE INITIALLY DEFERRED
10451057
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10461058

10471059
CREATE CONSTRAINT TRIGGER delete_unused_tag
1048-
AFTER DELETE ON release_group_tag DEFERRABLE INITIALLY DEFERRED
1060+
AFTER DELETE ON place_tag DEFERRABLE INITIALLY DEFERRED
10491061
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10501062

10511063
CREATE CONSTRAINT TRIGGER delete_unused_tag
1052-
AFTER DELETE ON work_tag DEFERRABLE INITIALLY DEFERRED
1064+
AFTER DELETE ON recording_tag DEFERRABLE INITIALLY DEFERRED
10531065
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10541066

10551067
CREATE CONSTRAINT TRIGGER delete_unused_tag
1056-
AFTER DELETE ON area_tag DEFERRABLE INITIALLY DEFERRED
1068+
AFTER DELETE ON release_group_tag DEFERRABLE INITIALLY DEFERRED
10571069
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10581070

10591071
CREATE CONSTRAINT TRIGGER delete_unused_tag
1060-
AFTER DELETE ON instrument_tag DEFERRABLE INITIALLY DEFERRED
1072+
AFTER DELETE ON release_tag DEFERRABLE INITIALLY DEFERRED
10611073
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10621074

10631075
CREATE CONSTRAINT TRIGGER delete_unused_tag
10641076
AFTER DELETE ON series_tag DEFERRABLE INITIALLY DEFERRED
10651077
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
10661078

1079+
CREATE CONSTRAINT TRIGGER delete_unused_tag
1080+
AFTER DELETE ON work_tag DEFERRABLE INITIALLY DEFERRED
1081+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
1082+
10671083
--------------------------------------------------------------------------------
10681084
CREATE CONSTRAINT TRIGGER apply_artist_release_group_pending_updates
10691085
AFTER INSERT OR UPDATE OR DELETE ON release DEFERRABLE INITIALLY DEFERRED

admin/sql/DropTriggers.sql

+7-3
Original file line numberDiff line numberDiff line change
@@ -314,13 +314,17 @@ DROP TRIGGER url_gc_a_del_l_url_url ON l_url_url;
314314
DROP TRIGGER url_gc_a_upd_l_url_work ON l_url_work;
315315
DROP TRIGGER url_gc_a_del_l_url_work ON l_url_work;
316316
DROP TRIGGER delete_unused_tag ON tag;
317+
DROP TRIGGER delete_unused_tag ON area_tag;
317318
DROP TRIGGER delete_unused_tag ON artist_tag;
319+
DROP TRIGGER delete_unused_tag ON event_tag;
320+
DROP TRIGGER delete_unused_tag ON instrument_tag;
318321
DROP TRIGGER delete_unused_tag ON label_tag;
322+
DROP TRIGGER delete_unused_tag ON place_tag;
323+
DROP TRIGGER delete_unused_tag ON recording_tag;
319324
DROP TRIGGER delete_unused_tag ON release_group_tag;
320-
DROP TRIGGER delete_unused_tag ON work_tag;
321-
DROP TRIGGER delete_unused_tag ON area_tag;
322-
DROP TRIGGER delete_unused_tag ON instrument_tag;
325+
DROP TRIGGER delete_unused_tag ON release_tag;
323326
DROP TRIGGER delete_unused_tag ON series_tag;
327+
DROP TRIGGER delete_unused_tag ON work_tag;
324328
DROP TRIGGER apply_artist_release_group_pending_updates ON release;
325329
DROP TRIGGER apply_artist_release_pending_updates ON release;
326330
DROP TRIGGER apply_artist_release_pending_updates ON release_country;
+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
\set ON_ERROR_STOP 1
2+
3+
BEGIN;
4+
5+
CREATE CONSTRAINT TRIGGER delete_unused_tag
6+
AFTER DELETE ON event_tag DEFERRABLE INITIALLY DEFERRED
7+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
8+
9+
CREATE CONSTRAINT TRIGGER delete_unused_tag
10+
AFTER DELETE ON place_tag DEFERRABLE INITIALLY DEFERRED
11+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
12+
13+
CREATE CONSTRAINT TRIGGER delete_unused_tag
14+
AFTER DELETE ON recording_tag DEFERRABLE INITIALLY DEFERRED
15+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
16+
17+
CREATE CONSTRAINT TRIGGER delete_unused_tag
18+
AFTER DELETE ON release_tag DEFERRABLE INITIALLY DEFERRED
19+
FOR EACH ROW EXECUTE PROCEDURE trg_delete_unused_tag_ref();
20+
21+
COMMIT;

upgrade.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@
104104

105105
"27": {
106106
"slave": ["20210526-a_upd_release_event.sql",
107-
"20210606-mbs-11682.sql"]
107+
"20210606-mbs-11682.sql"],
108+
"standalone": ["20210702-mbs-11760.sql"]
108109
}
109110
}

0 commit comments

Comments
 (0)