Merging branch user/dbs/lp797304_lp797307
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cherry picking the following:
commit
7be2a32620587af27de4316e42a308e913e9314c
Author: Dan Scott <dan@coffeecode.net>
Date: Tue Jun 14 22:35:26 2011 -0400
Add a stored procedure to reingest problematic URIs
Assuming that href = label in asset.uri is a red enough flag for the
problem in LP 797307 where the perfectly good label was being thrown
away, reingest the unique set of records connected with such asset.uri
rows.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
commit
39fe0c4a8a3074ff4c1e427ad9f00a0760bac260
Author: Dan Scott <dan@coffeecode.net>
Date: Tue Jun 14 21:54:51 2011 -0400
Add unwrapped upgrade script for biblio.extract_located_uris
See XXXX.biblio.extract_located_uris.sql for the upgrade script, waiting
to be signed off and committed.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
create mode 100644 Open-ILS/src/sql/Pg/upgrade/XXXX.biblio.extract_located_uris.sql
commit
7e6d2bfd7e9a5cbe57e4aacdf0b4b015a566883d
Author: Dan Scott <dan@coffeecode.net>
Date: Tue Jun 14 21:34:15 2011 -0400
Avoid duplicate row issues in biblio.extract_located_uris
As there is currently no unique constraint on the non-ID columns of
asset.uri, ensure that we only select a single ID from the tables until
we dedupe the tables. Use an ORDER BY to grab the matching row with the
lowest ID so we can clear out the rows with higher IDs.
Signed-off-by: Dan Scott <dscott@laurentian.ca>
commit
e79a805299ec734a29ee5bfa77dc74bc1fd208cd
Author: Dan Scott <dan@coffeecode.net>
Date: Tue Jun 14 14:02:49 2011 -0400
Fix LP 797304 and 797307 - asset.uri parsing bugs
Per 797304: one would expect asset.uri.label to be populated with the
value of 856 $y, however, it was getting populated with 856 $u - perhaps
as a result of the ordering of array entries in XPATH() not matching the
XPath expression. Instead of including 856 $u in the XPath expression
for uri_label, just assign its value to uri_label if uri_label is
otherwise NULL.
Per 797307: biblio.extract_located_uris() tries to reuse an existing
active asset.uri entry rather than create a new row; however, it does
not handle the case where there is no public note aka "use restriction"
and will end up creating a duplicate row every time the record is
reingested. Teach it to handle NULL values properly.
Signed-off-by: Dan Scott <dscott@laurentian.ca>