[open-ils-commits] ***SPAM*** [GIT] Evergreen ILS branch rel_2_7 updated. 51077f2e20f3b9a374f13cdf3019f109fcd420ca

Evergreen Git git at git.evergreen-ils.org
Wed Dec 10 16:07:17 EST 2014


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_7 has been updated
       via  51077f2e20f3b9a374f13cdf3019f109fcd420ca (commit)
       via  4caa655cce982018d37982e2a8d2340ff7749bde (commit)
      from  8ac9362720d14c8f7c8998ab8e4e156aca8d4709 (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 51077f2e20f3b9a374f13cdf3019f109fcd420ca
Author: Jason Stephenson <jstephenson at mvlc.org>
Date:   Wed Dec 10 16:03:11 2014 -0500

    LP#1401177: Stamping upgrade script of unique_mr_attrs.sql.
    
    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>

diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index c097449..e674182 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 ('0897', :eg_version); -- csharp/miker/bshum
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0898', :eg_version); -- miker/Dyrcona
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.unique_mr_attrs.sql b/Open-ILS/src/sql/Pg/upgrade/0898.unique_mr_attrs.sql
similarity index 98%
rename from Open-ILS/src/sql/Pg/upgrade/XXXX.unique_mr_attrs.sql
rename to Open-ILS/src/sql/Pg/upgrade/0898.unique_mr_attrs.sql
index 00a549b..1320f9b 100644
--- a/Open-ILS/src/sql/Pg/upgrade/XXXX.unique_mr_attrs.sql
+++ b/Open-ILS/src/sql/Pg/upgrade/0898.unique_mr_attrs.sql
@@ -1,6 +1,6 @@
 BEGIN;
 
-SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+SELECT evergreen.upgrade_deps_block_check('0898', :eg_version);
 
 CREATE OR REPLACE FUNCTION unapi.mmr_mra (
     obj_id BIGINT,

commit 4caa655cce982018d37982e2a8d2340ff7749bde
Author: Mike Rylander <mrylander at gmail.com>
Date:   Wed Dec 10 13:51:51 2014 -0500

    LP#1401177: uniquify attrs across a metarecord
    
    Signed-off-by: Mike Rylander <mrylander at gmail.com>
    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>

diff --git a/Open-ILS/src/sql/Pg/990.schema.unapi.sql b/Open-ILS/src/sql/Pg/990.schema.unapi.sql
index 47b40e3..8ad2ec4 100644
--- a/Open-ILS/src/sql/Pg/990.schema.unapi.sql
+++ b/Open-ILS/src/sql/Pg/990.schema.unapi.sql
@@ -1283,20 +1283,20 @@ CREATE OR REPLACE FUNCTION unapi.mmr_mra (
         ),
         (SELECT XMLAGG(foo.y)
           FROM (
-            WITH sourcelist AS ( 
-                WITH aou AS (SELECT COALESCE(id, (evergreen.org_top()).id) AS id  
+            WITH sourcelist AS (
+                WITH aou AS (SELECT COALESCE(id, (evergreen.org_top()).id) AS id
                     FROM actor.org_unit WHERE shortname = $5 LIMIT 1)
-                SELECT source 
-                FROM metabib.metarecord_source_map, aou 
+                SELECT source
+                FROM metabib.metarecord_source_map, aou
                 WHERE metarecord = $1 AND (
                     EXISTS (
-                        SELECT 1 FROM asset.opac_visible_copies 
+                        SELECT 1 FROM asset.opac_visible_copies
                         WHERE record = source AND circ_lib IN (
                             SELECT id FROM actor.org_unit_descendants(aou.id, $6))
                         LIMIT 1
-                    )   
+                    )
                     OR EXISTS (SELECT 1 FROM located_uris(source, aou.id, $10) LIMIT 1)
-                )   
+                )
             )
             SELECT  cmra.aid,
                     XMLELEMENT(
@@ -1313,15 +1313,18 @@ CREATE OR REPLACE FUNCTION unapi.mmr_mra (
                         cmra.value
                     )
               FROM  (
-                SELECT  v.source AS id,
-                        c.id AS aid,
-                        c.ctype AS attr,
-                        c.code AS value
-                  FROM  metabib.record_attr_vector_list v
-                        JOIN config.coded_value_map c ON ( c.id = ANY( v.vlist ) )
+                SELECT DISTINCT aid, attr, value
+                  FROM (
+                    SELECT  v.source AS id,
+                            c.id AS aid,
+                            c.ctype AS attr,
+                            c.code AS value
+                      FROM  metabib.record_attr_vector_list v
+                            JOIN config.coded_value_map c ON ( c.id = ANY( v.vlist ) )
+                    ) AS x
+                    JOIN sourcelist ON (x.id = sourcelist.source)
                 ) AS cmra
-                    JOIN config.record_attr_definition rad ON (cmra.attr = rad.name)
-                    JOIN sourcelist ON (cmra.id = sourcelist.source)
+                JOIN config.record_attr_definition rad ON (cmra.attr = rad.name)
                 UNION ALL
             SELECT  umra.aid,
                     XMLELEMENT(
@@ -1336,15 +1339,18 @@ CREATE OR REPLACE FUNCTION unapi.mmr_mra (
                         umra.value
                     )
               FROM  (
-                SELECT  v.source AS id,
-                        m.id AS aid,
-                        m.attr AS attr,
-                        m.value AS value
-                  FROM  metabib.record_attr_vector_list v
-                        JOIN metabib.uncontrolled_record_attr_value m ON ( m.id = ANY( v.vlist ) )
+                SELECT DISTINCT aid, attr, value
+                  FROM (
+                    SELECT  v.source AS id,
+                            m.id AS aid,
+                            m.attr AS attr,
+                            m.value AS value
+                      FROM  metabib.record_attr_vector_list v
+                            JOIN metabib.uncontrolled_record_attr_value m ON ( m.id = ANY( v.vlist ) )
+                    ) AS x
+                    JOIN sourcelist ON (x.id = sourcelist.source)
                 ) AS umra
-                    JOIN config.record_attr_definition rad ON (umra.attr = rad.name)
-                    JOIN sourcelist ON (umra.id = sourcelist.source)
+                JOIN config.record_attr_definition rad ON (umra.attr = rad.name)
                 ORDER BY 1
 
             )foo(id,y)
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.unique_mr_attrs.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.unique_mr_attrs.sql
new file mode 100644
index 0000000..00a549b
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.unique_mr_attrs.sql
@@ -0,0 +1,101 @@
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+
+CREATE OR REPLACE FUNCTION unapi.mmr_mra (
+    obj_id BIGINT,
+    format TEXT,
+    ename TEXT,
+    includes TEXT[],
+    org TEXT,
+    depth INT DEFAULT NULL,
+    slimit HSTORE DEFAULT NULL,
+    soffset HSTORE DEFAULT NULL,
+    include_xmlns BOOL DEFAULT TRUE,
+    pref_lib INT DEFAULT NULL
+) RETURNS XML AS $F$
+    SELECT  XMLELEMENT(
+        name attributes,
+        XMLATTRIBUTES(
+            CASE WHEN $9 THEN 'http://open-ils.org/spec/indexing/v1' ELSE NULL END AS xmlns,
+            'tag:open-ils.org:U2 at mmr/' || $1 AS metarecord
+        ),
+        (SELECT XMLAGG(foo.y)
+          FROM (
+            WITH sourcelist AS (
+                WITH aou AS (SELECT COALESCE(id, (evergreen.org_top()).id) AS id
+                    FROM actor.org_unit WHERE shortname = $5 LIMIT 1)
+                SELECT source
+                FROM metabib.metarecord_source_map, aou
+                WHERE metarecord = $1 AND (
+                    EXISTS (
+                        SELECT 1 FROM asset.opac_visible_copies
+                        WHERE record = source AND circ_lib IN (
+                            SELECT id FROM actor.org_unit_descendants(aou.id, $6))
+                        LIMIT 1
+                    )
+                    OR EXISTS (SELECT 1 FROM located_uris(source, aou.id, $10) LIMIT 1)
+                )
+            )
+            SELECT  cmra.aid,
+                    XMLELEMENT(
+                        name field,
+                        XMLATTRIBUTES(
+                            cmra.attr AS name,
+                            cmra.value AS "coded-value",
+                            cmra.aid AS "cvmid",
+                            rad.composite,
+                            rad.multi,
+                            rad.filter,
+                            rad.sorter
+                        ),
+                        cmra.value
+                    )
+              FROM  (
+                SELECT DISTINCT aid, attr, value
+                  FROM (
+                    SELECT  v.source AS id,
+                            c.id AS aid,
+                            c.ctype AS attr,
+                            c.code AS value
+                      FROM  metabib.record_attr_vector_list v
+                            JOIN config.coded_value_map c ON ( c.id = ANY( v.vlist ) )
+                    ) AS x
+                    JOIN sourcelist ON (x.id = sourcelist.source)
+                ) AS cmra
+                JOIN config.record_attr_definition rad ON (cmra.attr = rad.name)
+                UNION ALL
+            SELECT  umra.aid,
+                    XMLELEMENT(
+                        name field,
+                        XMLATTRIBUTES(
+                            umra.attr AS name,
+                            rad.composite,
+                            rad.multi,
+                            rad.filter,
+                            rad.sorter
+                        ),
+                        umra.value
+                    )
+              FROM  (
+                SELECT DISTINCT aid, attr, value
+                  FROM (
+                    SELECT  v.source AS id,
+                            m.id AS aid,
+                            m.attr AS attr,
+                            m.value AS value
+                      FROM  metabib.record_attr_vector_list v
+                            JOIN metabib.uncontrolled_record_attr_value m ON ( m.id = ANY( v.vlist ) )
+                    ) AS x
+                    JOIN sourcelist ON (x.id = sourcelist.source)
+                ) AS umra
+                JOIN config.record_attr_definition rad ON (umra.attr = rad.name)
+                ORDER BY 1
+
+            )foo(id,y)
+        )
+    )
+$F$ LANGUAGE SQL STABLE;
+
+COMMIT;
+

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

Summary of changes:
 Open-ILS/src/sql/Pg/002.schema.config.sql          |    2 +-
 Open-ILS/src/sql/Pg/990.schema.unapi.sql           |   52 +++++++++++---------
 ...r_flat_speedup.sql => 0898.unique_mr_attrs.sql} |   53 +++++++++-----------
 3 files changed, 53 insertions(+), 54 deletions(-)
 copy Open-ILS/src/sql/Pg/upgrade/{0892.schema.record_attr_flat_speedup.sql => 0898.unique_mr_attrs.sql} (62%)


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list