[open-ils-commits] r18432 - trunk/Open-ILS/src/perlmods/OpenILS/Application/Circ (gmc)

svn at svn.open-ils.org svn at svn.open-ils.org
Wed Oct 20 17:47:40 EDT 2010


Author: gmc
Date: 2010-10-20 17:47:34 -0400 (Wed, 20 Oct 2010)
New Revision: 18432

Modified:
   trunk/Open-ILS/src/perlmods/OpenILS/Application/Circ/Holds.pm
Log:
use a transaction when searching for the nearest hold request

Solves the following problem in a setup that uses Slony - if
multiple items that can fulfill the same hold are checked
in one after another, occassionally two items will end up
being put in transit for the same hold request.

Signed-off-by: Galen Charlton <gmc at esilibrary.com>


Modified: trunk/Open-ILS/src/perlmods/OpenILS/Application/Circ/Holds.pm
===================================================================
--- trunk/Open-ILS/src/perlmods/OpenILS/Application/Circ/Holds.pm	2010-10-20 21:10:51 UTC (rev 18431)
+++ trunk/Open-ILS/src/perlmods/OpenILS/Application/Circ/Holds.pm	2010-10-20 21:47:34 UTC (rev 18432)
@@ -2457,7 +2457,7 @@
 	my $fifo = $U->ou_ancestor_setting_value($user->ws_ou, 'circ.holds_fifo');
 
 	# search for what should be the best holds for this copy to fulfill
-	my $best_holds = $U->storagereq(
+	my $best_holds = $U->storagereq_xact(
         "open-ils.storage.action.hold_request.nearest_hold.atomic", 
 		$user->ws_ou, $copy->id, 10, $hold_stall_interval, $fifo );
 



More information about the open-ils-commits mailing list