[open-ils-commits] [GIT] Evergreen ILS branch rel_2_10 updated. eebf26df764835e2d380db890261db9456225c05

Evergreen Git git at git.evergreen-ils.org
Thu Mar 3 08:59:02 EST 2016


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Evergreen ILS".

The branch, rel_2_10 has been updated
       via  eebf26df764835e2d380db890261db9456225c05 (commit)
       via  305869b468e61c8b64684575284db14685ba8812 (commit)
      from  19814127a1b9731c60d78d31bcdda8b684ff2038 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit eebf26df764835e2d380db890261db9456225c05
Author: Galen Charlton <gmc at esilibrary.com>
Date:   Thu Mar 3 08:57:27 2016 -0500

    LP#1505286: use older syntax for Pg 9.2+
    
    This makes no function difference, but potentially might
    remove a small speed bump for folks doing detailed schema
    diffs.
    
    Signed-off-by: Galen Charlton <gmc at esilibrary.com>

diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 96263af..915ffbe 100644
--- a/Open-ILS/src/sql/Pg/002.schema.config.sql
+++ b/Open-ILS/src/sql/Pg/002.schema.config.sql
@@ -91,7 +91,7 @@ CREATE TRIGGER no_overlapping_deps
     BEFORE INSERT OR UPDATE ON config.db_patch_dependencies
     FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates');
 
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0969', :eg_version); -- jeffdavis/stompro
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0970', :eg_version); -- Dyrcona/gmcharlt
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/0970.schema.limit_facets_pg91_compat.sql b/Open-ILS/src/sql/Pg/upgrade/0970.schema.limit_facets_pg91_compat.sql
new file mode 100644
index 0000000..26dc8b4
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/upgrade/0970.schema.limit_facets_pg91_compat.sql
@@ -0,0 +1,43 @@
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('0970', :eg_version); -- Dyrcona/gmcharlt
+
+CREATE OR REPLACE FUNCTION search.facets_for_record_set(ignore_facet_classes TEXT[], hits BIGINT[]) RETURNS TABLE (id INT, value TEXT, count BIGINT) AS $$
+    SELECT id, value, count FROM (
+        SELECT mfae.field AS id,
+               mfae.value,
+               COUNT(DISTINCT mmrsm.source),
+               row_number() OVER (
+                PARTITION BY mfae.field ORDER BY COUNT(distinct mmrsm.source) DESC
+               ) AS rownum
+        FROM metabib.facet_entry mfae
+        JOIN metabib.metarecord_source_map mmrsm ON (mfae.source = mmrsm.source)
+        JOIN config.metabib_field cmf ON (cmf.id = mfae.field)
+        WHERE mmrsm.source IN (SELECT * FROM unnest($2))
+        AND cmf.facet_field
+        AND cmf.field_class NOT IN (SELECT * FROM unnest($1))
+        GROUP by 1, 2
+    ) all_facets
+    WHERE rownum <= (SELECT COALESCE((SELECT value::INT FROM config.global_flag WHERE name = 'search.max_facets_per_field' AND enabled), 1000));
+$$ LANGUAGE SQL;
+
+CREATE OR REPLACE FUNCTION search.facets_for_metarecord_set(ignore_facet_classes TEXT[], hits BIGINT[]) RETURNS TABLE (id INT, value TEXT, count BIGINT) AS $$
+    SELECT id, value, count FROM (
+        SELECT mfae.field AS id,
+               mfae.value,
+               COUNT(DISTINCT mmrsm.metarecord),
+               row_number() OVER (
+                PARTITION BY mfae.field ORDER BY COUNT(distinct mmrsm.metarecord) DESC
+               ) AS rownum
+        FROM metabib.facet_entry mfae
+        JOIN metabib.metarecord_source_map mmrsm ON (mfae.source = mmrsm.source)
+        JOIN config.metabib_field cmf ON (cmf.id = mfae.field)
+        WHERE mmrsm.metarecord IN (SELECT * FROM unnest($2))
+        AND cmf.facet_field
+        AND cmf.field_class NOT IN (SELECT * FROM unnest($1))
+        GROUP by 1, 2
+    ) all_facets
+    WHERE rownum <= (SELECT COALESCE((SELECT value::INT FROM config.global_flag WHERE name = 'search.max_facets_per_field' AND enabled), 1000));
+$$ LANGUAGE SQL;
+
+COMMIT;

commit 305869b468e61c8b64684575284db14685ba8812
Author: Jason Stephenson <jstephenson at mvlc.org>
Date:   Wed Mar 2 09:18:12 2016 -0500

    LP 1505286: Port New Functions to PostgreSQL 9.1
    
    The functions search.facets_for_record_set and
    search.facets_for_metarecord_set that were added in the 0958 upgrade
    script from Launchpad Bug #1505286 are not compatible with PostgreSQL
    9.1.  This commit makes them compatible with Pg 9.1 for those who need
    it.
    
    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
    Signed-off-by: Galen Charlton <gmc at esilibrary.com>

