Cross-port code to implement KCLS policy of leaving holds alive so long
as a checked out copy exists regardless of whether the targeter has
reached max org unit target attempt loops.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
# back to waiting for another copy (or retargets its current copy).
return undef if $max_tried < $max_loops;
+ if (@{$self->recall_copies}) { # KCLS
+ $self->log_hold("Skipping max-loops cancellation because ".
+ "there is at least one checked out copy in circulation");
+ return undef;
+ }
+
# At least one lib has been targeted max-loops times and zero
# other copies are targetable. All options have been exhausted.
return $self->handle_exceeds_target_loops;