[OPEN-ILS-GENERAL] Hold Targeter - Ignore Closing logic change?

Josh Stompro stomproj at gsuite.larl.org
Wed Apr 29 23:13:55 EDT 2020


Hello, we have been doing curbside pickup, along with using the emergency
closing handler to mark all of our locations closed.

I was just told that some holds have not been targeting the local copies...
which led me to notice that the expected item was getting skipped with a
log entry of "skipping copy X at closed org".  That led me to see that we
had the following Library Settings set.

Target copies for a hold even if copy's circ lib is closed  = True
Target copies for a hold even if copy's circ lib is closed IF the circ lib
is the hold's pickup lib  = False

Now, with the old targeter, this seemed to work fine because the second
setting was checked, and if it was false the first setting was checked as a
fallback.   (Could someone check my interpretation of the old logic though.)
https://github.com/evergreen-library-system/Evergreen/blob/7f48513889098e47ee4a9d1b7cdbf5d5fe2ca8bb/Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm#L1362

The new targeter doesn't seem to have the same fallthrough logic.  If the
circ_lib matches the pickup lib then only
the circ.holds.target_when_closed_if_at_pickup_lib setting is checked.
https://github.com/evergreen-library-system/Evergreen/blob/47f5ddaa8b029d41c710255380260614ef7ea6ae/Open-ILS/src/perlmods/lib/OpenILS/Utils/HoldTargeter.pm#L705

I would think this would have caused more havok than it did, but I found
that because of bug 1868837, in many cases the local copy was still being
selected, so there were still quite a few items being pulled for customers
at the same location.
https://bugs.launchpad.net/evergreen/+bug/1868837

I don't know if this behavior change is really a bug or not.  It made sense
to me that the  circ.holds.target_when_closed would take effect if the
circ.holds.target_when_closed_if_at_pickup_lib  setting was set to false,
but the current way is perhaps clearer since you don't have to know about
the fallthrough behavior.

After I changed the circ.holds.target_when_closed_if_at_pickup_lib setting
to true and reset all the holds and retargeted, everything again works as
expected.

Josh

-- 
Josh Stompro - IT Director
Lake Agassiz Regional Library
Desk: 218-233-3757 Ext 139
Cell: 218-790-2110
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://libmail.georgialibraries.org/pipermail/open-ils-general/attachments/20200429/a084bb48/attachment.html>


More information about the Open-ils-general mailing list