diff --git a/Open-ILS/src/sql/Pg/300.schema.staged_search.sql b/Open-ILS/src/sql/Pg/300.schema.staged_search.sql
index e3f96c0..d5a5f0b 100644
--- a/Open-ILS/src/sql/Pg/300.schema.staged_search.sql
+++ b/Open-ILS/src/sql/Pg/300.schema.staged_search.sql
@@ -440,9 +440,9 @@ CREATE OR REPLACE FUNCTION search.facets_for_record_set(ignore_facet_classes TEX
         FROM metabib.facet_entry mfae
         JOIN metabib.metarecord_source_map mmrsm ON (mfae.source = mmrsm.source)
         JOIN config.metabib_field cmf ON (cmf.id = mfae.field)
-        WHERE mmrsm.source IN (SELECT * FROM unnest(hits))
+        WHERE mmrsm.source IN (SELECT * FROM unnest($2))
         AND cmf.facet_field
-        AND cmf.field_class NOT IN (SELECT * FROM unnest(ignore_facet_classes))
+        AND cmf.field_class NOT IN (SELECT * FROM unnest($1))
         GROUP by 1, 2
     ) all_facets
     WHERE rownum <= (SELECT COALESCE((SELECT value::INT FROM config.global_flag WHERE name = 'search.max_facets_per_field' AND enabled), 1000));
@@ -459,9 +459,9 @@ CREATE OR REPLACE FUNCTION search.facets_for_metarecord_set(ignore_facet_classes
         FROM metabib.facet_entry mfae
         JOIN metabib.metarecord_source_map mmrsm ON (mfae.source = mmrsm.source)
         JOIN config.metabib_field cmf ON (cmf.id = mfae.field)
-        WHERE mmrsm.metarecord IN (SELECT * FROM unnest(hits))
+        WHERE mmrsm.metarecord IN (SELECT * FROM unnest($2))
         AND cmf.facet_field
-        AND cmf.field_class NOT IN (SELECT * FROM unnest(ignore_facet_classes))
+        AND cmf.field_class NOT IN (SELECT * FROM unnest($1))
         GROUP by 1, 2
     ) all_facets
     WHERE rownum <= (SELECT COALESCE((SELECT value::INT FROM config.global_flag WHERE name = 'search.max_facets_per_field' AND enabled), 1000));
diff --git a/Open-ILS/src/sql/Pg/upgrade/0958.schema.limit_facets.sql b/Open-ILS/src/sql/Pg/upgrade/0958.schema.limit_facets.sql
index a68b448..73d0a29 100644
--- a/Open-ILS/src/sql/Pg/upgrade/0958.schema.limit_facets.sql
+++ b/Open-ILS/src/sql/Pg/upgrade/0958.schema.limit_facets.sql
@@ -13,9 +13,9 @@ CREATE OR REPLACE FUNCTION search.facets_for_record_set(ignore_facet_classes TEX
         FROM metabib.facet_entry mfae
         JOIN metabib.metarecord_source_map mmrsm ON (mfae.source = mmrsm.source)
         JOIN config.metabib_field cmf ON (cmf.id = mfae.field)
-        WHERE mmrsm.source IN (SELECT * FROM unnest(hits))
+        WHERE mmrsm.source IN (SELECT * FROM unnest($2))
         AND cmf.facet_field
-        AND cmf.field_class NOT IN (SELECT * FROM unnest(ignore_facet_classes))
+        AND cmf.field_class NOT IN (SELECT * FROM unnest($1))
         GROUP by 1, 2
     ) all_facets
     WHERE rownum <= (SELECT COALESCE((SELECT value::INT FROM config.global_flag WHERE name = 'search.max_facets_per_field' AND enabled), 1000));
@@ -32,9 +32,9 @@ CREATE OR REPLACE FUNCTION search.facets_for_metarecord_set(ignore_facet_classes
         FROM metabib.facet_entry mfae
         JOIN metabib.metarecord_source_map mmrsm ON (mfae.source = mmrsm.source)
         JOIN config.metabib_field cmf ON (cmf.id = mfae.field)
-        WHERE mmrsm.metarecord IN (SELECT * FROM unnest(hits))
+        WHERE mmrsm.metarecord IN (SELECT * FROM unnest($2))
         AND cmf.facet_field
-        AND cmf.field_class NOT IN (SELECT * FROM unnest(ignore_facet_classes))
+        AND cmf.field_class NOT IN (SELECT * FROM unnest($1))
         GROUP by 1, 2
     ) all_facets
     WHERE rownum <= (SELECT COALESCE((SELECT value::INT FROM config.global_flag WHERE name = 'search.max_facets_per_field' AND enabled), 1000));

-----------------------------------------------------------------------

Summary of changes:
 Open-ILS/src/sql/Pg/002.schema.config.sql          |    2 +-
 Open-ILS/src/sql/Pg/300.schema.staged_search.sql   |    8 +++---
 .../sql/Pg/upgrade/0958.schema.limit_facets.sql    |    8 +++---
 ...ql => 0970.schema.limit_facets_pg91_compat.sql} |   23 ++++---------------
 4 files changed, 14 insertions(+), 27 deletions(-)
 copy Open-ILS/src/sql/Pg/upgrade/{0958.schema.limit_facets.sql => 0970.schema.limit_facets_pg91_compat.sql} (71%)


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list