]> git.evergreen-ils.org Git - Evergreen.git/blob - docs/RELEASE_NOTES_NEXT/Cataloging/prevent_authority_propagation_delete.txt
LP# 1484281 auth control config update release notes
[Evergreen.git] / docs / RELEASE_NOTES_NEXT / Cataloging / prevent_authority_propagation_delete.txt
1 Preventing improper data deletion from subfield $e
2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3
4 This release contains a fix for LP bug 1484281, "authority data may be
5 deleted during propagation with current values of
6 authority.control_set_authority_field."
7
8 For more details see: https://bugs.launchpad.net/evergreen/+bug/1484281
9
10 The related upgrade script from this release removes subfield $e
11 in authority tags 100 and 110, but only from the Evergreen default
12 "LoC" authority control set configuration. If your Evergreen system is
13 set up with additional authority control sets besides the default
14 "LoC" one, you will need to run the following pieces of SQL code.
15
16 First verify that you have an additional control set besides the
17 default of "LoC". Run the following SQL code and write down the ID
18 number for your additional control set. The number will be an integer
19 like 101.
20
21 [source,sql]
22 --------------------------------------------------------------------
23 select *
24 from authority.control_set
25 where name != 'LoC'
26 order by id
27 --------------------------------------------------------------------
28
29 In the following code you will need to change the two sections of
30 "control_set = XYZ". Change the part labeled with the text "XYZ", with
31 the ID number from the above query.
32
33 If the above query displayed more than one additional authority
34 control set, then you will need to run the code below once for each
35 additional control set ID number.
36
37 [source,sql]
38 --------------------------------------------------------------------
39 UPDATE authority.control_set_authority_field
40 SET sf_list = REGEXP_REPLACE( sf_list, 'e', '', 'i')
41 WHERE tag = '100' AND control_set = XYZ AND  sf_list ILIKE '%e%';
42
43 UPDATE authority.control_set_authority_field
44 SET sf_list = REGEXP_REPLACE( sf_list, 'e', '', 'i')
45 WHERE tag = '110' AND control_set = XYZ AND  sf_list ILIKE '%e%';
46 --------------------------------------------------------------------
47