Mike Rylander [Wed, 25 Jan 2017 17:33:24 +0000 (12:33 -0500)]
LP#1657885: Inform Vandelay of new chunking/bundling logic, part deux
Here we conditionally use the old "max_chunk_count" method provided by OpenSRF
when Evergreen is running atop a version that doesn't know about the bundling
rename.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Mike Rylander [Wed, 25 Jan 2017 15:56:23 +0000 (10:56 -0500)]
LP#1657885: Inform Vandelay of new chunking/bundling logic
There is a naive attempt to force immediate streaming of results in Vandelay
for certain processes, but it both only helps a little, and breaks under the
new OpenSRF bundling/chunking logic. So, we'll drop it where it's not
directly configurable, and test for the appropriate features where we can.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Mike Rylander [Thu, 19 Jan 2017 20:54:53 +0000 (15:54 -0500)]
LP#1657885: Account for new bundling/chunking logic in OpenSRF 2.5+
When chunking was renamed bundling and actually chunking added in OpenSRF 2.5,
the few places in Evergreen that tried to make use of the old mechanism
directly now break. The most obvious breakage is in the alternate printable
hold pull list, which we fix here. Evidence of other broken code should
be fixed as needed, though spots to look our for are z39.50 results and
Vandelay processing.
To test:
1) In Evergreen 2.11 running on top of OpenSRF 2.5+, attempt to use the
alt pull list printing interface at a location with many holds on their
pull list. The progress bar will spin forever.
2) After applying this patch, do the same. The interface should work
quickly.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
We fixed the trigger that caused the problem in bug 167237, but now we need
to rewrite reporter.hold_request_record because T-holds are probably all
wrong. No data was lost, we're just addressing the contents of a materialized
view.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Jason Boyer <jboyer@library.in.gov>
Galen Charlton [Tue, 17 Jan 2017 21:58:39 +0000 (16:58 -0500)]
LP#1657282: fix redirect of one-hit metarecord searches
This patches fixes a bug where, when performing a metarecord
("Group Formats and Editions") search, one-hit result sets
get redirected to a "/eg/opac/record/0.0..." page, which
results in a "Bad Request" error being shown to the user.
To test:
[1] Perform a metarecord search that would result in exactly
one metarecord search. Observe that the browser displays
a "Bad Request" error page.
[2] Apply the patch and perform step 1 again. This time, the
search should succeed. Note that if the metarecord contains
more than one component, a results page with one grouped
hit is displayed; if the metarecord has exactly one component,
that bib's record page is displayed.
Mike Rylander [Tue, 17 Jan 2017 19:46:36 +0000 (14:46 -0500)]
LP#1657237: Properly constrain matview trigger function
The function maintaining the reporter.hold_request_record table
was performing an unconstrained update when a hold was moved. This
fixes that.
To test:
[1] Apply the patch, the perform an asset merge that would
change the target of a hold request. Verify that
reporter.hold_request_record is properly update.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Mike Rylander [Wed, 28 Dec 2016 19:43:34 +0000 (14:43 -0500)]
LP#1655149: Badges need CDBI support for location groups
The badge code needs to inspect copy location groups, and tries to do so using
Class::DBI classes. But we haven't told CDBI about aclg and friends. Here we
tell Class::DBI about asset.copy_location_group so that storage can retrieve
directly.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Kathy Lussier [Thu, 5 Jan 2017 18:55:49 +0000 (13:55 -0500)]
Docs: 2.11 Release Note corrections and clarifications.
Fixes several typos in the 2.11 Release Notes and in the template for release
notes acknowledgements. Also resets the acknowledgements as TODOs for the
next release. Added clarification to the email checkout receipts to let users
know that email receipts are not available in the XUL client, but only in the
web client.
Remington Steed [Thu, 5 Jan 2017 15:03:48 +0000 (10:03 -0500)]
Docs: Add "export non-imported records"
This commit briefly describes the queue actions, summary and filter
sections of the Inspect Queue page in Vandelay, as well as explaining
the new "Export Non-Imported Records" action. This commit includes
updated screenshots.
Galen Charlton [Wed, 21 Dec 2016 21:32:26 +0000 (16:32 -0500)]
LP#1651808: avoid a class of intermittent search failures
This patch fixes a bug where catalog searches can sometimes fail
with a PostgreSQL error that looks like this:
ERROR: type of parameter 56 (double precision) does not match that when preparing the plan (numeric)
CONTEXT: PL/pgSQL function search.query_parser_fts(integer,integer,text,integer[],integer[],integer,integer,integer,boolean,boolean,boolean,integer) line 319 at assignment
In particular, it ensures that the relevance values are coerced
to the Pg NUMERIC data type regardless of how the core query is
constructed; otherwise, it can sometimes end up as a double
precision value. Because of how Pg backends cache query plans,
that change of type can result in the error above.
To test
-------
[1] (Optional) Configure the max_children values for open-ils.storage
to permit only one drone, which in turn forces all catalog
search requests to go through a single Pg backend.
[2] Set the default_preferred_language_weight opensrf.xml setting
to 0.
[3] Perform a catalog search that has just a filter, e.g.,
item_lang(eng).
[4] Perform a catalog search that includes search term, e.g.,
cats
[5] The second search should fail.
[6] Apply the patch and try steps 3 and 4 again; this time, both
searches should work.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Pearl [Thu, 2 Jun 2016 19:17:44 +0000 (15:17 -0400)]
LP#1586509 Bug fix to LP#1352542 caused extraneous blank line to appear in
spine label. This affected LC call numbers that had only one cutter number
plus additional text following.
Signed-off-by: Dan Pearl <dpearl@cwmars.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
The switch to toISOString() to format dates introduced an off-by-one error in
the closed dates display, showing one extra day of closure due to the timezone
being ignored in toISOString().
toLocaleDateString() is the future of locale-sensitive date formats. In XUL,
because it is an old version of Firefox, it lacks locale sensitivity, but for
the purposes of the web staff client it's a good base to build on as even
Internet Explorer supports the locale and options arguments as of IE 11.
And for the immediate purposes of showing the right dates in the closed dates
editor, it works.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Dan Scott [Mon, 12 Dec 2016 20:39:08 +0000 (15:39 -0500)]
LP#1432753 Restore "All day" verbiage to Closed Dates editor
Commit ede7e78925 replaced the JSAN calls to util.date.formatted_date() with
inline date/time handling, in the process returning times with granularity to
the minute instead of to the second. This resulted in the test for "all day"
closings always failing.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Galen Charlton [Fri, 28 Oct 2016 15:42:52 +0000 (11:42 -0400)]
LP#1488655: fix MR remapping upon fingerprint change
This patch ensures that if the fingerprint of a bib changes, the
bib will be moved to a new metarecord as opposed to ending up
as a member of more than one metarecord.
To test
-------
[1] Note the metarecord that a bib belongs to.
[2] Change the bib so that its fingerprint changes -- with stock
cbf settings, editing the 245$a should suffice.
[3] Note that it is now a component of two metarecords.
[4] Apply the patch.
[5] Repeat step 2 or force a reingest. The bib should now be part
of exactly one metarecord.
Galen Charlton [Fri, 28 Oct 2016 15:40:52 +0000 (11:40 -0400)]
LP#1488655: regression test for metarecord remapping
This patch contains pgTAP tests for verifying that when
the fingerprint of a bib is changed, it remains part of
exactly one metarecord (as opposed to being part of both
its old and new MRs).
Galen Charlton [Wed, 16 Nov 2016 17:18:29 +0000 (12:18 -0500)]
LP#1618183: more work backporting update to rel_2_10
This patch tries to ensure that if somebody running 2.10.8 (or a
later 2.10.x) attempts to upgrade to 2.11.1 or later using the
monolithic version upgrade scripts, the presence of the es-ES locale won't
abort the 2.10.7-2.11.0 update.
blake [Thu, 3 Nov 2016 15:42:24 +0000 (10:42 -0500)]
LP1638921 List display broken in 2.11
The badges feature added more data to an array which broke bib_record_list_via_search
Taking the first item in the array instead of the last item fixes the issue.
Thanks to miker and Dyrcona!
Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Mike Rylander <miker@esilibrary.com>
Kathy Lussier [Tue, 24 May 2016 00:09:34 +0000 (20:09 -0400)]
LP#1584807: Clicking column header should not unsort list
Clicking column headers in My Account cycled through ascending order,
descending order, and then unsorted. But unsorting a list after clicking a
header is unintutive to the user. Instead, it should toggle between ascending /
descending order.
Test plan
* Using the concerto dataset, log in as user 99999395984 / maes1234
* Go to the Items Out area of my account and click the title column header to
sort the list.
* The list will first sort alphabetically in ascending order, on a second click
will sort alphabetically in descending order, and, on a third click, will
return to the default sort order.
* After loading the patch, clicking the column header should only result in
sorting in ascending and descending order.
Dan Scott [Tue, 6 Sep 2016 17:53:02 +0000 (13:53 -0400)]
LP#1620750 Prevent log warning for uninit var in checkin_retarget()
If the retarget_mode variable is not initialized, then a warning is generated
in the logs every time an item is checked in. Avoid the warning by
short-circuiting before testing the value in the regex.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Dan Scott [Fri, 16 Sep 2016 17:49:01 +0000 (13:49 -0400)]
LP#1624491 Avoid uninit var prox_cache during holds processing
open-ils.circ was logging a prox_cache hash value before it is
guaranteed to have been initialized. Instead, log messages _after_ they
have been initialized.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Furthermore, use the relatively new fpsum() utility function for summing
floating point numbers so we can avoid having multiple versions of the
summing logic floating (*cough*) around (*cough cough*).
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Sun, 2 Oct 2016 21:28:05 +0000 (17:28 -0400)]
Docs: add mpm_prefork config for Apache 2.4 systems
We had only documented the Apache 2.2 stanzas for mpm_prefork, so include a
section for 2.4 that uses MaxRequestWorkers and MaxConnectionsPerChild. Given
the memory leaks that we have seen, suggest lower settings for these two values
(assuming that most sites will be serving a public catalogue instead of using a
separate discovery layer).
Also fix the weird formatting where Debian instructions were indented under a
Fedora section.
Also use dots for ordered bullets instead of renumbering all of the bullets
again.
Dan Scott [Sun, 2 Oct 2016 14:04:04 +0000 (10:04 -0400)]
Docs: set up default action_trigger_filters.json file
Given that action_trigger_runner.pl looks by default for a file called
action_trigger_filters.json, instruct people to create that file when they are
first setting up their system.
The subject links in the record summary were stripping periods, changing
headings that contained N.Y., for example, to NY in the subsequent search
string. Since normalization at index time replaces the period with a space,
clicking the subject links did not successfully retrieve all relevant
results.
Test plan:
Click the Subject link for a record that has New York (N.Y.) in its heading and
has no other instances of ny in the keyword index. This record will not be
retrieved when you click the link. After loading the patch, the record will be
successfully retrieved, along with other records that contain New York (N.Y.) in
their subject headings.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Josh Stompro [Fri, 19 Aug 2016 20:31:11 +0000 (15:31 -0500)]
LP#1494750 - Extra closing curly bracket in style.css disables following css
Which is the .sort_deemphasize class, so the modification of the non-filing
characters never happens in the sort results.
Test Plan:
Needed: Patron account with checkout history that contains titles with
non filing characters.
Before change, view the checkout history and sort by title. Note that the
leading non filing characters look the same as the rest of the title.
After change, view the checkout history and sort by title. Note that the
leading non filing characters now have a different style than the rest
of the title.
Bill Erickson [Fri, 23 Sep 2016 17:56:42 +0000 (13:56 -0400)]
LP#1526159 Webstaff Items Out includes overdue, etc.
Items Out tally in patron summary (side-bar) is now consistent with the
Items Out value displayed along the top of the patron UI. It now includes
overdues and optionally lost/claims-returned total.
Displays a progress bar while waiting for results from a patron search
in the browser client. Bar only displays when a server-side search is
required. (It's not displayed for cached searches, etc.). Results grid
is hidden while the progress bar is visible and vice versa.
This commit applies Bill Erickson's change from bug #1227344 to the fund
selector that appears on the Selection List (picklist) screen when you click
"Copies" to reveal the line items table. (Bill also mentioned this in
bug #1266471.)
Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Updates to the 2.11, including: adding a note about Ubuntu Xenial support,
adding acknowledgements for translators and for some who were missed in the
first iteration of Release Notes, slimming down the activity metric release
notes entry and moving the original, detail-rich entry to the TechRef directory.
Mike Rylander [Wed, 14 Sep 2016 14:44:15 +0000 (10:44 -0400)]
LP#1623541: Booking will fail if its router isn't called "router"
The circ code checks to see if the booking app is running, and if not, it
skips some booking-related logic. This is a useful performance enhancement
where booking is not in use. It does this by asking the OpenSRF router if
the "open-ils.booking" app has registered with it. Most of the time the
OpenSRF router will be called, unimaginatively, "router" but when it's not,
booking will not be considered by the circ module even if it's running.
Instead of assuming "router" we should simply look up the router's name.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Dan Scott [Sun, 18 Sep 2016 13:16:27 +0000 (09:16 -0400)]
LP#1624846 Add charset declaration to TPAC print output
Non-ASCII characters were printed incorrectly in some browsers, such as
Firefox, that still default to ISO-8859-1 encodings in the absence of a
specifically declared encoding.
Our output encoding will always be UTF-8, so declare it.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Wells [Tue, 13 Sep 2016 17:40:43 +0000 (13:40 -0400)]
LP#1620803 Add missing workstation passthru to AuthProxy
The AuthProxy.pm login function was not passing through a possible
'workstation' parameter to auth_internal's 'session.create' method.
Without this, all login's end up with a workstation set to the user's
home_ou, which can affect things including opt-in and transit
behaviors.
While not needed for the initial 'user.validate', it seems cleaner
and simpler to just bring it over when constructing the initial
$args hash.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Dan Scott <dscott@laurentian.ca>
This patch ensures that the patron profile and
search OU values are retained when going from a patron
search to a single record and back to the patron search.
To test the fix for this bug:
[1] Search for a patron using the expanded patron search fields,
making sure to select values for the profile and search
OU dropdowns.
[2] Open a record, then click "Patron Search" to return to the
search form.
[3] Verify that the profile and search library are set and
that the same patron records are retrieved.
This patch includes elements from a patch originally written
by Victoria Lewis <vlewis@catalystitservices.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Propagate lineitem MARC 'price' attribute value to the lineitem
estimated_unit_price field. This allows users to apply a lineitem
price directly from the ACQ Brief Record interface.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Dan Scott [Tue, 6 Sep 2016 01:34:20 +0000 (21:34 -0400)]
SIP manual testing formatting cleanup
The extra ** in the sample SIP lines was distracting. Also, it wasn't clear
which password to use when $password was used twice, so disambiguate it to
identify user vs. SIP password.
Fix webstaff test failures due to an invalid IDL2js.js file by adding
newly-required preprocessing to the support script that generates that
file when running tests.
Signed-off-by: Jeff Godin <jgodin@tadl.org> Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Dan Wells <dbw2@calvin.edu>