Holds stalling should capture equivalent items at targeted library

Bug #1903749 reported by Michele Morgan
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Confirmed
Medium
Unassigned

Bug Description

When the org unit setting circ.hold_stalling.soft is set, if a copy is on the pull list at a library different than the pickup library, only that exact item will be captured for the hold.

To make the best use of staff time, and fill holds most efficiently, equivalent copies at the pull list library should also be captured for the hold.

Relevant IRC discussion:

http://irc.evergreen-ils.org/evergreen/2020-11-10#i_465150

Michele Morgan (mmorgan)
tags: added: holds
Revision history for this message
Mike Rylander (mrylander) wrote :

Here's one way we could address this:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/miker/lp-1902937-adjacent-hold-capture-when-stalling

Note: this does not currently contain a db-level upgrade script to add the YAOUS (though that can be added by hand in the staff client) and could stand some thought about copy conditions (such as, more than just status=0?). From the commit message:

Currently, setting a stalling interval disable all opportunistic capture except at the pickup library. It would be helpful to allow, optionally, a mode where holds that target a copy physically adjacent to the copy that staff pull from the shelf to fill the hold, all else being equal.

This commit does that by:

1) confirming that hold stalling and the a new setting are both in use
2) gathering shelf-adjacent copies that are available
3) gathering holds that directly target those adjacent copies
4) filtering those hold to only those that the copy in hand could fill
5) adding that filtered list to the end of the $old_holds list for last-resort capture testing
6) avoiding retargetting of adjacent-copy-targetted holds, they can still capture

Revision history for this message
John Amundson (jamundson) wrote :

See also Bug #1895052

Changed in evergreen:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
Michele Morgan (mmorgan) wrote :

Tested this lightly and confirmed that equivalent copies do indeed get captured when a soft stalling interval is set. Agree with Mike that some more thought is needed, but this is good progress.

I've added an upgrade script to add the YAOUS to Mike's WIP branch and corrected the lp number in the original commit to avoid confusion:

https://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/user/mmorgan/lp1903749_holds_stalling_adjacent_copies_upgrade_script

tags: added: circ-holds
removed: holds wishlist
Revision history for this message
Michele Morgan (mmorgan) wrote :

I've confirmed that this patch still merges cleanly and force pushed an update to the same branch which adds the ou setting to the seed data.

Adding a pullrequest to move this along.

tags: added: pullrequest
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.