From: Dan Wells Date: Thu, 17 Apr 2014 17:00:25 +0000 (-0400) Subject: Tweak 0877 upgrade file for 2.5 X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=11f6126604c802fd6d44d24d90bb20c0061e51d9;p=Evergreen.git Tweak 0877 upgrade file for 2.5 The 0877 upgrade file for 2.6 lacked in parsimony because it assumed it would generally run as part of the 2.6.0 upgrade, and that required a full reingest anyway. Credit for this "quick" version goes to Mike Rylander. Signed-off-by: Dan Wells Signed-off-by: Remington Steed --- diff --git a/Open-ILS/src/sql/Pg/upgrade/0877.data.re-add_800_t_search_and_facets.sql b/Open-ILS/src/sql/Pg/upgrade/0877.data.re-add_800_t_search_and_facets.sql index ddab41d2b2..2200d94f1b 100644 --- a/Open-ILS/src/sql/Pg/upgrade/0877.data.re-add_800_t_search_and_facets.sql +++ b/Open-ILS/src/sql/Pg/upgrade/0877.data.re-add_800_t_search_and_facets.sql @@ -16,10 +16,45 @@ INSERT INTO config.metabib_field ( id, field_class, name, label, format, xpath, COMMIT; -\qecho This is a full field-entry reingest of your bib records. -\qecho It will take a while. -\qecho You may cancel now without losing the effect of the rest of the -\qecho upgrade script, and arrange the reingest later. +\qecho --------------------------------------------------------------- +\qecho We will now do a "quick fix" indexing of series titles for search. \qecho . -SELECT COUNT(metabib.reingest_metabib_field_entries(id)) - FROM biblio.record_entry WHERE deleted IS FALSE; +\qecho Ultimately, a full field-entry reingest of your affected series bib +\qecho records should be done. It might take a while. +\qecho Something like this should suffice: +\qecho --------------------------------------------------------------- +\qecho 'SELECT COUNT(metabib.reingest_metabib_field_entries(id))' +\qecho ' FROM (' +\qecho ' SELECT DISTINCT(bre.id) AS id' +\qecho ' FROM biblio.record_entry bre' +\qecho ' JOIN metabib.full_rec mfr' +\qecho ' ON mfr.record = bre.id' +\qecho ' AND mfr.tag IN (\'490\', \'800\', \'810\', \'811\', \'830\')' +\qecho ' WHERE' +\qecho ' bre.deleted IS FALSE' +\qecho ' AND (' +\qecho ' mfr.tag = \'490\' AND mfr.subfield = \'a\'' +\qecho ' OR mfr.tag IN (\'800\',\'810\',\'811\') AND mfr.subfield = \'t\'' +\qecho ' OR mfr.tag = \'830\' AND mfr.subfield IN (\'a\',\'t\')' +\qecho ' )' +\qecho ' ) x' +\qecho ';' +\qecho --------------------------------------------------------------- + +-- "Quick Fix" indexing of series for search +INSERT INTO metabib.series_field_entry (field,source,value) + SELECT 1,record,value FROM metabib.full_rec WHERE tag = '490' AND subfield = 'a'; + +INSERT INTO metabib.series_field_entry (field,source,value) + SELECT 1,record,value FROM metabib.full_rec WHERE tag IN ('800','810','811') AND subfield = 't'; + +INSERT INTO metabib.series_field_entry (field,source,value) + SELECT 1,record,value FROM metabib.full_rec WHERE tag = '830' AND subfield IN ('a','t'); + +DELETE FROM metabib.combined_series_field_entry; +INSERT INTO metabib.combined_series_field_entry(record, metabib_field, index_vector) + SELECT source, field, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector) + FROM metabib.series_field_entry GROUP BY source, field; +INSERT INTO metabib.combined_series_field_entry(record, index_vector) + SELECT source, strip(COALESCE(string_agg(index_vector::TEXT,' '),'')::tsvector) + FROM metabib.series_field_entry GROUP BY source;