From 9df38afa2d7046ed32e1dc7c3deaa182d13bdde1 Mon Sep 17 00:00:00 2001 From: Mike Rylander Date: Wed, 23 Mar 2016 18:37:12 -0400 Subject: [PATCH] LP#1549505: Only use appropriate filtering temp tables for uri-ish and global populations Signed-off-by: Mike Rylander --- .../sql/Pg/upgrade/XXXX.schema.statisitcal-ratings.sql | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statisitcal-ratings.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statisitcal-ratings.sql index ff24030682..e690b8edb4 100644 --- a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statisitcal-ratings.sql +++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statisitcal-ratings.sql @@ -398,7 +398,7 @@ BEGIN UNION SELECT id FROM precalc_bibs_by_uri_list; - SELECT count(*) INTO cnt FROM precalc_bibs_by_copy_uri_list; + SELECT count(*) INTO cnt FROM precalc_bibs_by_copy_or_uri_list; RETURN cnt; END; $f$ LANGUAGE PLPGSQL; @@ -953,7 +953,7 @@ CREATE OR REPLACE FUNCTION rating.generic_fixed_rating_by_uri(badge_id INT) BEGIN PERFORM rating.precalc_bibs_by_uri(badge_id); RETURN QUERY - SELECT id, 1.0 FROM precalc_filter_bib_list + SELECT id, 1.0 FROM precalc_bib_filter_bib_list INTERSECT SELECT id, 1.0 FROM precalc_bibs_by_uri_list; END; @@ -964,18 +964,21 @@ CREATE OR REPLACE FUNCTION rating.generic_fixed_rating_by_copy_or_uri(badge_id I BEGIN PERFORM rating.precalc_bibs_by_copy_or_uri(badge_id); RETURN QUERY - SELECT id, 1.0 FROM precalc_filter_bib_list + (SELECT id, 1.0 FROM precalc_filter_bib_list INTERSECT - SELECT id, 1.0 FROM precalc_bibs_by_copy_or_uri_list; + SELECT id, 1.0 FROM precalc_bibs_by_copy_list) + UNION + (SELECT id, 1.0 FROM precalc_bib_filter_bib_list + INTERSECT + SELECT id, 1.0 FROM precalc_bibs_by_uri_list); END; $f$ LANGUAGE PLPGSQL STRICT; CREATE OR REPLACE FUNCTION rating.generic_fixed_rating_global(badge_id INT) RETURNS TABLE (record BIGINT, value NUMERIC) AS $f$ BEGIN - PERFORM rating.precalc_bibs_by_copy_or_uri(badge_id); RETURN QUERY - SELECT id, 1.0 FROM precalc_filter_bib_list; + SELECT id, 1.0 FROM precalc_bib_filter_bib_list; END; $f$ LANGUAGE PLPGSQL STRICT; -- 2.11.0