LP 1827250: Fix Last Captured Hold Check for Holds Shelf user/dyrcona/lp1827250_last_captured_hold_fix_nulls_last
authorJason Stephenson <jason@sigio.com>
Thu, 2 May 2019 12:36:15 +0000 (08:36 -0400)
committerJason Stephenson <jason@sigio.com>
Thu, 2 May 2019 12:36:15 +0000 (08:36 -0400)
commit85f40e668ab5a3848ad57b9f93fce0adf94fda5d
treeacaaa1e4e5aa2724ea4ba5c1d9e76fdf7ffbf5d1
parent39f15482ebfdb7933701d9ce9db8d1e64d4d2184
LP 1827250: Fix Last Captured Hold Check for Holds Shelf

When the current copy on an on shelf hold is the same as that on some
uncaptured holds, the hold fails to appear on the hold shelf when it
should.  This comes down to some SQL in the storage function to
retrieve wide holds: open-ils.storage.action.live_holds.wide_hash.

The intent of the new code is to check that the current hold matches
the most recently captured hold for the copy.  However, the order by
in the query fails to take into account holds with a NULL capture time
on the same copy will sort before the captured holds.  This patch
rectifies this situation by adding "NULLS LAST" to the order by.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Open-ILS/src/perlmods/lib/OpenILS/Application/Storage/Publisher/action.pm