[open-ils-commits] r7930 - branches/rel_1_2/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher

svn at svn.open-ils.org svn at svn.open-ils.org
Thu Oct 25 12:24:47 EDT 2007


Author: miker
Date: 2007-10-25 12:10:54 -0400 (Thu, 25 Oct 2007)
New Revision: 7930

Modified:
   branches/rel_1_2/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm
Log:
backporting think-o fix for hold stalling

Modified: branches/rel_1_2/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm
===================================================================
--- branches/rel_1_2/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm	2007-10-25 16:07:53 UTC (rev 7929)
+++ branches/rel_1_2/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm	2007-10-25 16:10:54 UTC (rev 7930)
@@ -204,20 +204,18 @@
 sub nearest_hold {
 	my $self = shift;
 	my $client = shift;
-	my $pl = shift;
+	my $here = shift;
 	my $cp = shift;
 	my $limit = int(shift()) || 10;
-	my $age = shift() || '0';
-	my $prox = shift() || 0;
+	my $age = shift() || '0 seconds';
 
-	my $ids = action::hold_request->db_Main->selectcol_arrayref(<<"	SQL", {}, $cp, $pl, $age, $prox);
+	my $ids = action::hold_request->db_Main->selectcol_arrayref(<<"	SQL", {}, $here, $cp, $age);
 		SELECT	h.id
 		  FROM	action.hold_request h
+			JOIN actor.org_unit_proximity p ON (p.from_org = ? AND p.to_org = h.pickup_lib)
 		  	JOIN action.hold_copy_map hm ON (hm.hold = h.id)
-		  	JOIN actor.org_unit_proximity p ON (p.from_org = h.pickup_lib)
 		  WHERE hm.target_copy = ?
-			AND p.to_org = ?
-		  	AND (h.request_time + ? < NOW() OR p.prox <= ?)
+		  	AND (AGE(NOW(),h.request_time) >= CAST(? AS INTERVAL) OR p.prox = 0)
 			AND h.capture_time IS NULL
 		  	AND h.cancel_time IS NULL
 		ORDER BY



More information about the open-ils-commits mailing list